TW201329701A - 具有自動重映射功能的磁碟陣列及其自動重映射方法 - Google Patents

具有自動重映射功能的磁碟陣列及其自動重映射方法 Download PDF

Info

Publication number
TW201329701A
TW201329701A TW101130991A TW101130991A TW201329701A TW 201329701 A TW201329701 A TW 201329701A TW 101130991 A TW101130991 A TW 101130991A TW 101130991 A TW101130991 A TW 101130991A TW 201329701 A TW201329701 A TW 201329701A
Authority
TW
Taiwan
Prior art keywords
disk array
data
damaged
read
disk
Prior art date
Application number
TW101130991A
Other languages
English (en)
Inventor
Tun-Hong Tu
Kuei-Huan Chen
Original Assignee
Synology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Synology Inc filed Critical Synology Inc
Publication of TW201329701A publication Critical patent/TW201329701A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/1088Reconstruction on already foreseen single or plurality of spare disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/41Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title
    • G11B2220/415Redundant array of inexpensive disks [RAID] systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

於磁碟陣列(RAID)執行自動重映射的方法,包含根據一讀取命令執行一讀取操作以由該磁碟陣列之一磁碟讀取資料,及當在執行該讀取操作時發現該資料位於一損壞磁區,重映射該損壞磁區之位置至該磁碟之一未使用之正常磁區。

Description

具有自動重映射功能的磁碟陣列及其自動重映射方法
本發明係關於一種磁碟陣列(RAID),尤指一種具有自動重映射功能的磁碟陣列及一種於磁碟陣列執行自動重映射的方法。
磁碟陣列具有可修復性,即當磁碟陣列中的一個磁碟損壞時,磁碟陣列會進入降級模式,此時便可以更換損壞的磁碟,且用更換後的磁碟執行修復步驟。
磁碟陣列的修復係藉由讀取磁碟陣列中一個正常磁碟的正確資料後,根據正確資料計算出損壞磁碟中遺失的資料,最後將計算後的資料結果寫入更換後的磁碟。磁碟陣列的一種特性為當寫入資料到磁碟陣列時,資料會同時寫入到磁碟陣列中的所有磁碟。磁碟陣列會建立一資料條帶(data stripe),其具有對應於磁碟陣列中所有磁碟的數目的欄位(column)。寫入磁碟陣列的資料會先被分配到資料條帶中的所有欄位,再寫入所有欄位對應的所有磁碟。在級數1(RAID1)以上的磁碟陣列,資料條帶會保留一個欄位以儲存一奇偶檢查位元,而在級數6(RAID6)的磁碟陣列,資料條帶會保留二個欄位。按照上述寫入資料時的特性,如果在資料條帶中的任一欄位有資料遺失,磁碟陣列可以根據資料條帶上其他欄位的資料及奇偶檢查位元計算出遺失的資料。如果遺失的資料正好為奇偶檢查位元, 磁碟陣列可以重新計算出奇偶檢查位元。因此,當磁碟陣列中的一個磁碟損壞時,即使損壞磁碟上的資料遺失,磁碟陣列仍然可以讀取資料條帶上的其他資料以計算出資料條帶上對應於損壞磁碟所遺失的資料,並將計算出的資料寫入更換後的磁碟以修復處於降級模式的磁碟陣列。
如果在資料條帶上遺失資料之欄位的數目超過可允許的數目,例如級數1的磁碟陣列的資料條帶上有超過一個欄位的資料遺失或級數6的磁碟陣列的資料條帶上有超過二個欄位的資料遺失,則磁碟陣列就無法計算出遺失的資料。舉例來說,當修復處於降級模式級數1(Degraded RAID 1)的磁碟陣列時,若有一個欄位的資料已經遺失(因為此欄位對應的磁碟已損壞),之後在正常磁碟讀取資料的過程中又發現另一損壞磁區,形成二個欄位的資料遺失,則資料條帶便無法修復遺失的資料,此時磁碟陣列會由降級模式進入故障模式。
一旦磁碟陣列進入故障模式,使用者便無法由磁碟陣列讀取資料,也就是使用者會失去所有儲存在磁碟陣列中的資料。使用者起初修復磁碟陣列的目的是恢復對資料的保護,並且用以降低檔案損壞或遺失的危險。現在卻變成在修復前,使用者尚不會損壞或遺失檔案,但在修復過程中使用者卻會有失去所有資料的危險,這是使用者不該承擔的危險。
本發明的一實施例揭露一種於磁碟陣列(RAID)執行自動重映射的方法,包含根據一讀取命令執行一讀取操作以由該磁碟陣列之一磁碟讀取資料,當在執行該讀取操作時發現該資料位於一損壞磁區,重映射該損壞磁區之位置至該磁碟之一未使用之正常磁區。
本發明的另一實施例揭露一種回報磁碟陣列之損壞磁區的方法,包含根據一讀取命令執行一讀取操作以由該磁碟陣列之一磁碟讀取資料,當在執行該讀取操作時發現該資料位於一損壞磁區,回報該損壞磁區之位置。
本發明的另一實施例揭露一種具有自動重映射功能的磁碟陣列,包含複數個磁碟、一韌體,用以於執行一讀取操作的過程中在該複數個磁碟中之一磁碟發現一損壞磁區時,重映射該損壞磁區的位置。
如以上實施例所述,消除了使用者在僅有一磁區損壞時會失去所有資料的危險。
當磁碟陣列的資料條帶的一個欄位內的資料無法被修復時,只會直接影響到該資料條帶的欄位所屬的檔案的正確性。也就是說,使用者應該僅失去無法被修復的檔案,而不該在修復過程中因為發 現磁碟陣列的一個損壞磁區而失去所有的檔案。本發明實施例改良磁碟陣列修復降級模式時的功能,因此磁碟陣列即使在修復過程中發現損壞磁區也不會進入故障模式,藉此消除使用者承擔不合理的危險。此外本發明的方法另產生一紀錄以標示損壞磁區位於檔案系統中的哪一磁區。當磁碟陣列完全修復之後,便可根據損壞磁區的紀錄找出損壞檔案並通知使用者。完成修復之後,可使用檔案系統工具檢查檔案系統以檢查資料及檔案系統的完整性。
請參考第1圖,第1圖為一實施例說明一種自動重映射流程的示意圖。第1圖為自動重映射流程在修復過程中的說明,但是自動重映射流程亦可用於磁碟陣列其它的操作,例如正常讀寫(I/O)或是磁碟陣列轉移的過程。磁碟陣列10包含複數個磁碟130、131、132、一資料條帶100及一低階儲存裝置驅動器120。資料條帶100包含複數條條帶欄位110、111。資料條帶100中條帶欄位的數目等於磁碟陣列10中複數個磁碟的數量。位於磁碟陣列10的複數個磁碟130、131、132的資料會被讀取出來以形成資料條帶100,資料條帶100中的條帶欄位110用以儲存由磁碟130讀取的資料,條帶欄位111用以儲存由磁碟131讀取的資料。當低階儲存裝置驅動器120接收到一磁碟陣列控制器(軟體或硬體)發出的指令,例如讀取或寫入指令後,低階儲存裝置驅動器120會將該指令解譯並且送出解譯後的指令到磁碟130。磁碟130可儲存資料,例如圖像資料、文件資料、聲音資料、動態影像資料、及/或系統資料或奇偶檢查位元資料,例如XOR奇偶檢查位元資料或其他形式的奇偶檢查位元資料 (Galois field,Reed-Solomon)。
如第1圖所示,磁碟陣列控制器發出讀取指令到低階儲存裝置驅動器120以由磁碟130讀取資料並存入條帶欄位110。接下來,低階儲存裝置驅動器120發出解譯後的讀取指令到磁碟130以讀取資料。若資料無法被讀取(可能是因為讀到損壞磁區),則磁碟130會發出讀取錯誤訊號。當低階儲存裝置驅動器120收到由磁碟130發出的讀取錯誤訊號,低階儲存裝置驅動器120會發出重映射指令(寫入指令)到磁碟130以由損壞磁區重映射一地址到磁碟130的一未使用的正常磁區。成功完成重映射之後,低階儲存裝置驅動器120會回報已成功完成讀取動作到磁碟陣列控制器並且紀錄損壞磁區的位置。此時因為磁碟陣列的上層架構認為讀取操作已成功完成,磁碟陣列的上層架構便不會使磁碟陣列進入故障模式。然而磁碟陣列控制器仍判定讀取操作時發現損壞磁區且資料所在的檔案已損壞。所以當磁碟陣列完全修復後,便會根據損壞磁區的位置紀錄找出損壞檔案並通知使用者。當完成修復之後,可使用檔案系統工具檢查檔案系統以確定資料及檔案系統的完整性。
請參照第2圖,第2圖說明磁碟陣列執行自動重映射方法的流程圖,包含以下步驟:步驟200:於磁碟陣列開始磁碟陣列操作;步驟202:於磁碟陣列的磁碟執行讀取操作; 步驟204:在執行讀取操作時發現損壞磁區;步驟206:重映射損壞磁區到未使用的正常磁區;步驟208:回報損壞磁區之位置到磁碟陣列控制器;步驟210:回報損壞磁區所屬的一損壞檔案。
在步驟200,磁碟陣列控制器用來開始磁碟陣列操作,操作時,磁碟陣列可處於降級模式。磁碟陣列也可操作在任何需要送出讀取指令的操作過程,例如修復過程、正常讀寫(I/O)過程、磁碟陣列轉移的過程或其他的操作中。在步驟202於磁碟陣列的磁碟執行讀取操作時,如第1圖所示,讀取指令可送到低階儲存裝置驅動器120(可為一作業系統(OS)的一部份或韌體)。在步驟204,當執行讀取操作時,磁碟可能嘗試讀取某一磁區卻發現該磁區包含損壞磁區,此時可採取多種不同的行動,包括磁碟會重映射損壞磁區到未使用的正常磁區(步驟206),及磁碟及/或低階儲存裝置驅動器120回報損壞磁區的位置到磁碟陣列控制器或作業系統(步驟208)。此時作業系統便可根據損壞磁區的位置判定損壞磁區屬於哪一(些)損壞檔案且回報該(些)損壞檔案給使用者。因此使用第2圖的方法,當在降級模式執行讀取操作發現損壞磁區時,磁碟陣列不會進入故障模式。
在步驟206,存在許多重映射方法可用以執行重映射以將損壞磁區的地址指向磁碟中的其他位置,且為本技術領域人士所熟知,例如有些重映射功能可由磁碟中的韌體執行。
請注意,在第2圖的方法中,某些步驟可以省略,且步驟的順序可以被改變,以上改變均屬於本發明之範圍。例如,步驟206、208及210分別描述當步驟204讀取到損壞磁區時可採取的不同動作。本方法也可以不採取以上全部三個步驟。例如,本方法可執行重映射(步驟206)而不回報損壞磁區(步驟208),或不回報損壞檔案(步驟210)。或者,本方法可回報損壞磁區而不重映射損壞磁區。另外,本方法也可在重映之前先回報損壞磁區。
以上所述的方法適用於所有級數的磁碟陣列。只要磁碟陣列處於降級模式,則第1圖及第2圖所示的方法就可以防止磁碟陣列於讀取操作的過程中發現損壞磁區時進入故障模式。如此可消除使用者在僅有一檔案損壞時會失去所有資料的危險。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
10‧‧‧磁碟陣列
130、131、132‧‧‧複數個磁碟
100‧‧‧資料條帶
110、111‧‧‧複數條條帶欄位
120‧‧‧低階儲存裝置驅動器
200、202、204、206、208、210‧‧‧步驟
第1圖為本發明一實施例說明一種自動重映射流程的示意圖。
第2圖為本發明另一實施例說明磁碟陣列執行自動重映射方法的流程圖。
200、202、204、206、208、210‧‧‧步驟

Claims (14)

  1. 一種於磁碟陣列(RAID)執行自動重映射的方法,包含:根據一讀取命令執行一讀取操作以由該磁碟陣列之一磁碟讀取資料;及當在執行該讀取操作時發現該資料位於一損壞磁區,重映射該損壞磁區之位置至該磁碟之一未使用之正常磁區。
  2. 如請求項1所述的方法,其中該磁碟陣列處於一降級模式,該方法另包含:該磁碟陣列在該損壞磁區之位置被重映射後不進入一故障模式。
  3. 如請求項1所述的方法,另包含:回報該損壞磁區之位置。
  4. 如請求項3所述的方法,另包含:判斷對應於該損壞磁區之位置的一檔案;及回報該檔案為一損壞檔案。
  5. 如請求項1所述的方法,其中該讀取操作在一用以修復該磁碟陣列之修復過程中執行。
  6. 如請求項1所述的方法,其中該讀取操作在該磁碟陣列之正常 讀寫(I/O)或磁碟陣列轉移的過程中執行。
  7. 一種回報磁碟陣列(RAID)之損壞磁區的方法,包含:根據一讀取命令執行一讀取操作以由該磁碟陣列之一磁碟讀取資料;及當在執行該讀取操作時發現該資料位於一損壞磁區,回報該損壞磁區之位置。
  8. 如請求項7所述的方法,其中該磁碟陣列處於一降級模式,該方法另包含:該磁碟陣列在該損壞磁區之位置被重映射後不進入一故障模式。
  9. 如請求項8所述的方法,另包含:判斷對應於該損壞磁區之位置的檔案;及回報該檔案為一損壞檔案。
  10. 如請求項7所述的方法,其中該讀取操作在一用以修復該磁碟陣列之修復過程中執行。
  11. 如請求項7所述的方法,其中該讀取操作在該磁碟陣列的正常讀寫(I/O)或磁碟陣列轉移的過程中執行。
  12. 一種具有自動重映射功能的磁碟陣列(RAID),包含:複數個磁碟;及一韌體,用以於執行一讀取操作的過程中在該複數個磁碟中之一磁碟發現一損壞磁區時,重映射該損壞磁區的位置。
  13. 如請求項12的所述之磁碟陣列,其中該磁碟陣列在降級模式執行該讀取操作時不進入故障模式。
  14. 如請求項12的所述之磁碟陣列,其中該韌體回報該損壞磁區的位置以判斷該損壞磁區所對應的檔案。
TW101130991A 2012-01-08 2012-08-27 具有自動重映射功能的磁碟陣列及其自動重映射方法 TW201329701A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/345,742 US20130179726A1 (en) 2012-01-08 2012-01-08 Automatic remapping in redundant array of independent disks and related raid

Publications (1)

Publication Number Publication Date
TW201329701A true TW201329701A (zh) 2013-07-16

Family

ID=45952941

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101130991A TW201329701A (zh) 2012-01-08 2012-08-27 具有自動重映射功能的磁碟陣列及其自動重映射方法

Country Status (3)

Country Link
US (1) US20130179726A1 (zh)
EP (1) EP2613258A1 (zh)
TW (1) TW201329701A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI567552B (zh) * 2016-06-08 2017-01-21 捷鼎國際股份有限公司 冗餘磁碟陣列系統及其資料儲存方法
TWI620116B (zh) * 2016-12-22 2018-04-01 財團法人工業技術研究院 硬碟陣列及其重建方法
US10635525B2 (en) 2017-04-25 2020-04-28 Silicon Motion, Inc. Data storage devices and methods for rebuilding a memory address mapping table

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102708019B (zh) * 2012-04-28 2014-12-03 华为技术有限公司 一种硬盘数据恢复方法、装置及系统
CN111221473B (zh) * 2019-12-30 2023-06-06 河南创新科信息技术有限公司 一种存储系统介质免维护的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974544A (en) * 1991-12-17 1999-10-26 Dell Usa, L.P. Method and controller for defect tracking in a redundant array
US5572661A (en) * 1994-10-05 1996-11-05 Hewlett-Packard Company Methods and system for detecting data loss in a hierarchic data storage system
US6993679B2 (en) * 2002-02-28 2006-01-31 Sun Microsystems, Inc. System and method for inhibiting reads to non-guaranteed data in remapped portions of a storage medium
US7275179B1 (en) * 2003-04-24 2007-09-25 Network Appliance, Inc. System and method for reducing unrecoverable media errors in a disk subsystem
US7409585B2 (en) * 2004-01-30 2008-08-05 Dell Products L.P. Automatic media repair after read failure due to media error
TWI283349B (en) * 2005-05-12 2007-07-01 Inventec Corp Data protection method
US7574621B2 (en) * 2006-03-14 2009-08-11 Lenovo (Singapore) Pte Ltd. Method and system for identifying and recovering a file damaged by a hard drive failure
US7890796B2 (en) * 2006-10-04 2011-02-15 Emc Corporation Automatic media error correction in a file server
JP2009151393A (ja) * 2007-12-18 2009-07-09 Nec Corp 記憶媒体制御装置、記憶媒体管理システム、記憶媒体の制御方法、及び記憶媒体の制御プログラム
WO2010140189A1 (en) * 2009-06-02 2010-12-09 Hitachi, Ltd. Storage system and control methods for the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI567552B (zh) * 2016-06-08 2017-01-21 捷鼎國際股份有限公司 冗餘磁碟陣列系統及其資料儲存方法
TWI620116B (zh) * 2016-12-22 2018-04-01 財團法人工業技術研究院 硬碟陣列及其重建方法
US10635525B2 (en) 2017-04-25 2020-04-28 Silicon Motion, Inc. Data storage devices and methods for rebuilding a memory address mapping table

Also Published As

Publication number Publication date
EP2613258A1 (en) 2013-07-10
US20130179726A1 (en) 2013-07-11

Similar Documents

Publication Publication Date Title
CN102708019B (zh) 一种硬盘数据恢复方法、装置及系统
US9110835B1 (en) System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata
JP6422600B2 (ja) メモリにおけるストライプマッピング
US9009526B2 (en) Rebuilding drive data
CN103718162B (zh) 用于ssd中灵活的raid的方法和设备
US7779294B2 (en) Power-safe disk storage apparatus, systems, and methods
US8484522B2 (en) Apparatus, system, and method for bad block remapping
US8555027B2 (en) Semiconductor memory controlling device
US8671250B2 (en) Data storage device generating redundancy for data path protection of a parity sector
CN102023815B (zh) 在固态存储器中实现raid
US8074113B2 (en) System and method for data protection against power failure during sector remapping
US20090055681A1 (en) Intra-disk coding scheme for data-storage systems
JP4114877B2 (ja) 不正データを検出するための装置、方法、及びプログラム
TW201329701A (zh) 具有自動重映射功能的磁碟陣列及其自動重映射方法
US10574270B1 (en) Sector management in drives having multiple modulation coding
US7577804B2 (en) Detecting data integrity
CN105183590A (zh) 一种磁盘阵列的容错处理方法
US7174476B2 (en) Methods and structure for improved fault tolerance during initialization of a RAID logical unit
JP4143040B2 (ja) ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム
US10379972B1 (en) Minimizing reads for reallocated sectors
CN111381997A (zh) 一种raid重建方法及装置
GB2402803A (en) Arrangement and method for detection of write errors in a storage system
US7971126B2 (en) Apparatus, system, and method for hard disk drive redundancy
US9400716B2 (en) Method for handling interrupted writes using multiple cores
CN115565598A (zh) Raid阵列磁盘暂时失效的数据存储与修复方法及系统