Undo Log
アンドゥログは変更前イメージを記録し、トランザクションのロールバックと古いバージョンの MVCC 読み取りに使われ、原子性と独立性を保証する。
目的
トランザクションのロールバックと多版読み取りの実装を理解し、ロールバック性能を分析する。
メカニズム
行を変更する前にアンドゥログ(旧値)を書く。ロールバックはアンドゥログに従って旧値を復元する。MVCC では、アンドゥチェーンがスナップショット読み取りに履歴バージョンを提供する。PostgreSQL はロールバックセグメント(旧)またはアンドゥログ(新)を使う。
ユースケース
- トランザクションのロールバック設計
- MVCC のバージョンチェーン
- アトミック性の実装