23535


elasticsearchのレプリケーションの挙動について詳しくご存じの方いらっしゃいましたら下記1点についてご教示頂けませんでしょうか？

下図のように、タイミングによっては正常にレプリカされない時があるかと思われるのですが、その場合の救済といいますか対処法みたいなものはありますでしょうか？  
それとも、elasticsearchの特性としてレプリカは100%かならずデータ保証されているものなのでしょうか？

[![画像の説明をここに入力](https://i.stack.imgur.com/ZoOTc.jpg)](https://i.stack.imgur.com/ZoOTc.jpg)

mysqlで例えるならば、マスターとスレーブで齟齬が出た場合はバイナリログから復旧できるだったり、そもそもレプリケーションを準同期で行っている等の救済処置（対処）。


CC BY-SA 3.0
2016-03-28T04:52:22.337
23531
2016-03-28T08:06:02.057
14384
question
elasticsearch
elasticsearchのレプリケーションの挙動について。


僕も人に説明できるほど厳密には知りませんが、Elasticsearchドキュメントのインデックスの章の[Write
Consistency](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-
index_.html#index-consistency)によれば、ノードが落ちた、ネットワークが切れたという状態の時に、repliacas/2 +
1個のシャードがある側が有効となり、かつそこに含まれる全てのアクティブなシャードに書き込みが完了した時点でインデックスが完了となります。

> To prevent writes from taking place on the "wrong" side of a network
> partition, by default, index operations only succeed if a quorum
> (>replicas/2+1) of active shards are available.
>
> The index operation only returns after all active shards within the
> replication group have indexed the document (sync replication).

質問の内容に戻ると、伝播する前に落ちたら２番目の条件からそのインデックスは完了せず、エラーになると思います。


CC BY-SA 3.0
2016-03-28T07:48:56.953
23535
2016-03-28T08:06:02.057
2020-06-17T08:14:45.997
-1
7837
23531
answer