使用弹性搜索创建以人为中心的搜索

时间:2016-02-07 23:08:54

标签: amazon-web-services search elasticsearch solr lucene

我目前有一个以内容为中心的弹性搜索(在AWS中)索引,其中包含包含以下数据的文章:

{article id, title, keywords, summary text, [name 1 [completion rate], name 2 [completion rate]...], creation date}

与每篇文章相关联的每个人都有相关的完成率。

当我搜索关键字时,从顶部匹配的文档返回名称。我想将其转变为以人为中心的模型:

name 1, completion rate {
   { [article id, title, keywords, summary text , creation date],
     [article id, title, keywords, summary text , creation date],
     ...}

name 2, completion rate {
   { [article id, title, keywords, summary text , creation date],
     [article id, title, keywords, summary text , creation date],
     ...}

当我进行搜索时,我想:

_匹配&根据与其关联的所有文章对人进行排名(搜索字词应与人员实体中的标题,关键字和摘要文本字段匹配)

_根据完成率调整一个人的排名(完成率较高的人应排名更高)

_根据创建日期调整一个人的排名(我希望最近的文章对人物实体的整体排名贡献比旧文章更多)

这是可能的设置吗?关于如何做到这一点的任何想法都非常感谢!

最大

0 个答案:

没有答案