锁定老帖子 主题:lucene 搜索速度问题
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2012-03-26
最后修改:2012-03-26
aixinnature 写道 yrclsgo 写道 zhchch518 写道 Long sDate = System.currentTimeMillis();
TopDocs topDoc = sercher.search(query,5); Long sDate2 = System.currentTimeMillis(); 改成这样看看需要多少时间 改成上面后消耗时间:2x毫秒,难道搜索时间说到是这个? 是的,你的时间都用去打印了 与输出关系不大,好像是下面这句在消耗时间: Query query = parser.parse("活动"); |
|
返回顶楼 | |
发表时间:2012-03-26
yrclsgo 写道 aixinnature 写道 yrclsgo 写道 zhchch518 写道 Long sDate = System.currentTimeMillis();
TopDocs topDoc = sercher.search(query,5); Long sDate2 = System.currentTimeMillis(); 改成这样看看需要多少时间 改成上面后消耗时间:2x毫秒,难道搜索时间说到是这个? 是的,你的时间都用去打印了 与输出关系不大,好像是下面这句在消耗时间: Query query = parser.parse("活动"); 分词也需要时间的 |
|
返回顶楼 | |
发表时间:2012-03-26
TopDocs topDoc = sercher.search(query,5);
只有这一行执行的搜索 50个索引文件,22M就提搜索速度了,这个数据量是比较不出啥结果的,出的结果也没有啥参考价值,将你的数据量再X1000,估计还有一点价值 |
|
返回顶楼 | |
发表时间:2012-03-26
hu437 写道 TopDocs topDoc = sercher.search(query,5);
只有这一行执行的搜索 50个索引文件,22M就提搜索速度了,这个数据量是比较不出啥结果的,出的结果也没有啥参考价值,将你的数据量再X1000,估计还有一点价值 我现在索引文件到达400M了,搜索正文里的一段话一般都要上百毫秒了 还在不断加大索引量测试ing |
|
返回顶楼 | |
发表时间:2012-03-26
IndexReader reader = IndexReader.open(FSDirectory.open(new File(TestIndexer.indexPath)));
这个方法放在SETUP方法里比较合理, 不需要每次请求都创建一个IndexReader, 这样很消耗性能 |
|
返回顶楼 | |
发表时间:2012-03-26
eimhee 写道 IndexReader reader = IndexReader.open(FSDirectory.open(new File(TestIndexer.indexPath)));
这个方法放在SETUP方法里比较合理, 不需要每次请求都创建一个IndexReader, 这样很消耗性能 谢谢您,reader 是不是可以考虑弄能单利的? |
|
返回顶楼 | |
发表时间:2012-03-26
你现在是搜索,Query query = parser.parse("活动");,这句话仅仅是对搜索关键词进行分词,又不是建索引时候的分词,这个时间很短的,基本可以忽略
|
|
返回顶楼 | |
发表时间:2012-03-26
tsxm 写道 你现在是搜索,Query query = parser.parse("活动");,这句话仅仅是对搜索关键词进行分词,又不是建索引时候的分词,这个时间很短的,基本可以忽略
但是经过我反复的测试,确实是这句话在影响速度(最起码在我这个环境下是这样的) |
|
返回顶楼 | |
发表时间:2012-03-26
孩子不是luene速度的问题,
因为你使用了分词要用到词典,一个词典几M吧,当第一次加载之后第二次搜索很快的! |
|
返回顶楼 | |
发表时间:2012-03-27
yrclsgo 写道 eimhee 写道 IndexReader reader = IndexReader.open(FSDirectory.open(new File(TestIndexer.indexPath)));
这个方法放在SETUP方法里比较合理, 不需要每次请求都创建一个IndexReader, 这样很消耗性能 谢谢您,reader 是不是可以考虑弄能单利的? 人家是在测试,就不要挑这么多了 看看这篇文章吧: http://wiki.apache.org/lucene-java/ImproveSearchingSpeed 姐妹篇:http://wiki.apache.org/lucene-java/ImproveIndexingSpeed |
|
返回顶楼 | |