ES集群分布式查询原理

集群分布式查询

elasticsearch的查询分成两个阶段:

  • scatter phase:分散阶段,coordinating node会把请求分发到每一个分片
  • gather phase:聚集阶段,coordinating node汇总data node的搜索结果,并处理为最终结果集返回给用户分片存储原理

集群分布式存储

当新增文档时,应该保存到不同分片,保证数据均衡,那么coordinating node如何确定数据该存储到哪个分片呢?

分片存储原理:

elasticsearch会通过hash算法来计算文档应该存储到哪个分片:

说明:

  • _routing默认是文档的id
  • 算法与分片数量有关,因此索引库一旦创建,分片数量不能修改!

新增文档的流程如下:

解读:

1)新增一个id=1的文档

2)对id做hash运算,假如得到的是2,则应该存储到shard-2

3)shard-2的主分片在node3节点,将数据路由到node3

4)保存文档

5)同步给shard-2的副本replica-2,在node2节点

6)返回结果给coordinating-node节点

相关推荐
AC赳赳老秦2 分钟前
文案策划提效:OpenClaw批量生成活动文案、宣传海报配文,适配不同渠道调性
java·大数据·服务器·人工智能·python·deepseek·openclaw
JunLa36 分钟前
Agent Basic 上篇
大数据·人工智能·agent
方向研究43 分钟前
量化行业分析
大数据
CableTech_SQH1 小时前
江苏理工学院武进绿建区协同创新园智能化建设 F5G 全光方案百盛分析报告
大数据·网络·数据库·5g·信息与通信
Little Tomato1 小时前
深入浅出高并发:从 JVM 锁竞争到分布式事务的性能博弈
jvm·分布式
Elastic 中国社区官方博客1 小时前
Elasticsearch Vector DiskBBQ 过滤搜索现已提升 3 – 5 倍速度
大数据·人工智能·elasticsearch·搜索引擎·全文检索
189228048611 小时前
NV232固态闪存MT29F32T08GWLBHD6-TES:B
大数据·服务器·人工智能·科技·缓存
搭贝2 小时前
中建八局装饰 | AI 隐患识别+电子围栏+红黄牌管控 ,重塑质量巡检合规体系
大数据·人工智能·低代码·数字化
正在走向自律2 小时前
时序数据库技术内幕:从大数据存储模型看工业级时序数据库的设计与落地
大数据·数据库·时序数据库·工业物联网存储·tsfile 存储引擎·大数据时序技术·物联网数据治理
zshs0002 小时前
从 Raft 到 MySQL:我是怎么推导出半同步复制原理的
数据库·分布式·mysql