4

我正在开发 Solr 3.6 以获取自动建议。我一直在提到 Solr Suggester 组件(http://wiki.apache.org/solr/Suggester)。但是我无法决定应该为 Suggester 使用哪个 Lookup 类,而且也没有提供任何好的文档,我可以从中找到最好的文档。

我在这四个查找类中进行了选择:

JaspellLookup - 基于 Jaspell 的基于树的表示,TSTLookup - 基于三叉树的表示,能够立即更新数据结构,FSTLookup - 基于自动机的表示;构建速度较慢,但​​在运行时消耗的内存要少得多(请参阅下面的性能说明)。WFSTLookup - 加权自动机表示:FSTLookup 的替代方案,用于更细粒度的排名。索尔 3.6+

你能帮我理解这个吗?或者帮我决定哪一个适合我的要求?

我需要部署一个类似于 Amazon.com、Flipkart、NewEgg 的建议器,具有以下特定要求:

  • 自动建议与术语完成,比如当我输入“xpe”时,建议者应该返回,xperia,电子产品中的 xperia,PC 和笔记本电脑中的 xperia(这可以在类别中建议术语)
  • 对于同一个词,它还应该返回 xperia ray、xperia arc、xperia play 等。这可以是按受欢迎程度排序的热门搜索。
  • 对于更完整的术语“xperia u”,它应该返回 xperia u、xperia u unlocked、xperia u case、xperia u st25i 等。
  • 当有人写“xperia u”时填写完整的产品名称,它应该列出xperia u android手机-白色,xperia u android手机-黑色......其中建议是具体的产品名称。
    • 我们还需要过滤父类别,所以当有人选择婴儿产品作为类别时,它不会列出 xperia play 或 xperia u for xpe。相反,如果没有建议,它可能只是不提供建议,或者只提供这些类别中的建议。

编辑 只是为了澄清,按受欢迎程度排序,我的意思是按实际用户搜索的次数列出建议的术语,而不是给出更多数量的项目作为结果的术语。

我确信这可以做到这一点,但不确定如何使用 Solr 中提供的建议器组件来准确地做到这一点,特别是我应该选择哪个查找来实现这种建议。您的帮助将不胜感激。

4

0 回答 0