【くぉーらむ】

クォーラム とは?

公開:
💡 全員を待たず、必要な数と重なりを確保する

分散システムで、処理の成立に必要とする応答や賛成の数。複製データの読み書きと合意形成では、必要な条件や保証が異なる。

📌 このページのポイント
クォーラム 同じ複製先5台:R=3、W=3 A B C D E 読み取り:A・B・C 書き込み:C・D・E この例ではCが重なる(どの3台同士でも重なる) R+W > N は集合の条件。一貫性には追加の規則が必要
全員を待たず、必要な数と重なりを確保する
ひよこ ひよこ
全員が返事をしなくても処理を進めていいの?
ペンギン先生 ペンギン先生
決められた数の返事を集めて進めるのがクォーラムの考え方だよ。全員を待つ方式だと、1台の故障でも止まりやすい。必要な数はシステムの規則で決めるんだ。
ひよこ ひよこ
5台なら何台の返事を待つの?
ペンギン先生 ペンギン先生
過半数なら3台だよ。どんな3台の組み合わせでも、別の3台と最低1台は重なる。Raftではこの性質と投票・ログの規則を組み合わせて合意する。3台が互いに通信できるなどの条件が整えば、残り2台が故障しても進められるよ。
ひよこ ひよこ
データを読むときにも使うんだね!
ペンギン先生 ペンギン先生
そうだよ。同じ複製先5台のうち3台への書き込みが成功したあと、3台から読むと、書き込みを受けた台が読み取り集合に含まれる。N=5、W=3、R=3で、R+W=6がNを超えるからだよ。
ひよこ ひよこ
書くのを2台に減らしても大丈夫なの?
ペンギン先生 ペンギン先生
重なりは保証できないよ。A・Bに書いてC・D・Eから読めば、書き込み先と読取先が分かれてしまう。R+W=Nでは足りないんだ。また、障害時に別の複製先へ代替する方式では、同じN台という前提も確認しよう。
ひよこ ひよこ
重なれば、どんな場合も最新の値になるの?
ペンギン先生 ペンギン先生
そこまでは言えないよ。集まった版の比較や、同時に起きる更新、途中で失敗した書き込みも扱う必要がある。式が示すのは集合の重なりであって、それだけで一貫性の全条件がそろうわけではないんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「クォーラム」は「全員を待たず、必要な数と重なりを確保する」と押さえておこう!
📖 おまけ:英語の意味
「quorum」 = 定足数
💬 quorumは「定足数」という意味の表現だよ。

参考資料

← 用語集にもどる