Oracle恢複內部原理:各式各樣的恢複特性

來源:互聯網
上載者:User

10.1  並行恢複(v7.1)

並行恢複的目標是用計算和I/O的並行機制減少崩潰恢複、單一實例恢複和介質恢複的時間。當多個磁碟上多個資料檔案同時進行恢複時能有效降低恢復。

10.1.1  並行恢複架構

並行恢複分區做兩件事:

1. 讀重做日誌。

2. 應用改變向量。

步驟1不適合并行,重做日誌必須按順序讀取,然後在介質恢複中合并。因此這個任務由一個進程完成:讀重做日誌的進程

步驟2很適合并行,因此應用改變向量的任務就委託給一組重做程式的從屬進程。重做日誌讀取進程將改變向量發送給重做程式從屬進程,用的是跟並行查詢中同樣的 IPC機制(進程間通訊機制)。改變向量使用HASH函數利用資料區塊地址做參數來分布。因此每個重做程式 進程只處理分配到它的“桶”裡的改變向量。重做程式從屬進程負責將資料區塊讀入到緩衝中,檢查是否要應用改變向量,如果需要就應用。

這個架構達到了資料區塊讀取I/O和改變向量應用過程中的並行。它允許日誌讀取I/O和資料區塊讀取I/O可以並行進行。此外,它還允許不同HASH桶中的資料區塊的讀取I/O可以並行進行。只要並行帶來的好處比進程管理和通訊帶來的成本大就有效縮減了恢複用的時間。

10.1.2  並行恢複系統初始化參數

PARALLEL_RECOVERY_MAX_THREADS

PARALLEL_RECOVERY_MIN_THREADS

這兩個參數控制崩潰恢複或者介質恢複中重做程式從屬進程的數量。

PARALLEL_INSTANCE_RECOVERY_THREADS

這個參數控制執行個體恢複中重做程式從屬進程的數量。

10.1.3  介質恢複文法變化

RECOVER DATABASE命令新增了一個選擇性參數用來指定重做程式從屬進程的數量。如果指定了該參數,將覆蓋預設參數PARALLEL_RECOVERY_MAX_THREADS的值。

RECOVER TABLESPACE命令新增了一個選擇性參數用來指定重做程式從屬進程的數量。如果指定了該參數,將覆蓋預設參數PARALLEL_RECOVERY_MIN_THREADS的值。

RECOVER DATAFILE命令新增了一個可選的參數用來指定重做程式從屬進程的數量。如果指定了該參數,將覆蓋預設參數PARALLEL_RECOVERY_MIN_THREADS的值。

查看本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.