无论才能、知识多么卓著,如果缺乏热情,则无异纸上画饼充饥,无补于事。

Elasticsearch主分片与副本分片数据一致问题?

Elasticsearch | 作者 springlet | 发布于2018年04月26日 | 阅读数:5579

假如索引所在的主分片上存在500个doc,副本上也是一样,此时副本分片所在节点宕机,主分片节点继续接受数据到600个doc,此时副本分片所在节点恢复,那么主分片与备份分片如何保持数据一致
已邀请:

es_newbee

赞同来自:

我记得是那600doc会写到log里,然后从会复制500doc至主从一致,然后再600doc会从log写到primary。

yayg2008

赞同来自:

如果这100doc所在的segment已经commit,写入磁盘,那副本会从segment来恢复。如果还存在于trangslog,未刷盘,就从translog恢复。

springlet

赞同来自:

副本分片所在节点宕机,translog文件也只是保存上一次写入磁盘操作后未及时写入磁盘的数据,按正常的数据恢复,也只会恢复translog的数据,但是对于宕机期间的新增数据,备份分片肯定是没有的,主分片会去和备份分片进行一致性比对吗,比对的机制又是如何呢?是增量同步还是全量同步呢(redis在主从同步这一块做的非常完美)

zqc0512 - andy zhou

赞同来自:

translog  这个也有时间与大小设置的。

要回复问题请先登录注册