結果整合性
結果整合性(英: Eventual Consistency)とは、分散コンピューティングにおいて高可用性を実現するために用いられる整合性モデル(一貫性モデル)であり、あるデータ項目に新たな更新が行われなかった場合、最終的に(結果的に)その項目へのすべてのアクセスが最後に更新された値を返すことを非公式に保証するものである。結果整合性は楽観的レプリケーションとも呼ばれ、分散システムに広く導入されており、その起源は初期のモバイルコンピューティングプロジェクトにある。結果一貫性を達成したシステムは、しばしば「収束した」または「レプリカ収束を達成した」と言われる。結果一貫性は弱い保証であり、線形性のようなより強いモデルのほとんどは、最終的に一貫性を持つことは自明だが、単に結果一貫性を持つシステムは、通常、これらのより強い制約を満たさない。
結果一貫性のあるサービスは、伝統的なACID(Atomicity, Consistency, Isolation, Durability)保証とは対照的に、BASE(Basically Available, Soft state, Eventual consistency)セマンティクスを提供するものとして分類されることが多い。化学ではBASEはACIDの反対語であり、頭文字を覚えるのに役立つ。同資料によると、BASEの各用語の大まかな定義は以下の通りである。
基本的に利用可能:基本的な読み書き操作は可能な限り利用可能(データベースクラスタの全ノードを使用)だが、いかなる種類の一貫性保証もない(競合が調整された後に書き込みが持続しない可能性や、読み込みが最新の書き込みを取得しない可能性がある)。