11 永続性保証
Oracle NoSQL Databaseストアへの書込みは、マスター・ノードでの書込み操作(作成、更新、削除操作)の実行によって行われます。書込み操作の一環として、マスター・ノードは通常、操作が永続的ストレージに行われたことを確認した後、操作の完了とみなします。
マスター・ノードは、シャード内のレプリカ・ノードへの書込みの伝送も行います。レプリカからの受信確認を待ってから操作の完了とみなすようマスター・ノードに求めることもできます。
注意:
セカンダリ・ゾーンを使用中としてストアが構成されている場合、セカンダリ・ゾーン内のレプリカに対して書込み受信確認が要求されることはありません。つまり、書込み受信確認はプライマリ・ゾーン内のレプリカからのみ返されます。ゾーンの詳細は、管理者ガイドを参照してください。
レプリカは、データベースに操作を適用してから書込み操作を受信確認します。
つまり、永続性保証は、ストア内で突発的に障害が発生した場合のデータの永続性の程度を示すポリシーです。(突発的な障害の例には、停電、ディスク・クラッシュ、物理的なメモリーの破損、アプリケーションの致命的なプログラミング・エラーなどがあります。)
永続性保証が高い場合、突発的な障害が起きた場合に書込み操作が保持される可能性が非常に高くなります。永続性保証が低い場合、突発的な障害が起きた場合に書込みが保持される可能性が非常に低くなります。
永続性保証が高いほど、ストア内の書込みスループットが低下します。これは、永続性保証が高い場合、非常に多くのディスクとネットワークのアクティビティが必要になるためです。
実行ごとに変わる非常に一時的なデータの場合、そのデータの永続性保証は最も低いレベルに設定しますが、通常は、一定程度の永続性保証を使用します。
永続性保証には、受信確認保証と同期保証という2種類の情報があります。これらの2種類の保証については、次の各項で説明します。その後、永続性保証の設定方法を示します。
デフォルトでは、Oracle NoSQL Databaseは低い永続性保証を使用することに注意してください。