我有一个Elasticsearch索引。该索引中的每个文档都有一个数字(即1、2、3等)和一个名为ChildDocumentIds
的数组。也有其他属性。尽管如此,此数组中的每个项目都是与该文档相关的文档的_id
。
我有一个名为“子文档”的保存搜索。我想使用数字(即1、2、3等)并获取与其关联的子文档。
在Elastisearch中有没有办法做到这一点?我似乎找不到为此目的在Elasticsearch中进行关系类型查询的方法。我知道会很慢,但是我很好。接着就,随即。
答案 0 :(得分:1)
terms query允许您执行此操作。如果文档#1000具有子文档3、12和15,则以下两个查询将返回相同的结果:
"terms" : { "_id" : [3, 12, 15] }
和:
"terms" : {
"_id" : {
"index" : <parent_index>,
"type" : <parent_type>,
"id" : 1000,
"path" : "ChildDocumentIds"
}
}
之所以要求您指定索引并再次输入,是因为术语查询支持交叉索引查找。