Paxos

summary:

Paxos[パクソス]とは,分散システムにおいて複数のノードが単一の正しい値に合意することを保証するための合意アルゴリズム[コンセンサスアルゴリズム]である.

このアルゴリズムは,障害が発生してもシステム全体として正しい合意を形成できる耐障害性を備えており,特に分散データベースやクラウドコンピューティングにおけるレプリケーションの基盤技術として重要視されている.Paxosの特徴は,ノードの一部が故障した場合でも,過半数のノードが健全であれば合意形成を継続できることであり,これは分散環境における高可用性とデータの一貫性を確保する上で不可欠である.

Paxosは1989年にレスリー・ランポート[Leslie Lamport]によって考案され,1998年に正式に発表された.彼の論文「The Part-Time Parliament」では,ギリシャのパクソス島[Paxos]に由来する架空の議会制度の比喩を用いて,Paxosアルゴリズムの仕組みが説明された.

しかし,この論文は当初難解であると受け取られ,広く認知されるまでには時間がかかった.その後,2001年にLamport自身が「Paxos Made Simple」という論文を発表し,アルゴリズムの説明を簡潔にしたことで,分散システム研究者の間で注目を集めた.

2000年代以降,GoogleのChubbyApache ZooKeeperなどの分散システムにおいてPaxosが実際に応用されるようになり,分散データベースやストレージシステムにおける標準的なコンセンサスアルゴリズムの一つとなった.とはいえ,Paxosは実装が複雑であるため,2014年にはDiego OngaroとJohn Ousterhoutによってよりシンプルな合意アルゴリズムであるRaftが提案され,Paxosの代替として広く採用されるようになった.それでも,Paxosは分散システムにおける合意形成の理論的基盤として現在も重要な役割を果たしている.

参照

  1. Lamport, L.(1998). The part-time parliament. ACM Transactions on Computer Systems, 16(2), 133–169. https://doi.org/10.1145/279227.279229
  2. Lamport, L.(2001). Paxos made simple. ACM SIGACT News, 32(4), 18–25. https://www.microsoft.com/en-us/research/publication/paxos-made-simple/

Mathematics is the language with which God has written the universe.





















Paxos マスタースレーブ プライマリ・バックアップ チェーンレプリケーション ops:byte比 NOTゲート