页:
[1]
|
lucene搜索结果的合并
有人告诉我说Lucene在进行多条件查询的时候会分别对每一个查询条件进行查询,然后将所有的查询结果合并。比如说查询条件: title:lucene AND publisher:manning ,lucene会先查询 title:lucene 然后再查询 publisher:manning ,最后将两次搜索的结果合并,真的是这样吗?那lucene是如何做到的呢?
那么请问lucene使用什么算法保证结果合并这个过程能够快速完成呢?比如说第一个搜索条件得到100000个结果,第二个搜索条件得到100000个结果,如何得到“与”操作的结果? 这两个结果集保存到内在中也要占用不小的空间啊。 |
|
之前做了一个TAG系统,有想过用“与”操作来实现,但最终没能搞定。
后来,直接把结果放到数组进行取交集操作。当时有做过数据测试,速度还可以。具体的数据忘记了。楼主可以自己测试一下,看看能不能满足自己的需求。 |
|
| 为什么不去官网,mail-list,source 寻找你答案呢? |
|
俺是小菜鸟,俺对java不熟,看不懂他的代码。
虽然不会一次返回100000个结果,但是应该要计算这些结果和搜索文字的相关度,然后排序的吧。 |
Powered by Discuz! Archiver 6.1.0
© 2001-2006 Comsenz Inc.
Processed in 0.006566 second(s), 2 queries |