[發明專利]一種檢測磁盤的方法和裝置有效
| 申請號: | 201510051825.0 | 申請日: | 2015-01-30 |
| 公開(公告)號: | CN104572380B | 公開(公告)日: | 2017-11-10 |
| 發明(設計)人: | 文中領;張書寧;徐旸;劉友生;吳慶民 | 申請(專利權)人: | 浪潮(北京)電子信息產業有限公司 |
| 主分類號: | G06F11/22 | 分類號: | G06F11/22 |
| 代理公司: | 北京安信方達知識產權代理有限公司11262 | 代理人: | 王康,李丹 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 檢測 磁盤 方法 裝置 | ||
技術領域
本發明涉及計算機數據存儲技術,尤指一種檢測磁盤的方法和裝置。
背景技術
廉價冗余磁盤陣列(RAID,Redundant Arrays of Inexpensive Disks)是David A.Patterson等人在前人研究工作的基礎之上提出的概念。RAID包含有多個機械磁盤和用于實現數據訪問的管理模塊。由于RAID技術實現磁盤的并發訪問,RAID能給存儲系統提供更高的性能,并提供一定的數據保護作用,但是隨著機械磁盤存儲容量的不斷變大,數據承載量的增加,RAID的可靠性變得越來越低,數據丟失的風險越來越大。
因此,需要對RAID內的磁盤進行檢測。現有的檢測方法大致包括:
對于RAID內的每一個磁盤,預留一部分磁盤空間作為備用扇區區域,并用磁盤空間最末端的一塊區域存放磁盤數據格式(DDF,Disk Data Format)的RAID信息,備用扇區區域中預留了若干地址連續的扇區作為備用扇區,用來在磁盤上產生壞扇區時進行重映射,備用扇區按照邏輯塊尋址模式(LBA,Logical Block Addressing)從小到大進行排序,被分配使用時按照排序結果依次進行。管理模塊周期性檢測各磁盤是否存在壞扇區,若存在壞扇區則將壞扇區中的數據保存到備用扇區區域中,并保存壞扇區的地址和備用扇區區域中保存該壞扇區中的數據的扇區的地址之間的對應關系。
現有的檢測方法中,由于管理模塊在進行磁盤檢測時按塊的順序對每一個扇區進行檢測,對磁盤的訪問頻率較高,影響業務的概率較大。
發明內容
為了解決上述問題,本發明提出了一種檢測磁盤的方法和裝置,能夠降低對磁盤的訪問頻率。
為了達到上述目的,本發明提出了一種檢測磁盤的方法,包括:
對當前的扇區進行檢測,若檢測到當前的扇區正常,則計算當前的扇區的扇區標識和當前步長之間的和值;
判斷出計算得到的和值大于或等于1且小于或等于廉價冗余磁盤陣列RAID的總扇區數,將扇區標識為計算得到的和值的扇區作為當前的扇區繼續執行對當前的扇區進行檢測的步驟;
當判斷出連續檢測到扇區正常的次數大于或等于預設次數,且當前步長大于0時,將當前步長調大后繼續執行計算當前的扇區的扇區標識和當前步長之間的和值的步驟。
優選地,當檢測到所述當前的扇區異常時,該方法還包括:
修復所述當前的扇區;判斷出所述當前步長大于0,將所述當前步長調整為起始跳躍幅度繼續執行所述計算當前的扇區的扇區標識和當前步長之間的和值的步驟。
優選地,當判斷出所述當前步長小于0時,該方法還包括:
將所述當前步長調整為起始跳躍幅度的負數繼續執行所述計算當前的扇區和扇區標識和當前步長之間的和值的步驟。
優選地,當判斷出檢測到的所述RAID的磁盤中的扇區異常的數量大于或等于預設閾值時,該方法還包括:
將扇區異常的數量大于或等于預設閾值的磁盤中的所有數據遷移到新的磁盤中,根據所述新的磁盤的磁盤標識更新管理模塊中磁盤標識和扇區標識之間的對應關系。
優選地,當判斷出連續檢測到扇區正常的次數大于或等于預設次數,且所述當前步長小于0時,該方法還包括:
將所述當前步長調小后繼續執行所述計算當前的扇區的扇區標識和當前步長之間的和值的步驟。
優選地,當判斷出所述計算得到的和值大于所述RAID的總扇區數時,該方法還包括:
將扇區標識為所述RAID的總扇區數的扇區作為所述當前的扇區,將起始跳躍幅度的負數作為所述當前步長繼續執行所述對當前的扇區進行檢測的步驟。
優選地,當判斷出所述計算得到的和值小于1時,該方法還包括:
將第1個扇區作為所述當前的扇區,將起始跳躍幅度作為所述當前步長繼續執行所述對當前的扇區進行檢測的步驟。
本發明還提出了一種檢測磁盤的裝置,至少包括:
檢測模塊,用于對當前的扇區進行檢測,將檢測結果發送給計算模塊;在第一判斷結果為計算得到的和值大于或等于1且小于或等于廉價冗余磁盤陣列RAID的總扇區數時,將扇區標識為計算得到的和值的扇區作為當前的扇區繼續對當前的扇區進行檢測;
計算模塊,用于在檢測結果為當前的扇區正常時,計算當前的扇區的扇區標識和當前步長之間的和值;在第二判斷結果為檢測到扇區正常的次數大于或等于預設次數,且當前步長大于0時,將當前步長調大后繼續執行計算當前的扇區的扇區標識和當前步長之間的和值的步驟;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮(北京)電子信息產業有限公司,未經浪潮(北京)電子信息產業有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510051825.0/2.html,轉載請聲明來源鉆瓜專利網。





