總結一下,實現Durability可以透過記錄Redo資訊或要求Force刷盤順序,實現Atomic需要記錄Undo資訊或要求No-Steal刷盤順序,組合得到如下四種模式,如下圖所示:ARIES,一統江湖1992年,IBM的研究員們發表了
6 總體效能最佳化的建議根據以上敘述,為了提升資料庫的整體寫入效能,有以下幾點建議:將所有元資料的存放目錄以及Redo Log存放目錄配置到ssd上,有條件的情況下使用工業級ssd
圖中綠色部分是可以寫入Redo log地方,每次寫入,write pos指標會順時針推進,當然基本不會與check point指標重合,因為MySQL有這種機制去實現,每次觸發檢查點checkpoint,check point會指標向前推進
rollback未提交的事務以Oracle為例,在提交以前,事物所修改的資料先在記憶體裡, redo log buffer, 這個快取每三秒寫一次硬碟,或者1/3滿了也刷硬碟,這樣可以提高效能
在 BP緩衝池 的 Lru list中old區的midpont中對該資料頁的行記錄的欄位值做更新操作,並把修改之後的欄位值寫入到redo log buffer中並給LSN加上當前redo log寫入的長度(寫入長度為 length 的red