Steal/No-Steal と Force/No-Force
Steal / No-Steal とは
コミットされていない更新をディスク上のDBに反映するか否か
Steal
- データを段階的にディスクに書き込むのを許す
- Undo Loggingが必要
- 大きいバッファ空間必要
No-Steal
- コミット前は更新をDBに書き込まずに全データを一度に書き込む
Force / No - Forceとは
コミット前に全ての更新をDBに反映するか否か
Force
- コミットする前に全てのDBをすぐに更新
No-Force
- DBを更新しなくても良い
- Redo Logging が必要
- ディスク書き込み頻度高い(オーバーヘッドが大きいということ)
memo
世の中のDBはSteal and No-Forceがほとんど。 データを保存するディスクと、ログを保持するディスクがある。 メモリのB+ treeはキャッシュであり、WriteBackする。
*コミットとは
トランザクション(=メモリからディスク(DB)への書き込み)の完了
参考資料
http://www.tkl.iis.u-tokyo.ac.jp/top/modules/lecnote4/materials/2006/data_engineering_11_2.ppt