Tom*_*Tom 6 lucene solr search-engine
最近几天我们正在考虑使用Solr作为我们的首选搜索引擎.我们需要的大多数功能都是开箱即用的,或者可以轻松配置.然而,我们绝对需要的一个功能似乎在Solr中被很好地隐藏(或缺失).
我将尝试用一个例子来解释.我们有很多实际上是商业的文件:
<document>
<name>Apache</name>
<cat>1</cat>
...
</document>
<document>
<name>McDonalds</name>
<cat>2</cat>
...
</document>
Run Code Online (Sandbox Code Playgroud)
此外,我们还有另一个包含所有类别和同义词的xml文件:
<cat id=1>
<name>software</name>
<synonym>IT<synonym>
</cat>
<cat id=2>
<name>fast food</name>
<synonym>restaurant<synonym>
</cat>
Run Code Online (Sandbox Code Playgroud)
我们希望关联商家和类别,以便我们可以使用类别的名称和/或同义词进行搜索.但是我们不希望在索引时合并这些文件,因为我们应该更新类别(添加.删除同义词......)而不再为所有业务编制索引.
Solr中有什么东西可以做这种关联,还是我们需要开发一些特定的部分?
欢迎提出所有反馈和建议.
先谢谢你,汤姆
您无法找到未索引的信息片段,除非您实现某种查询翻译/扩展,在提交查询之前将某些查询术语翻译为其已索引的等效项。
因此,如果用户输入“restaurant”,那么您的查询将被翻译为包含 cat=1 的过滤器。
据我所知,Solr 不包含此功能,因此您必须自己实现它或改编合适的模块(例如http://lucene-qe.sourceforge.net/)。