在 Mapping 里面,将 dynamic 参数设置成 strict 可以拒绝索引包含未知字段的文档。 此条 Tips 由 medcl 贡献。

es节点离开后在节点配置的延迟分配时间内再加入,在数据修改时,会导致数据重建吗?

Elasticsearch | 作者 HerbertMahone | 发布于2020年09月07日 | 阅读数:1664

设置延迟分配时间为10min,节点在离开3分钟后再加入,但该节点对应的数据已经不新鲜,此种情况下会导致节点内数据失效重建吗?2.x版本会,但不知道6.x版本是否会增量同步恢复,而不是全部重建。
恳请各位大神帮忙看看
已邀请:

FFFrp

赞同来自: HerbertMahone

现在应该会根据localpoint allocation,可以看看相关资料,推荐下张超大佬的源码书中的allocation部分

HerbertMahone - 那座山,那片海,那座城

赞同来自:

es文档里面的恢复过程描述哪下:With delayed allocation enabled, the above scenario changes to look like this:

    1-Node 5 loses network connectivity.
    2-The master promotes a replica shard to primary for each primary that was on Node 5.
    3-The master logs a message that allocation of unassigned shards has been delayed, and for how long.
    4-The cluster remains yellow because there are unassigned replica shards.
    5-Node 5 returns after a few minutes, before the timeout expires.
    6-The missing replicas are re-allocated to Node 5 (and sync-flushed shards recover almost immediately).
提到了副本会重新分配给节点5,不会导致在其它节点的副本重建,但是没有提到在离开节点数据不新鲜的情况下,节点5的副本恢复是以何种方式进行的。

要回复问题请先登录注册