白话Elasticsearch60-数据建模实战_Join datatype 父子关系数据建模
文章目錄
- 概述
- 官網
- 示例
概述
繼續跟中華石杉老師學習ES,第60篇
課程地址: https://www.roncoo.com/view/55
白話Elasticsearch58-數據建模實戰_基于nested object實現博客與評論嵌套關系
白話Elasticsearch59-數據建模實戰_ Nested Aggregation/ Reverse nested Aggregation對嵌套的博客評論數據進行聚合分析
前面我們學習了nested object的建模,有個不好的地方,就是采取的是類似冗余數據的方式,將多個數據都放在一起了,維護成本比較高
parent child建模方式,采取的是類似于關系型數據庫的三范式類的建模,多個實體都分割開來,每個實體之間都通過一些關聯方式,進行了父子關系的關聯,各種數據不需要都放在一起,父doc和子doc分別在進行更新的時候,都不會影響對方.
一對多關系的建模,維護起來比較方便,而且我們之前說過,類似關系型數據庫的建模方式,應用層join的方式,會導致性能比較差,因為做多次搜索。父子關系的數據模型如下每個join field 的 has_child或has_parent查詢都會對查詢性能產生重大影響:
父子關系數據模型,相對于nested數據模型來說,優點是父doc和子doc互相之間不會影響
官網
Join datatype :戳這里
其他詳見官網解讀
示例
總結
以上是生活随笔為你收集整理的白话Elasticsearch60-数据建模实战_Join datatype 父子关系数据建模的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 白话Elasticsearch58-数据
- 下一篇: 白话Elasticsearch61-进阶