一、ES查询内部原理
- 客户端发起请求到集群协调节点coordinate node
- 若是根据docId(不是根据docId查询则根据随机轮询算法,分配到所有分片查询)查询则根据路由算法,找到分片
- 根据随机轮询算法,将请求分摊给主备节点,达到负载均衡的目的
- 各个节点将结果返回给协调节点,由协调节点统一返回数据给客户端
二、ES增删改内部原理
- 客户端发起创建的请求到集群协调节点coordinate node
- 根据docId路由确定主分片,增删改操作仅发生再主分片 (doc路由到shard 路由算法
shard=hash(id) % number_of_primary ) - 主分片创建这条doc,创建完成后通知协调节点,通知客户端
- 主分片将数据同步到备分片上