記事ディレクトリ
仕事関連
その前に、簡単なレビューをします。
トランザクションの 4 つの特徴:
- 原子性: トランザクションは分割できず、すべてが実行されるか、まったく実行されないかのどちらかです。
- 一貫性: トランザクションの実行前後で、データの整合性は一貫しています。つまり、変更前と変更後のデータの総量はほぼ同じです。
- 分離: トランザクションの実行中、他のトランザクションによって妨げられることはありません。
- 耐久性: トランザクションが終了すると、データベースへの影響は永続的になります。データはデータベースに保存されます。
同時シナリオにおけるトランザクションの一般的な問題:
- ダーティ リード: トランザクション A がトランザクション B のコミットされていないデータを読み取ると、トランザクション B がロールバックされ、トランザクション A によって読み取られたデータがダーティ データになります。
- 非反復読み取り: トランザクション A が初めてデータを読み取り、トランザクション B がデータを変更して送信します。