【发布时间】:2018-06-05 09:50:07
【问题描述】:
假设我们正在使用 iphone 进行搜索,并且在品牌方面,我们得到以下方面 1)安泽 2)苹果 3)阿拉蕾 4)炮台 5)每日物品
它基于字母顺序。但是我们想根据 每个品牌的一些定制分数。 solr faceting 中是否有任何可用的功能可以满足上述要求?
如果我们有针对每个品牌方面价值的分数,那么有没有办法在 solr 端执行方面?
目前,solr 只有两个 facet.sort 选项,即 index 和 count。 除了索引和计数之外,我们还希望合并其他排序选项。 请提出建议。
【问题讨论】:
-
我们可以为一个结果集讨论多少个方面术语?你可以在自己的中间件中做到这一点吗?
-
在 Solr4 中没有任何其他自定义方式对其进行排序。但是从 Solr5 你可以通过 json.facet 实现自定义排序。欲了解更多信息yonik.com/json-facet-api
-
感谢您的回复,
-
@MatsLindh 感谢您的回复。我们使用 facet.limit = 500 ,所以我们最多可以得到 500 个 facet 值。在中间件中,我们可以通过编写比较器来实现,但我们试图根据其他字段对构面值进行排序。假设 50 个文档在一个方面值下,我们试图找出这 50 个文档的字段的平均值。基本上,我们正在尝试根据其他一些自定义字段(计数或索引除外)对构面值进行排序。由于该字段在 solr doc 中可用,因此我们不考虑中间件实现。
-
但是,请记住,构面中的术语只是索引中的术语 - 分面代码不会为每个术语的每次出现获取完整的文档 - 所以我认为信息不会很容易获得。
标签: solr solrj solr4 solrcloud solrnet