我有这样的映射:
{
"properties":{
"staticField1": ...
"staticField2": ...
...
"staticFieldN": ...
"currentNumbers": {
"properties": {
"highFrequencyUpdateField1": ...
"highFrequencyUpdateField2": ...
"highFrequencyUpdateField3": ...
}
}
}
}
因此,有许多staticFields
,几乎从不更新,但currentNumbers
节点中的某些字段必须每隔几分钟更新一次。
我目前POST
只有currentNumbers
节点的部分更新,但由于此处的所有内容都在一个大文档中,因此这将在内部重新编制完整文档的索引。
我想要实现的是
的某种方式currentNumbers
节点而没有弹性搜索需要重新索引所有staticFields
。highFrequencyUpdateFields
和staticFields
的组合查询文档(因此我无法将它们视为完全独立的实体)根据我在文档中阅读的内容,我得到以下两个选项:
关于亲子关系:这似乎带来了更糟糕的查询表现,我不想在这里牺牲。
我在文档中找不到的内容:nested
在索引性能方面是否对我有所帮助,即如果我发布部分内容,不重新索引整个文档仅使用currentNumbers
节点进行更新?
我认为这可能是弹性搜索的常用用法,所以我希望有关如何构建映射的更好的想法;)。