分離レベル (Isolation Level)
[Database]
トランザクション同時実行時の問題点
トランザクションを同時実行した場合に、トランザクションの分離レベルによっていくつかの問題が発生する。
- 更新データの損失 (Lost Updates)
<<ref_imageプラグインは存在しません。>>
- ダーティーリード (Dirty Read)
別のトランザクションにより更新されたが、まだコミットされていないデータを読んでしまえる。
<<ref_imageプラグインは存在しません。>>
- 反復不可能読み取り
<<ref_imageプラグインは存在しません。>>
- ファントムリード
<<ref_imageプラグインは存在しません。>>
分離レベル (Isolation Level)
| Isolation(分離レベル) | Dirty Read(ダーティーリード) | Non-Repeatable Reads(反復不可能読み取り) | Phantom Reads(ファントムリード) |
|---|---|---|---|
| Read Uncommitted(非コミット読み取り) | 起こりうる | 起こりうる | 起こりうる |
| Read Committed(コミット済み読み取り) | − | 起こりうる | 起こりうる |
| Repeatable Read(繰り返し可能読み取り) | − | − | 起こりうる |
| Serializable(直列化可能) | − | − | − |

YAGI Hiroto (piroto@a-net.email.ne.jp)
twitter http://twitter.com/pppiroto
Copyright© 矢木 浩人 All Rights Reserved.