Paxosの働きをイメージする
【「Paxosの働きをイメージする」を公開しました 】
1/29 マルレク「分散合意アルゴリズム (1) — Paxos」にむけ、ショートムービー「Paxosの働きをイメージする」を公開しました。ご利用ください。
https://youtu.be/HsmuIRZq8ps?list=PLQIrJ0f9gMcOTqmza5742zyEYjkApl_fF
今回から、Paxos のアルゴリズムの紹介を始めようと思います。
ただ、Paxosのアルゴリズムは複雑なので、それがどういう状況でどのような働きをしているのかのイメージを持ってもらうことから始めようと思います。
今回は、MSのクラウドAzureのデータ・ノードの多重化と、障害が起きた際のノードの再構成の振る舞いを紹介して、こうしたメカニズムが、基本的には Paxos の働きで支えられているという話をします。
この例では、次のような障害とそれからの回復操作を想定しています。
・ Primary の故障
・故障したSecondaryを除く
・修復したreplicaの追加
・新しいSecondaryの準備
重要なことは、こうした障害に際してのシステムの再構成が、自動的に行われるということです。クラウドの高い耐障害性、高い可用性は、こうしたメカニズムで支えられています。そうしたメカニズムは、クラウド以前には存在しなかったものです。
「分散合意」というのは、複数のノードからなる分散システムが、その内部で部分的な傷害が起きたとしても、外から見ると、共通の一つの意志を持つように振る舞うということです。
Paxosでは、その意思決定に「多数決」を用いることがあります。
今回の例では、4つのセカンダリーのうち、多数の3つのセカンダリーへの書き込みに成功した時点で(1つのノードへの書き込みができていなくとも)、このシステムへの書き込みは成功したものと反応します。
今回の例では、4つのセカンダリーのうち、多数の3つのセカンダリーへの書き込みに成功した時点で(1つのノードへの書き込みができていなくとも)、このシステムへの書き込みは成功したものと反応します。
今回は、具体的なPaxosのアルゴリズムには踏み込みませんが、分散システムの中で、Paxosが、どのような働きをしているかの、イメージをもって貰えばいいと思います。
スライドのpdfは、次のURLからアクセスできます。https://drive.google.com/file/d/1Hd84oUOhU_QOfpdu3Fylld65UrfGFO1t/view?usp=sharing
以前の資料は、次のページからアクセスできます。https://www.marulabo.net/docs/paxos/
コメント
コメントを投稿