DynamoDB を使用して、2 つの独立したクライアントが同時に同じアイテムに書き込みを試み、条件付き書き込みを使用し、条件が参照している値を変更しようとしています。明らかに、これらの書き込みの 1 つが条件チェックで失敗する運命にあります。それで大丈夫です。
書き込み操作中に何か問題が発生し、さまざまな DynamoDB ノードの一部で障害が発生したり、相互の接続が失われたりしたとします。書き込み操作はどうなりますか?
それらは両方ともブロックするか失敗しますか (CAP 定理の「A」の犠牲)? 両方とも成功したように見えて、そのうちの 1 つが実際に無視された ("C" の犠牲) ことが後になって判明するのでしょうか? それとも、DynamoDB システムで行われているマジック (コンシステント ハッシュ?) により、どちらも正常に動作するのでしょうか?
非常に難しい問題のように思えますが、条件付き書き込みでの可用性の問題の可能性について議論しているものは何も見つかりません (たとえば、可用性の低下の可能性が明示されている一貫した読み取りとは異なります)。