[發明專利]在頁級跟蹤重做完成在審
| 申請號: | 201210071285.9 | 申請日: | 2012-03-16 |
| 公開(公告)號: | CN102708143A | 公開(公告)日: | 2012-10-03 |
| 發明(設計)人: | R·D·達曼卡;H·R·科達瓦拉 | 申請(專利權)人: | 微軟技術許可有限責任公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 羅婷婷 |
| 地址: | 美國華*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 跟蹤 重做 完成 | ||
1.在包括至少一個處理器和存儲器的計算機系統中,一種用于在數據庫或數據庫系統的故障后在恢復期間實現過渡重做階段的計算機實現的方法,所述計算機系統被包括在包括多個其他計算系統和至少一個數據庫服務器的計算機聯網環境中,所述過渡重做階段允許在提供完全恢復的最終重做階段之前至少對所述數據庫的限制性訪問,所述方法包括以下動作:
在檢測到數據庫服務器處的數據庫故障后,通過掃描數據庫事務日志以標識臟頁來啟動數據庫恢復的分析階段,所述臟頁表示具有由于所述數據庫故障而未經處理的數據事務的頁;
構建所標識的臟頁的表;
使用一個或多個預定標準來分析所標識的臟頁的表以確定所標識的臟頁的表中的哪些臟頁將在最終重做階段期間提供的完全恢復之前在所述過渡重做階段期間被優先處理,所標識的臟頁的表中的所有其他臟頁面將在所述最終重做階段時被處理;
在到達所述最終重做階段之前在所述過渡重做階段期間處理優先的臟頁;以及
在系統事務重做階段的完成之際,其中所述系統重做階段的完成對應于優先的臟頁中的所有未經處理的數據事務的完成:
使得在所述過渡重做階段期間處理的具有現在已完成的數據事務的先前優先的臟頁對數據庫用戶可用;
使得未受所述數據庫故障影響的任何其他頁對數據庫用戶可用;以及
啟動所述最終重做階段以針對不優先的任何剩下的臟頁完成完全數據庫恢復,使得具有現在已完成的數據事務的所有先前優先的臟頁以及未受所述數據庫故障影響的任何其他頁都可被數據庫用戶在所述最終重做階段期間訪問。
2.如權利要求1所述的方法,其特征在于,在頁級跟蹤數據恢復,使得正在所述最終重做階段中進行處理的不優先的任何剩下的臟頁只是被阻塞直到每一這樣的頁已重做的為止,其中至少一些完成的頁隨后被釋放,以供數據庫用戶在所述最終重做階段完成之前訪問。
3.如權利要求1所述的方法,其特征在于,還包括向所標識的臟頁的表中與在所述過渡重做階段期間要處理的各優先的臟頁相對應的條目添加標記。
4.如權利要求3所述的方法,其特征在于,還包括實例化一事件,該事件被配置為等待所標識的臟頁的表中沒有被標記并由此被調度用于在所述最終重做階段期間進行處理的任何剩下的臟頁。
5.如權利要求3所述的方法,其特征在于,還包括使用所添加的標記來創建要在所述過渡重做階段期間處理的優先的臟頁的鏈表。
6.如權利要求1所述的方法,其特征在于,還包括確定哪些頁是系統事務重做所必需的。
7.如權利要求6所述的方法,其特征在于,還包括標記要在所述系統事務重做階段內處理的那些優先的臟頁,其中所述標記指示這些優先的臟頁要被處理以便完成所述過渡重做階段。
8.如權利要求1所述的方法,其特征在于,要在所述過渡重做階段期間處理的優先的臟頁包括已被訪問了閾值次數的優先數據頁。
9.如權利要求8所述的方法,其特征在于,所述優先數據頁包括以下各項中的至少一項:系統事務頁、事務日志、分配映射和工作量頻繁訪問的任何其他頁。
10.如權利要求1所述的方法,其特征在于,所標識的臟頁的表中不優先的并由此被調度用于在所述最終重做階段期間進行處理的任何剩下的臟頁在被訪問之前被鎖存,使得在所述最終重做階段期間,如果頁正在等待被重新處理或者如果重做沒有完成,則用戶請求被阻塞直到所述最終重做階段完成處理所請求的頁為止。
11.一種存儲指令的計算機可讀存儲介質,所述指令在被執行時使得計算機執行如權利要求1-10中的任一項所述的方法。
12.一種用于在數據庫或數據庫系統故障后在恢復期間實現過渡重做階段的系統,所述過渡重做階段允許在提供完全恢復的最終重做階段之前至少對所述數據庫的限制性訪問,所述系統包括:
用于在檢測到數據庫服務器處的數據庫故障后,通過掃描數據庫事務日志以標識臟頁來啟動數據庫恢復的分析階段的裝置,所述臟頁表示具有由于所述數據庫故障而未經處理的數據事務的頁;
用于構建所標識的臟頁的表的裝置;
用于使用一個或多個預定標準來分析所標識的臟頁的表以確定所標識的臟頁的表中的哪些臟頁將在最終重做階段期間提供的完全恢復之前在所述過渡重做階段期間被優先處理的裝置,所標識的臟頁的表中的所有其他臟頁面將在所述最終重做階段時被處理;
用于在到達所述最終重做階段之前在所述過渡重做階段期間處理優先的臟頁的裝置;以及
在系統事務重做階段的完成之際,其中所述系統重做階段的完成對應于優先的臟頁中的所有未經處理的數據事務的完成:
用于使得在所述過渡重做階段期間處理的具有現在已完成的數據事務的先前優先的臟頁對數據庫用戶可用的裝置;
用于使得未受所述數據庫故障影響的任何其他頁對數據庫用戶可用的裝置;以及
用于啟動所述最終重做階段以針對不優先的任何剩下的臟頁完成完全數據庫恢復,使得具有現在已完成的數據事務的所有先前優先的臟頁以及未受所述數據庫故障影響的任何其他頁都可被數據庫用戶在所述最終重做階段期間訪問的裝置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟技術許可有限責任公司,未經微軟技術許可有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210071285.9/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種電控鎖用密碼開鎖機構
- 下一篇:治療水腫的土茯苓中藥湯劑及制備方法





