[發明專利]一種磁盤陣列的數據重建方法有效
| 申請號: | 200810047977.3 | 申請日: | 2008-06-11 |
| 公開(公告)號: | CN101329641A | 公開(公告)日: | 2008-12-24 |
| 發明(設計)人: | 馮丹;陳儉喜;曾令仿;吳素貞;毛波;龐麗萍 | 申請(專利權)人: | 華中科技大學 |
| 主分類號: | G06F11/14 | 分類號: | G06F11/14 |
| 代理公司: | 華中科技大學專利中心 | 代理人: | 方放 |
| 地址: | 430074湖北*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 磁盤陣列 數據 重建 方法 | ||
技術領域
本發明屬于計算機數據存儲方法,具體涉及一種磁盤陣列的數據重建方法。
背景技術
隨著計算機技術和網絡通信技術的發展,信息化程度越來越高,人們對數據可靠性的要求也越來越高。磁盤陣列RAID(Redundant?Array?ofIndependent?Disks)是可靠存儲系統領域中的一個典型裝置,同單個磁盤相比,磁盤陣列的性能、可用性和可靠性都有相當大的提高,其中,鏡像、奇偶校驗、熱備份等都是磁盤陣列常用的容錯技術。當磁盤陣列中某一個成員磁盤出現故障且加入新磁盤時,磁盤陣列能夠自動切換到重建模式,重建進程在不中斷應用服務的情況下連續將故障盤上的數據塊重建到新加入的磁盤中,直到故障盤上所有的數據塊都恢復到新加入的磁盤中,磁盤陣列返回到正常讀寫模式。由于當前的應用服務都要求所使用的存儲子系統同時具有高性能、高可用性和高可靠性,應用程序不僅要求磁盤陣列在成員磁盤出現故障時能夠重建故障盤上的數據,更重要的是其能夠盡可能的減少重建時間來保證系統的可靠性,并且要盡可能的降低重建過程對系統性能的影響,因此磁盤陣列的數據重建方法至關重要。
近幾年,隨著計算機技術的不斷發展,磁盤容量越來越大,而磁盤定位速度的增長卻遠遠低于磁盤容量和帶寬的增長速度。研究表明,磁盤容量以每年60%的速度增長,帶寬每年增長40%,而磁盤的尋道時間和旋轉等待延遲每年才減少8%。另外,還有研究顯示,順序地讀取容量為1~10TB的磁盤上的所有內容需要5~15小時,而如果是隨機地讀取則需要15~150天。實驗發現在I/O訪問頻繁時,對于磁盤陣列級別5,重建一個500GB的磁盤需要幾天的時間。這些研究和實驗都表明,隨著磁盤容量的迅速增長和訪問速度的緩慢提高,磁盤陣列的數據重建過程需要越來越多的時間,嚴重影響了基于磁盤陣列的存儲系統的可靠性和可用性。
現有的Linux操作系統內核中磁盤陣列控制軟件的數據重建方法,即使有大量的磁盤空間自磁盤陣列創建以來都沒有被使用過,重建過程也都必須讀取所有工作盤上的數據塊,計算校驗后將結果寫入新加入的磁盤中,如此一來,重建過程需要過多的時間,影響了存儲系統的讀寫性能和可靠性。
發明內容
本發明提出一種磁盤陣列的數據重建方法,解決現有的磁盤陣列數據重建方法需要時間過多、影響存儲系統的讀寫性能和可靠性的問題。
本發明的一種磁盤陣列的數據重建方法,磁盤陣列上設置主控模塊、讀寫處理模塊和重建模塊,包括初始化、日志位圖表更新、基于日志的重建和結束步驟;其特征在于:
(1)初始化步驟,順序進行下述過程:
(1.1)根據用戶指令,打開已有磁盤陣列或創建新磁盤陣列;
(1.2)主控模塊創建該磁盤陣列的日志位圖表,日志位圖表的每一位對應磁盤陣列的一個條帶;
(1.3)主控模塊判斷該磁盤陣列是否為創建的新磁盤陣列,是則轉過程
(1.4),否則轉過程(1.5);
(1.4)主控模塊將其日志位圖表中所有位均初始化為0,且將磁盤陣列中所有成員磁盤上的數據塊全部初始化為0,進行步驟(2);
(1.5)主控模塊讀取存放于該磁盤陣列成員磁盤超級塊中的日志位圖表信息到內存中以便對其實時修改,進行步驟(2);
(2)日志位圖表更新步驟,進行下述過程:
(2.1)該磁盤陣列等待上層命令,并判斷其是否為寫請求,是則轉過程
(2.2),否則轉過程(2.4);
(2.2)接收到寫請求,讀寫處理模塊將該寫請求所對應磁盤陣列的條帶在日志位圖表中對應的位更新為1,標明該條帶已被訪問過;
(2.3)讀寫處理模塊將該寫請求發向底層磁盤設備,將寫請求的數據寫入磁盤陣列成員磁盤的正確位置,轉過程(2.1);
(2.4)接收到讀請求,讀寫處理模塊將該讀請求發向底層磁盤設備,從磁盤陣列成員磁盤的正確位置讀取數據,轉過程(2.1);
(3)基于日志的重建步驟,當主控模塊發現磁盤陣列成員磁盤出現故障時,進行下述過程:
(3.1)重建模塊判斷磁盤陣列某一條帶在日志位圖表中對應的位是否為0,是則轉過程(3.2),否則轉過程(3.3);
(3.2)該條帶從未被訪問過,向新加入的替換磁盤中位于該條帶的數據塊內全部寫入0,轉過程(3.4);
(3.3)該條帶已被訪問過,讀取所有工作盤上位于該條帶的數據塊,計算校驗后將結果寫入新加入的替換磁盤中位于該條帶的數據塊內,轉過程(3.4);
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華中科技大學,未經華中科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810047977.3/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





