8.2. 分離レベル
Red Hat Data Grid は、READ_COMMITTED と REPEATABLE_READ の 2 つの分離レベルを提供します。
これらの分離レベルは、リーダーが同時書き込みを確認するタイミングを決定し、MVCCEntry の異なるサブクラスを使用して内部的に実装されます。MVCCEntry では、状態がデータコンテナーにコミットされる方法が異なります。
以下は、Red Hat Data Grid のコンテキストにおける READ_COMMITTED と REPEATABLE_READ の相違点を理解するのに役立つ詳細な例になります。READ_COMMITTED の場合、同じキーで連続して 2 つの読み取り呼び出しを行うと、キーが別のトランザクションによって更新され、2 つ目の読み取りによって新しい更新値が返されることがあります。
REPEATABLE_READ では、最終 get は引き続き v を返します。そのため、トランザクション内で同じキーを複数回取得する場合は、REPEATABLE_READ を使用する必要があります。
ただし、読み取りロックが REPEATABLE_READ に対しても取得されないため、この現象が発生する可能性があります。