因果整合性
因果整合性または因果一貫性は、主要なメモリ一貫性モデルの1つである。並行プログラミングでは、並行プロセスが共有メモリにアクセスする場合、整合性モデルによって、どのアクセスが合法であるかを制限する。分散共有メモリや分散トランザクションにおける正しいデータ構造を定義するのに役立つ。
因果整合性は「パーティションの下でも利用可能」であり、プロセス間のネットワーク接続が機能していなくても(ネットワークがパーティションされていても)、プロセスがメモリを読み書きできる(メモリが利用可能)非同期モデルである。パーティションの下では安全性とライブ性を両立できず、同期を必要とするため応答が遅くなる逐次整合性や線形性などの強力な整合性モデルとは対照的である。
因果整合性は、1990年代に共有メモリモデルの弱い整合性モデルとして提案された。因果的整合性は、通信プロトコルにおける因果的ブロードキャストの概念と密接に関連している。