使用一个索引作为另一个索引中的术语源

时间:2017-12-10 23:57:58

标签: elasticsearch

我有两个索引,一个是特定短语列表,另一个是可能(或可能不)包含这些搜索短语的文档。

我的索引如下所示:

  • 短语

文档

  • 创建者
  • LASTUPDATED
  • documentText

对于阶段索引中的每个短语,我想要对文档索引中的文档进行计数,其中documentText包含短语索引中的短语。

例如,如果将结果格式化为表格,我希望这样:

|   Phrase   | Count of documents |
|------------|--------------------|
| "phrase 1" |                 10 |
| "phrase 2" |                 12 |

我可以使用单个索引中的术语聚合来完成此操作,但无法确定索引之间的这种可能性。

1 个答案:

答案 0 :(得分:0)

尽管我已经知道了,弹性开箱即可。相反,我最终更新了每个文档以包含相关的短语。

为此,我编写了一个小型控制台应用程序,它循环浏览了我的短语索引中的每个值,并搜索了该短语。然后我循环浏览每个返回的文档,并将短语添加到"短语"属性。

然后,我可以根据该属性对集合进行聚合查询。