資格暗記無料で始める

トランザクション分離レベルとは?

トランザクション分離レベルとは、同時実行時にどこまで他トランザクションの影響を許すかの段階設定。緩い順にREAD UNCOMMITTED、READ COMMITTED、REPEATABLE READ、SERIALIZABLEがあり、レベルを上げるほど整合性は高まるが、ロック待ちが増えて同時実行性能は落ちる。

とらんざくしょんぶんりれべる

応用情報技術者試験の頻出用語/テクノロジ系/別名:トランザクションの分離レベル、分離レベル、READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ、SERIALIZABLE


トランザクション分離レベルの意味

同時実行時にどこまで他トランザクションの影響を許すかの段階設定。緩い順にREAD UNCOMMITTEDREAD COMMITTEDREPEATABLE READSERIALIZABLEがあり、レベルを上げるほど整合性は高まるが、ロック待ちが増えて同時実行性能は落ちる。

トランザクション分離レベルの具体例

参照系の集計バッチはREAD COMMITTEDにして待ちを減らし、残高更新のような資金移動はSERIALIZABLE相当にする。多くのDBMSの既定はREAD COMMITTEDなので、既定のまま金額集計を行うと途中結果を読む恐れがある。

トランザクション分離レベルは試験でどう引っ掛けられる?

どのレベルでどの異状が防げるかの対応表が頻出。READ COMMITTEDはダーティリードだけを防ぎ、REPEATABLE READでも実装によってはファントムリードが残る。SERIALIZABLEは直列実行と同じ結果を保証するが順序までは規定しない。レベルを上げれば安全というだけでなく、デッドロックやタイムアウトの増加という代償もある。DBMSごとに同じ名称でも実装(ロック方式かMVCCか)が異なり、防げる異常の範囲が一致しない点にも注意する。

トランザクション分離レベルと関連する用語

最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。