【发布时间】:2015-01-14 20:50:05
【问题描述】:
任何人都可以推荐具有灵活排名计算的搜索引擎吗?
什么是灵活排名计算?
例如我有两个文件:
obj1 = {
title: "new record"
tags: [
{value:"tag1", weight:1},
{value:"tag2", weight:0.8},
{value:"tag3", weight:2},
]
}
obj2 = {
title: "new record with tag1 in title"
tags: [
{value:"tag1", weight:0.5},
{value:"tag2", weight:1},
{value:"tag3", weight:0.01},
]
}
假设“title”属性的权重为 0.25
当我在所有属性中搜索“tag1”时 我希望搜索返回 obj1 的排名 = 1 和 obj2 的排名 = 0.75
我知道 Solr 可以做到,但您还有其他建议吗?
【问题讨论】:
-
0.25和tags.weight有什么关系(公式)?
-
MongoDB 聚合框架可用于查找匹配的文档,计算它们的分数并按计算的分数排序输出。
-
title 的权重始终为 0.25,但每个文档的标签可能具有不同的权重。标题权重和标签权重之间没有关系。
-
ElasticSearch是您可以考虑的选项。elasticsearch.org/guide/en/elasticsearch/reference/current/…
标签: mongodb search solr amazon-cloudsearch azure-cognitive-search