资料来自于ElasticSearch官方文档。
ElasticSearch分片交互过程(创建索引、删除索引、查询索引)
1 创建索引
首先:发送一个索引或者删除的请求给node1
其次:node1接到请求之后,会根据请求中携带的参数“文档id”判断出该文档应该存储在具体哪一个shard中
shard = hash(routing) % numberofprimary_shards
,比如shard0;其次就是node1通过元数据信息可以知道shard0在具体哪一个节点,于是node1会把请求转发给node3
最后:node3接收到请求之后会将请求并行的分发给shard0的所有replica shard之上,也就是存在于node 1和node 2中的replica shard;如果所有的replica shard都成功地执行了请求,那么将会