[發明專利]廉價磁盤冗余陣列RAID5卷快速擴容方法無效
| 申請號: | 200810102893.5 | 申請日: | 2008-03-28 |
| 公開(公告)號: | CN101251789A | 公開(公告)日: | 2008-08-27 |
| 發明(設計)人: | 鄭緯民;舒繼武;張廣艷;薛巍 | 申請(專利權)人: | 清華大學 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100084北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 廉價 磁盤 冗余 陣列 raid5 快速 擴容 方法 | ||
技術領域
廉價磁盤冗余陣列RAID5卷快速擴容方法屬于計算機信息存儲技術領域,尤其涉及外存儲設備的高性能、高可靠、高可擴展的優化組織技術領域。
背景技術
RAID5卷擴容是指向現有RAID5卷中增加磁盤,這樣既可以提高它的I/O性能,也可以擴大它的存儲容量。RAID5卷擴容使得RAID5卷能夠更好地動態滿足應用需求。因為宕機成本極高,擴容中的RAID5卷必須一邊重分布數據,一邊處理應用I/O請求。數據重分布和應用I/O共享甚至競爭系統的I/O資源,使得執行RAID5卷擴容是個技術挑戰。
目前只有少數幾個RAID5卷擴容方法,它們存在如下幾個共同缺陷:第一,它們發起很小的重分布I/O,導致數據重分布和應用I/O之間的相互干擾很大;第二,為保證數據一致性,它們頻繁更新元數據,進而引起頻繁尋道開銷;第三,它們使用非自適應的速率控制,要么極大降低應用性能,要么嚴重遏制數據重分布的速度。這些缺陷導致現有RAID5卷擴容方法效率都不高,直接而又嚴重地影響了RAID5卷的性能、擴展性和可靠性。
基于分析RAID5卷擴容過程中的數據重分布特點,提出了一整套新的RAID5卷快速擴容方法,有效地解決了上述問題。
發明內容
本發明的目的在于提供一個能夠全面滿足數據重分布速度目標和應用I/O性能需求的高效率的RAID5卷擴容方法,實現RAID5卷的在線快速擴容。本發明的重點是:數據重分布I/O的聚合機制、元數據的懶惰更新技術以及基于邏輯閥的速率控制方法。
本發明的特征在于:數據重分布I/O聚合訪問,不改變遷移數據量,卻大幅減少重分布I/O個數;元數據懶惰更新,保證數據可靠性,同時顯著降低元數據更新次數;監測應用負載并用邏輯閥控制重分布速率,統計上保證應用I/O性能,并動態最大化數據重分布速度。
數據重分布I/O的一般作法是按照邏輯上的順序性進行的,即:數據塊0,數據塊1,數據塊2,……,而不管這些數據塊在磁盤上是如何分布的。考慮到數據塊在磁盤上的分布特征,本方法將數據重分布I/O由邏輯上的順序改變為在磁盤上物理分布的順序,通過單個I/O訪問多個物理上連續的數據塊,從而增加數據重分布I/O的大小,同時減少其個數。
現有RAID5卷擴容方法為了保證數據可靠性頻繁更新元數據,要么每移動一個數據塊更新一次元數據,要么每移動一個小數據窗口更新一次元數據。本方法持續地重分布數據而不更新元數據,直到對數據可靠性的威脅出現時才更新元數據。一方面,元數據的懶惰更新顯著減少了元數據的更新次數,另一方面,元數據的懶惰更新嚴格保證了數據可靠性。
現有擴容方法采用非自適應的速率控制,難以全面滿足數據重分布速度和應用I/O性能兩個需求。本方法監測RAID5卷所承擔的負載,自適應地用一個簡單邏輯閥來調控數據遷移速率。當負載較輕時執行數據重分布,而當應用負載較重時扼殺數據重分布。這樣可以自適應地全面滿足數據重分布速度和應用I/O性能兩個需求。
所述方法是在有廉價磁盤冗余陣列功能的主機或陣列系統上依次按以下步驟實現的:
步驟(1):數據塊的聚合訪問
步驟(1.1):以異步I/O操作方式同時通過單個I/O操作讀取多個在m塊磁盤物理分布上連續的數據塊,并存入內存;
步驟(1.2):把n塊磁盤加入一個由m塊磁盤組成的RAID5卷中時,調整數據塊指針來實現數據塊的重新分布:擴容前,一個數據塊x分布在第x?mod?m號磁盤的第x/m塊物理數據塊上,擴容后分布在第x?mod(m+n)號磁盤的第x/(m+n)塊物理數據塊上;
步驟(1.3):計算機計算新的數據組織的校驗數據塊;
步驟(1.4):以異步I/O操作方式同時通過單個I/O操作寫入在步驟(1.2)所述的物理分布上連續的數據塊;
步驟(2):元數據的懶惰更新
步驟(2.1):一旦聚合窗口中的所有數據塊都已經移動完,聚合窗口向前滑動一個聚合窗口大小,所述的聚合窗口是指通過一組異步I/O操作讀進內存的數據塊集合,而滑動窗口用來描述RAID5卷上一段連續空間的映射信息;
步驟(2.2):元數據不被更新,直到下面兩個狀態之一出現時,更新元數據:
當聚合窗口到達當前滑動窗口邊界時,更新元數據并且初始化一個新的滑動窗口,
當一個用戶寫請求到達一個地址區域,但所述的地址區域的數據已經移動但元數據尚未更新時,更新元數據,而且初始化一個新的滑動窗口,此時才服務用戶寫請求;
步驟(2.3):直到第一個聚合窗口中的所有數據塊都已被移動,數據重分布狀態切換到初始狀態;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于清華大學,未經清華大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200810102893.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種節能燈園排機
- 下一篇:烷氧基化的胺在改進木材防水性中的應用





