主分片计数实际上并不重要,因此我将用N代替它。
如果您的索引具有N个分片和2个副本,则复制组中将有3个分片。这意味着法定人数为两个:主要人数加上一个副本。您需要两个活动的分片(通常意味着两个活动的计算机)来满足写入一致性参数
具有N个分片和3个副本的索引在复制组中有四个分片(主+ 3个副本),因此法定人数为3。
具有N个分片和1个副本的索引是一种特殊情况,因为您不能真正拥有只有两个分片的仲裁。在只有一个副本的情况下,Elasticsearch只需要一个活动的碎片(例如主碎片),因此该
quorum设置与
one该特定安排的设置相同。
一些注意事项:
0.19确实很老,您应该绝对,绝对地,积极地升级。自该版本发布以来,我什至无法计数已添加了多少错误修正和性能改进:)
写一致性仅仅是网关检查。在执行索引请求之前,节点将进行一次稻草轮询以查看是否满足write_consistency。如果是,它将尝试执行索引并推送复制。这不能保证副本会成功…它们很容易失败,您会在响应中看到它。如果不满足一致性设置,它只是停止索引过程的一种机制。
具有两个节点的“完全复制”设置是1个主分片+ 1个副本。每个节点都有完整的数据集。没有理由拥有更多副本,因为ES拒绝将相同数据的副本放在同一台计算机上(这没有意义,对HA毫无帮助)。无法索引只是写一致性的副作用,但它指出了设置中的一个更大问题:)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)