搜索MultiFields lucene

时间:2012-05-15 13:34:18

标签: java lucene full-text-search search-engine

你有一个应用程序将有大量不同的MetaData字段。 他们预计将拥有约5 000至10 000个油田。

是否可以使用lucene一次搜索所有的字段,而不将它们编入一个字段?

MultiFieldQueryParser为每个singel字段生成一个查询,如果我没有错误,默认luecene会立即设置为大约1000个组合查询吗?

是否还有其他搜索所有字段的解析器?

// Trind

1 个答案:

答案 0 :(得分:2)

不,如果您有多个字段并且想要全部搜索,那么您必须全部搜索它们。

理论上,no performance detriment可以搜索许多小字段而不是一个大字段:

  

换句话说:对于标准析取(OR'd)查询,子句数量并不会真正影响性能,除非更多文档是潜在匹配

在实践中,您可能会看到一些问题;我不确定。在尝试将它们全部索引为一个之前,我会尝试它。

(默认情况下,子句的最大数量为1024,但您可以通过setMaxClauseCount进行更改。)