新建、索引和删除 请求都是 写 操作, 必须在主分片上面完成之后才能被复制到相关 的副本分片
新建索引和删除文档所需要的步骤顺序:
1. 客户端向 Node 1 发送新建、索引或者删除请求。
2. 节点使用文档的 _id 确定文档属于分片 0 。请求会被转发到 Node 3,因为分片 0 的 主分片目前被分配在 Node 3 上。
3. Node 3 在主分片上面执行请求。如果成功了,它将请求并行转发到 Node 1 和 Node 2 的副本分片上。一旦所有的副本分片都报告成功, Node 3 将向协调节点报告成功,协调 节点向客户端报告成功。 在客户端收到成功响应时,文档变更已经在主分片和所有副本分片执行完成,变更是安全的。 有一些可选的请求参数允许您影响这个过程,可能以数据安全为代价提升性能。