Shadow Paging
シャドウページングはコピーオンライト技術である。変更は新しいページ複製に書き込まれ、ページテーブルのポインタを原子的に切り替えることで、ログ不要のクラッシュ復旧を可能にする。
目的
WAL を使わない復旧機構の代替を理解し、LMDB などの組込みデータベースで活用する。
メカニズム
変更時にはページを新しい場所へ複製し、シャドウページテーブルを更新する。コミット時にシャドウページテーブルのポインタを(単一の原子的書き込みで)切り替える。古いページは再利用できる。WAL が不要な一方、書き込み増幅が大きく小規模データベース向きである。
ユースケース
- 組込みデータベースの設計
- ログ不要の復旧
- コピーオンライト