檢查點

檢查點種類包含四種,分別為MMDB的檢查點、非失真檢查點、失真檢查點和日誌驅動檢查點。

基本介紹

  • 中文名:檢查點
  • 外文名:Check point
檢查方式,資料庫恢復技術中定義,MMDB的檢查點(Checkointing),非失真檢查點(No一fuzzy Checkpointing),失真檢查點(Fuzzy Checkpointing),日誌驅動檢查點(Log一DrivenCheckpointing),

檢查方式

軟體開發的項目中,在規定的時間間隔內對項目進行檢查,比較實際與計畫之間的差異,並根據差異進行調整,一般每周一到二次。

資料庫恢復技術中定義

具有檢查點的恢復技術:在日誌檔案中增加一類新的記錄--檢查點記錄(checkpoint),增加一個重新開始檔案,並讓恢復子系統在登錄日誌檔案期間動態地維護日誌。
這樣做的原因: 一、 利用日誌技術進行資料庫恢復時,需要檢查所有日誌記錄。存在兩個問題:
一是搜尋整個日誌將耗費大量的時間。
二是需要REDO處理很多已經將操作結果寫到資料庫中的操作,浪費了大量時間。
二、檢查點記錄的內容包括:
1.建立檢查點時刻所有正在執行的事務清單。
2.這些事務最近一個日誌記錄的地址。
三、在檢查點維護日誌檔案
1. 將當前日誌緩衝區中的所有日誌記錄寫入磁碟的日誌檔案上。
2. 在日誌檔案中寫入一個檢查點記錄。
3. 將當前數據緩衝區的所有數據記錄寫入磁碟的資料庫中。
4. 把檢查點記錄在日誌檔案中的地址寫入一個重新開始檔案。

MMDB的檢查點(Checkointing)

快速的恢復高度依賴於最近檢查點(Pu一to一daet)的存在。檢查點減少了在MMDB崩潰後系統重啟時所要做的恢復工作量。另一方面,檢查點也影響著資料庫的處理性能一一尤其是在大容量記憶體環境下。總不希望在檢查點在執行的時候,暫停其他事務的執行。檢查點算法需要精心地設計,使得它即對事務的正常處理影響很小,又要在系統崩潰的時候能夠有效地恢復系統。MMDB系統的檢查點與DRDB系統的檢查點不同。DRDB的檢查點的設計思想是在一個時間點上,讓未提交的事務和己提交的事務保證其日誌記錄都被回寫到磁碟上。而MMDB的檢查點的設計思想是在一個時間點上,將記憶體中的整個資料庫或者部分資料庫的數據回寫到磁碟上,或者以其他的方式,形成在這個時間點上對資料庫數據的一個鏡象備份。在MMDB的檢查點技術可以分為三類:非失真檢查點(No一Fuzzzy eheckpointing)、失真檢查點(FuzzyCheekpointing)和日誌驅動檢查點(Log一DrivenCheckpointing)。

非失真檢查點(No一fuzzy Checkpointing)

非失真檢查點的策略通常都會給事務的處理帶來額外的開銷;〕這些開銷主要來自非失真檢查點策略需要為被檢查的數據對象加鎖來保持事務的一致性。可以用多種不同的策略可以選擇。

失真檢查點(Fuzzy Checkpointing)

MMDB中的失真檢查點F(uzyzChecPkointnig)策略是指檢查點程式在對數據做操作時,不需要對數據對象上鎖。檢查點程式和其他事務並發執行,檢查點程式每次只將資料庫的一部分髒數據頁回寫到磁碟上。檢查點程式通過向系統日誌中寫入日誌記錄,來和其他事務保持同步。

日誌驅動檢查點(Log一DrivenCheckpointing)

在失真檢查點和非失真檢查點中需要將記憶體資料庫整個或者部分地複製到磁碟上,而日誌驅動檢查點則是在前一次檢查點所產生的資料庫鏡象的基礎上,根據日誌更新該鏡象,產生新的鏡象。這種檢查點策略能夠適用於將資料庫鏡象備份到遠程主機上。因為日誌的數據量小於資料庫的大小,更加利於網路傳輸。每次做檢查點時,將日誌傳送給遠程主機,然後在遠程主機上根據日誌回放更新動作,產生出新的數據鏡象。但是,這種策略也有缺陷,如果MMDB在事務吞吐量很大的情況下,會產生出大量的日誌記錄。這些日誌將頻繁地驅動檢查點程式更新位於磁碟上的備份數據鏡象,牽涉到大量的磁碟1/0操作,因而會嚴重降低檢查點程式的效率。如果在事務吞吐量很大的情況下,能夠控制住日誌產生的數量,日誌驅動檢查點仍是一種不錯的檢查點策略。本章後半部分所提出的“恢復模型”,其中的檢查點策略就屬於日誌驅動檢查點。

相關詞條

熱門詞條

聯絡我們