読み取り整合性レベルの例

さまざまな整合性レベルを使用した読み取り要求の例。

高速読み取り保護の図は、推測的リトライ・テーブルのプロパティが整合性にどのような影響を及ぼすかを示しています。

QUORUMの整合性レベルを持つ単一データ・センター・クラスター

レプリケーション係数が3の単一データ・センター・クラスターで、読み取り整合性レベルがQUORUMの場合、指定された行の3つのレプリカのうち2つが応答しなければ読み取り要求を満たせません。アクセスしたレプリカの行のバージョンが異なっていた場合は、最新バージョンを持つレプリカが要求されたデータを返します。バックグラウンドでは、3番目のレプリカについて最初の2つのレプリカとの整合性が確認され、必要であれば、古くなったレプリカに対して読み取りリペアが開始されます。

図: 3つのレプリカ・ノードを持つ1つのデータ・センターのクラスターとQUORUMに設定された整合性

ONEの整合性レベルを持つ単一データ・センター・クラスター

レプリケーション係数が3の単一データ・センター・クラスターで、読み取り整合性レベルがONEの場合、指定された行について最も近いレプリカが読み取り要求を満たすためにアクセスされます。他のレプリカに対しては、テーブルのread_repair_chance設定に基づいて、バックグラウンドで読み取りリペアが開始される可能性があります。

図: 3つのレプリカ・ノードを持つ1つのデータ・センターのクラスターとONEに設定された整合性

QUORUMの整合性レベルを持つ2データ・センター・クラスター

レプリケーション係数が3の2データ・センター・クラスターで、読み取り整合性がQUORUMの場合、指定された行について4つのレプリカが応答しなければ読み取り要求を満たせません。4つのレプリカには、どちらのデータ・センターに属しているかは問われません。バックグラウンドでは、残りのレプリカが最初の4つのレプリカとの整合性が確認され、必要であれば、古くなったレプリカに対して読み取りリペアが開始されます。

図: 3つのレプリカ・ノードを持つ複数のデータ・センターのクラスターとQUORUMに設定された整合性レベル

LOCAL_QUORUMの整合性レベルを持つ2データ・センター・クラスター

レプリケーション係数が3の複数データ・センター・クラスターで、読み取り整合性がLOCAL_QUORUMの場合、読み取り要求を満たすには、指定された行について、コーディネーター・ノードと同じデータ・センターの2つのレプリカが応答する必要があります。バックグラウンドでは、残りのレプリカについて最初の2つのレプリカとの整合性が確認され、必要であれば、古くなったレプリカに対して読み取りリペアが開始されます。

図: 3つのレプリカ・ノードを持つ複数のデータ・センターのクラスターとLOCAL_QUORUMに設定された整合性

ONEの整合性レベルを持つ2データ・センター・クラスター

レプリケーション係数が3の複数データ・センター・クラスターで、読み取り整合性レベルがONEの場合、データ・センターに関係なく、指定された行について最も近いレプリカが読み取り要求を満たすためにアクセスされます。他のレプリカに対しては、テーブルのread_repair_chance設定に基づいて、バックグラウンドで読み取りリペアが開始される可能性があります。

図: 3つのレプリカ・ノードを持つ複数のデータ・センターのクラスターとONEに設定された整合性

LOCAL_ONEの整合性レベルを持つ2データ・センター・クラスター

レプリケーション係数が3の複数データ・センター・クラスターで、読み取り整合性レベルがLOCAL_ONEの場合、指定の行について、コーディネーター・ノードと同じデータ・センターの最も近いレプリカが読み取り要求を満たすためにアクセスされます。他のレプリカに対しては、テーブルのread_repair_chance設定に基づいて、バックグラウンドで読み取りリペアが開始される可能性があります。

図: 3つのレプリカ・ノードを持つ複数のデータ・センターのクラスターとLOCAL_ONEに設定された整合性