強一貫性
表示
強一貫性(きょういっかんせい)は、並列プログラミングの領域(分散共有メモリ、分散トランザクションなど)で使用される一貫性モデルの1つである。
以下の場合、プロトコルは強い一貫性をサポートすると言われている。
- すべてのアクセスは、すべての並列プロセス(またはノード、プロセッサなど)によって同じ順序(シーケンシャル)で見られる。
弱一貫性では、異なる並列プロセス(またはノード)が異なる状態の変数を認識することができるのに対し、一貫性のある状態は1つだけである。
一貫性モデルの実装は、一貫性プロトコルによって定義ができる。Tanenbaum et al., 2007[1]。は、データ中心モデルの一貫性プロトコルをいくつか示している[2]。Yu and Vahdat (2000) によって導入された連続一貫性では、アプリケーションが許容できる不整合は3つある。
- 数値の偏差
- 順序の偏差
- レプリカ間の古さの偏差
3つの偏差の境界がすべてゼロになると、連続一貫性モデルは強一貫性となる[2]。
脚注
[編集]- ^ Tanenbaum, Andrew; Maarten Van Steen (2007). “Distributed systems”. Pearson Prentice Hall.
- ^ a b Yu, Haifeng; Amin Vahdat (2000). “Design and evaluation of a continuous consistency model for replicated services.”. Proceedings of the 4th Conference on Symposium on Operating System Design & Implementation 4: 21.