Elasticsearch 嵌套类型:连接嵌套文档
在 Elasticsearch 中处理文档关系时,嵌套类型是一种强大的工具,它可以帮助我们更好地管理和查询嵌套文档。本文将详细介绍嵌套类型的概念、使用方法以及相关的操作技巧。
1. 普通查询的局限性
在 Elasticsearch 中,当我们进行简单的字段查询时,例如搜索 members.first_name:lee ,它可以正常匹配到名为 “Lee” 的成员。但如果我们同时搜索 members.first_name:lee AND members.last_name:gheorghe ,即使没有名为 “Lee Gheorghe” 的成员,文档仍然可能匹配成功。这是因为 Elasticsearch 在 Lucene 层面将所有字段都放在同一个文档中,它不清楚对象之间的边界。
2. 使用对象定义文档关系的优缺点
在深入了解嵌套类型之前,我们先回顾一下使用对象定义文档关系的优缺点。
- 优点 :
- 易于使用 :Elasticsearch 默认可以检测到对象,大多数情况下无需提前进行特殊定义即可对对象进行索引。
- 支持查询和聚合 :可以像处理扁平文档一样对对象进行查询和聚合操作,因为在 Lucene 层面它们实际上是扁平文档。
- 无需连接操作 :由于所有数据都在同一个文档中,使用对象可以获得较好的性能。
- 缺点
超级会员免费看
订阅专栏 解锁全文
856

被折叠的 条评论
为什么被折叠?



