elasticsearch,Nosql,Nested,elasticsearch" /> elasticsearch,Nosql,Nested,elasticsearch" />

Nosql 在Elasticsearch中,多个顶级文档能否共享一个嵌套文档?

Nosql 在Elasticsearch中,多个顶级文档能否共享一个嵌套文档?,nosql,nested,elasticsearch,Nosql,Nested,elasticsearch,Elasticsearch有嵌套文档(很棒)。我想用它来存储消息(顶级文档)及其作者(嵌套文档) 因为一个作者可以有许多消息——一个版本的作者可以被引用为多个消息的子版本吗 这样,如果您在一个地方更新作者数据,它将在引用它们的任何地方更新 注意:这与:--此处的答案也可能解决此问题。您可能希望使用\u父映射查看: 这允许您为作者创建一个类型,为消息创建一个单独的类型(父类型为Author),然后单独索引文档并随时间添加到消息中。您只需要更新作者的单一版本,它就可以影响对该作者的所有邮件的查询 要

Elasticsearch有嵌套文档(很棒)。我想用它来存储消息(顶级文档)及其作者(嵌套文档)

因为一个作者可以有许多消息——一个版本的作者可以被引用为多个消息的子版本吗

这样,如果您在一个地方更新作者数据,它将在引用它们的任何地方更新


注意:这与:--此处的答案也可能解决此问题。

您可能希望使用
\u父映射查看:

这允许您为作者创建一个类型,为消息创建一个单独的类型(父类型为Author),然后单独索引文档并随时间添加到消息中。您只需要更新作者的单一版本,它就可以影响对该作者的所有邮件的查询

要实现对具有特定作者的消息的查询,您需要使用has\u父查询或过滤器。反之,使用has_child查找具有特定消息的作者

  • has_child结果在父文档中包含与查询匹配的子文档
  • “是否有父项”结果在子文档中包含与查询匹配的父文档

我一直在使用这种更具动态性的表单,而不是嵌套文档,它对我来说(无论是查询还是方面)都很有效,但在加载任何此类文档之前,您必须小心定义映射,因为在事实发生之后添加
\u parent
映射似乎对我不起作用。到目前为止,重新编制索引一直是我未能做到的事情

您可能希望使用
\u父映射查看:

这允许您为作者创建一个类型,为消息创建一个单独的类型(父类型为Author),然后单独索引文档并随时间添加到消息中。您只需要更新作者的单一版本,它就可以影响对该作者的所有邮件的查询

要实现对具有特定作者的消息的查询,您需要使用has\u父查询或过滤器。反之,使用has_child查找具有特定消息的作者

  • has_child结果在父文档中包含与查询匹配的子文档
  • “是否有父项”结果在子文档中包含与查询匹配的父文档
我一直在使用这种更具动态性的表单,而不是嵌套文档,它对我来说(无论是查询还是方面)都很有效,但在加载任何此类文档之前,您必须小心定义映射,因为在事实发生之后添加
\u parent
映射似乎对我不起作用。到目前为止,重新编制索引一直是我未能做到的事情