如何进行分面搜索?

syn*_*ack 6 java lucene information-retrieval faceted-search

我想知道如何使用lucene.facet执行分面搜索.我将准确解释我想要做什么:我有一个htmlfiles分类(类似于ODP),我希望在给定查询的情况下,按类别和每个类别的命中数显示结果.是否有任何用lucene描述的例子?

编辑:我已经通过在每个文档中添加类别字段来获得结果作为类别.我想要的是结果显示为:

Cat1 N1
Cat2 N2
  ...
Run Code Online (Sandbox Code Playgroud)

代替:

Cat1
Cat1
...    xN1 times
Cat1
Cat2
...    xN2 times
Cat2
...
Run Code Online (Sandbox Code Playgroud)

此外,这一类领域仅指分类树的水平,我想利用由分类结构,例如,能够选择在分类搜索的深度(我不知道这是明确的. ).

谢谢!

kro*_*mit 1

由于 solr 和 lucene 从 3.0 开始就合并在一起了,我强烈建议使用 solr 而不是普通的 lucene 来进行分面搜索。

您不必将整个 solr 与 http 服务器一起使用。

尝试使用EmbeddedSolrServer