KR100690429B1 - 디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의이중 디스크 장해를 허용하는 방법 및 수단 - Google Patents

디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의이중 디스크 장해를 허용하는 방법 및 수단 Download PDF

Info

Publication number
KR100690429B1
KR100690429B1 KR1020057006785A KR20057006785A KR100690429B1 KR 100690429 B1 KR100690429 B1 KR 100690429B1 KR 1020057006785 A KR1020057006785 A KR 1020057006785A KR 20057006785 A KR20057006785 A KR 20057006785A KR 100690429 B1 KR100690429 B1 KR 100690429B1
Authority
KR
South Korea
Prior art keywords
data
disks
strip
disk
stripe
Prior art date
Application number
KR1020057006785A
Other languages
English (en)
Other versions
KR20050062629A (ko
Inventor
윈저 위 선 수
제이샌카 무서다스 메논
아니스티 쳉 영
스펜서 엔지
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
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 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20050062629A publication Critical patent/KR20050062629A/ko
Application granted granted Critical
Publication of KR100690429B1 publication Critical patent/KR100690429B1/ko

Links

Images

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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1045Nested RAID, i.e. implementing a RAID scheme in another RAID scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Error Detection And Correction (AREA)

Abstract

저장된 데이터는 어느 2개의 디스크에 장해가 발생하거나 또는 2개 이상의 종속적인 디스크 장해 발생 시에, n개의 물리적 디스크의 데이터 값을 저장할 수 있는 적어도 2n+1개의 물리적 디스크를 갖는 디스크 어레이로부터 복구될 수 있다. 데이터는 n개의 실질적으로 동일한 사이즈의 스트립으로 분할되고, n개의 디스크에 걸쳐서 분산되는 데이터 스트라이프에 저장된다. 각각의 데이터 스트라이프는 대응하는 패리티 스트립을 갖는데, 이 패리티 스트립은 생성 시에 데이터 스트라이프의 데이터 스트립을 한번만 포함한다. 각 데이터 스트라이프마다의 데이터 스트립, 그 각 데이터 스트립의 카피 및 대응하는 패리티 스트립은 디스크에 걸쳐서, 상기 각 데이터 스트라이프의 데이터 스트립, 그 각 데이터 스트립의 카피 및 대응하는 패리티 스트립이 각각 디스크 어레이의 각기 다른 디스크 상에 있도록 분산된다.

Description

디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의 이중 디스크 장해를 허용하는 방법 및 수단{METHOD AND MEANS FOR TOLERATING MULTIPLE DEPENDENT OR ARBITRARY DOUBLE DISK FAILURES IN A DISK ARRAY}
본 발명은 대용량 기억 장치 분야에 관한 것이다. 보다 구체적으로, 본 발명은 어떤 저장된 데이터의 손실없이 다중 종속 디스크 장해 또는 임의의 이중 디스크 장해를 허용할 수 있는 디스크 어레이에 관한 것이다.
디스크는 종종 성능 및 관리 용이성을 위해 어레이로 편성된다. 어레이 내의 어떤 디스크의 장해로 인해 데이터가 손실되는 것을 방지하기 위해서, 디스크의 서브세트가 어레이에 저장된 데이터 모두를 얻기에 충분하도록 데이터를 어레이의 디스크들을 통해 중복 저장한다. 최근에, 대부분의 시스템들은 단일 디스크 장해를 허용하도록 설계되고 있다. 단일 디스크 장해를 대비하여 설계하기 위한 이론적 근거로는 디스크 장해 시에, 또다른 장해가 발생하기 전에 그 장해를 복구할 수 있는 시간이 충분하도록 디스크 장해가 비교적 드물게 발생해야 한다는 것이다.
그러나, 필드 데이터는 디스크 장해가 종속적일 수 있음을 시사한다. 즉, 기억 시스템 또는 데이터 어레이 내에서 제2 디스크 장해는 제1 장해 발생 후 곧이어 발생하기 쉽다. 이러한 종속성은, 한 어레이 내에 있는 디스크들이 동일한 디스크 배치(batch)로부터의 것인 경향이 있으므로, 동일한 물리적 및 전기적 상태의 영향을 받으며, 동일한 컨트롤로부터의 동일한 작업부하 및 커맨드를 취급한다는 등의 사실에 단순히 기인한다. 또한, 한 어레이 내에서 발생하는 디스크 장해는 시스템에 변화를 야기하여 나머지 디스크에 악영향을 끼친다. 장해 디스크를 교체한다고 해도 그 어레이에서 그 밖의 결함이 발생할 가능성이 커질 수 있다. 예를 들어, 교체된 디스크에 결함이 있을 수 있다.
관련 산업은 단일 장해 결함 허용(single-failure fault-tolerance)을 점점 약화시키는 방향으로 가고 있다. 첫째, 더 많은 디스크가 하나의 어레이로 그룹화되고 있다. 그에 따라, 한 어레이 내에서 복수의 장해가 있을 가능성이 커진다. 둘째, 디스크 용량이 데이터 레이트의 증가보다 더 빠르게 증가한다. 그 결과, 디스크를 재구축할 시간이 대개 늘어나서, 그 어레이가 후속 디스크 장해에 취약하게 되는 윈도우 기간이 늘어난다. 셋째, 디스크 공급자들이 영역 밀도를 공격적으로 증가시키려고 하고 있다. 역사상, 이것은 디스크 신뢰도의 저감을 야기하며 이는 추후에도 계속될 것으로 예상할 수 있다. 넷째, 다중 디스크 장해와 관련된 비용이 증가하게 된다. 호스트 논리 유닛 번호(LUN; Logical Unit Number)를 다수의 디스크 어레이에 걸쳐 확산시킬 수 있는 가상화와 같은 기술은 다수의 더 많은 호스트 LUN에 영향을 미칠 수 있기 때문에 다중 디스크 장해의 악영향을 증가시킬 수 있다.
디스크 어레이의 다중 디스크 장해를 복구하기 위한 종래의 기술은 넓게 더블 패리티(double-parity), 더블 미러링(double mirroring), RAID 51 타입 스킴으로 분류될 수 있다. 더블 패리티 타입 스킴은 더블 패리티를 사용하기 위해, (단일 패리티를 사용하는) RAID 5 타입 스킴을 확장시킨다. 더블 패리티 타입 스킴의 단점 중 하나는 소수(素數)개의 디스크와 같이, 지원되는 디스크의 수에 유연성이 없다는 것이다. 이와 관련해서, L. Xu 등의 "X-Code: MDS array codes with optimal encoding,"[IEEE Transcations on Information Theory, 45, 1, PP. 272-276, 1999]를 참조할 수 있다. 더블 패리티 타입 스킴의 또다른 단점은 블록의 매 업데이트 시에 몇몇의 다른 블록의 업데이트가 필요할 수 있는 매우 복잡한 업데이트 절차가 요구될 수 있다는 점이다. 이에 대해서는, M. Blaum 등의 "The EVENODD code and its generalization: An efficient scheme for tolerating multiple disk failures in RAID architectures", High Performance Mass Storage and Parallel I/O: Technologies and Applications(H. Jin et al. eds.)[Ch. 14, pp. 187-208, New York, NY: IEEE Computer Society Press and Wiley, 2001]"를 참조할 수 있다. 더블 패리티 타입 스킴의 또 다른 단점은 패리티 인코딩 및 디코딩의 복잡도가 높을 수 있다는 점이다. 이에 대해서는, 예컨대 P.M. Chen 등의 "RAID: High-performance, reliable secondary storage,"[ACM Computing Surveys, 26, 2, pp. 145-185, June 1994]를 참조할 수 있다. 매 기록 요구 시에 적어도 3회의 디스크 판독 동작 및 3회의 디스크 기록 동작이 필요하다. 더블 패리티형 스킴은 기껏해야 2개의 디스크 장해만 허용할 수 있다.
더블 미러링 타입 스킴에 있어서, 데이터는 3개의 데이터 카피가 존재하도록 2회 미러링된다. 매 기록 요구 시에 각 카피를 업데이트하기 위해 3회의 디스크 기록 동작이 필요하다. 더블 미러형 스킴은 미보호 어레이의 기억 용량의 3배를 사용한다.
RAID 51 타입 스킴은 단일 디스크 장해에 대비하여 데이터를 보호하고, 최고 3개의 임의의 디스크 장해까지 보호하기 위하여 RAID 5 어레이를 미러링한다. 기록 요구 시에, 2회의 디스크 판독 동작 및 4회의 디스크 기록 동작이 수반된다.
발명이 명칭이 "Method and means for distributed sparing in DASD Arrays"인, Menon 등에게 허여된 미국 특허 제5,258,984호는 성능 향상을 위해 디스크 어레이 내의 모든 디스크 간에 예비 공간을 균등하게 분산하는 방법을 개시하고 있다.
따라서, 어레이 내의 임의의 2개의 디스크가 장해를 일으키거나, 2개 이상의 종속적인 디스크 장해 발생 시에도 데이터를 여전히 이용할 수 있도록, 디스크의 어레이 상에 데이터를 저장하기 위한 효율적인 기술이 필요하다.
본 발명은 어레이 내의 임의의 2개의 디스크에 결함이 발생하거나, 2개 이상의 종속적인 디스크 장해 발생 시에도 여전히 데이터를 이용할 수 있도록 디스크 어레이 상에 데이터를 저장하기 위한 효율적인 기술을 제공한다.
본 발명의 장점은 n개의 물리적 디스크의 데이터 값(worth)을 저장할 수 있는 적어도 2n+1개의 물리적 디스크를 포함하는 디스크 어레이에 의해 제공된다. 데이터는 물리적 디스크 상에서 적어도 하나의 데이터 스트라이프에 저장된다. 각 데이터 스트라이프는 스트립이라고 불리는 n개의 실질적으로 동일한 사이즈의 그룹으로 분할된다. 각 데이터 스트라이프는 대응하는 패리티 스트립을 가지며, 이 패리티 스트립은 생성 시에 한번만 각 데이터 스트립을 포함한다. 각 데이터 스트라이프에 있는 데이터 스트립, 그 각 데이터 스트립의 카피 및 각 데이터 스트라이프마다 대응하는 패리티 스트립은 디스크 어레이의 2n+1개의 물리적 디스크에 걸쳐서 분산된다. 이 분산은 데이터 스트라이프의 각 데이터 스트립, 그 각 데이터 스트립의 카피, 각 데이터 스트라이프마다 대응하는 패리티 스트립이 각각 디스크 어레이의 각기 상이한 디스크 상에 있도록 이루어진다. 디스크 어레이가 적어도 하나의 예비적 물리 디스크를 포함하는 경우에, 각 데이터 스트라이프마다의 데이터 스트립, 그 각 데이터 스트립의 카피, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 디스크 어레이의 2n+1개의 물리적 디스크 및 각 예비 디스크에 걸쳐서 분산된다. 이러한 분산은 각 데이터 스트라이프마다의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립이 각각 디스크 어레이의 각기 상이한 디스크 상에 있도록 이루어진다.
본 발명의 다른 실시예는 호스트 데이터 처리 시스템에게 적어도 하나의 디스크가 보이는 복수의 디스크를 갖는 디스크 어레이 시스템을 제공하다. 이 디스크 어레이 시스템은 복수의 디스크에 대해 2회의 판독 동작만 그리고 복수의 디스크에 대해 3회의 기록 동작만 수행함으로써, 호스트 데이터 처리 시스템으로부터의 호스트 데이터 기록 요구에 응답한다. 본 발명에 따르면, 디스크 어레이 시스템은 복수의 디스크 중 임의의 2개의 디스크에 장해가 발생하는 경우에, 저장된 데이터 모두를 복구할 수 있다. 본 발명의 제1 다른 실시예가 제공하는 복수의 디스크는 데이터, 그 데이터의 전체 카피, 및 그 데이터의 적어도 하나의 서브세트를 통해 연산된 패리티 데이터를 저장한다. 제2 다른 실시예가 제공하는 패리터 데이터는 RAID 5 시스템 구성으로서 어레이에 있는 복수의 디스크 사이에 실질적으로 균등하게 분산된다. 제3 다른 실시예가 제공하는 복수의 디스크 중 적어도 하나의 디스크는 예비 디스크이고, 각 예비 디스크에 의해 제공되는 예비 공간은 복수의 디스크 사이에서 실질적으로 균등하게 분산된다.
제4 다른 실시예에 있어서, 복수의 디스크는 컨트롤러에 의해 각각 제어되는 2개의 서브어레이로 구획화된다. 그에 따라, 2개의 서브어레이는 같은 장소에 배치되거나 서로 원격으로 떨어져 있을 수 있다. 한쪽 서브어레이는 RAID 5 시스템 구성으로서 배열되는 것이 좋으며, 다른쪽 서브어레이는 RAID 0 구성으로 배열되는 것이 좋다. RAID 0 시스템 구성으로서 배열된 서브어레이는 RAID 5 시스템 구성으로서 배열된 서브어레이 상에 저장된 데이터의 미러 데이터를 저장하지만, RAID 5 시스템 구성으로서 배열된 서브어레이 상에 저장된 데이터의 패리티 데이터는 저장하지 않는다. 호스트 데이터 처리 시스템으로부터 수신한 요구는 2개의 서브어레이의 각 디스크의 작업부하가 실질적으로 평형하도록 2개의 서브어레이 중 하나로 선택적으로 향하게 된다.
본 발명의 다른 실시예에 있어서, 복수의 디스크는 2개의 서브어레이로 구획화되고, 그 복수의 디스크 중 적어도 하나의 디스크는 예비 디스크이다. 각 예비 디스크에 의해 제공되는 예비 공간은 서브어레이들 사이에 그리고 복수의 디스크 사이에 실질적으로 균등하게 분산된다. 디스크 어레이 시스템이 기억하는 RAID 5 시스템 패리티는 서브어레이들 사이에 그리고 복수의 디스크 사이에 실질적으로 균등하게 분산된다. 한쪽 서브어레이는 다른쪽 서브어레이 상에 저장된 데이터의 미러 데이터를 저장한다.
다른 특징에서 볼 때, 본 발명은 적어도 하나의 디스크가 호스트 데이터 처리 시스템에게 보이는 복수의 디스크를 포함하는 디스크 어레이 시스템을 제공하며, 이 디스크 어레이 시스템은 복수의 디스크에 대해 2회의 판독 동작만, 복수의 디스크에 대해 3회의 기록 동작만 수행함으로써, 호스트 데이터 처리 시스템으로부터의 호스트 데이터 기록 요구에 응답하고, 디스크 어레이 시스템은 복수의 디스크 중 어느 2개의 디스크에서 장해가 발생하는 경우, 저장된 모든 데이터를 복구할 수 있다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 복수의 디스크는 데이터, 그 데이터의 전체 카피, 및 그 데이터의 적어도 하나의 서브세트를 통해 연산된 패리티 데이터를 저장하는 수단을 제공한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 패리티 데이터는 RAID 5 시스템 구성으로서 어레이에 있는 복수의 디스크 사이에서 그 패리티 데이터를 실질적으로 균등하게 분산시키는 수단을 제공한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 복수의 디스크 중 적어도 하나의 디스크 수단은 예비 디스크이며, 각 예비 디스크가 제공하는 예비 공간 수단은 복수의 디스크 사이에 실질적으로 균등하게 분산된다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 각 예비 디스크가 제공하는 예비 공간 수단은 RAID 5 시스템 구성에서의 패리터와 동일한 방식으로 복수의 디스크 사이에 분산된다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 복수의 디스크는 2개의 서브어레이로 구획화되고, 디스크 어레이 시스템 수단은 각기 서브어레이를 각각 제어하는 컨트롤러 수단을 더 포함한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 이 디스크 어레이 시스템은 2개의 서브어레이를 서로 원격으로 배치시키는 수단을 제공한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 한쪽 서브어레이 수단은 RAID 5 시스템 구성으로서 배열되고, 다른쪽 서브어레이 수단은 RAID 0 시스템 구성으로서 배열되며, RAID 5 시스템 구성으로서 배열된 서브어레이 수단 상에 저장된 데이터의 미러 데이터는 저장되고, RAID 5 시스템 구성으로서 배열된 서브어레이 수단 상에 저장된 데이터의 패리티 데이터를 저장되지 않는다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 호스트 데이터 처리 시스템으로부터 수신한 요구 수단은 2개의 서브어레이의 각 디스크의 작업부하가 실질적으로 평형하도록 2개의 서브어레이 중 어느 하나로 선택적으로 향하게 된다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, RAID 0 시스템으로서 배열된 서브어레이는 RAID 5 시스템 구성으로서 배열된 서브어레이에 포함된 디스크 타입과 상이한 타입의 디스크를 포함한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, RAID 0 시스템으로서 배열된 서브어레이 수단은 RAID 5 시스템 구성으로서 배열된 서브어레이에 포함된 디스크의 용량과 상이한 용량 수단을 갖는 디스크 수단을 포함한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, RAID 0 시스템 구성으로서 배열된 서브어레이 수단은 RAID 5 시스템 구성으로서 배열된 서브어레이에 포함된 디스크의 총수와 상이한 총수의 디스크 수단을 포함한다.
양호하게는 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 복수의 디스크 중 적어도 하나의 디스크 수단은 각각 예비 공간을 제공하는 예비 디스크이고, 한쪽 서브어레이 수단은 RAID 5 시스템 구성으로서 배열되며 디스크 어레이 시스템 상에 저장된 데이터에 대한 모든 패리티 정보를 포함하고, 다른쪽 서브어레이 수단은 RAID 0 시스템으로서 배열하는 수단을 제공하고, 각 예비 디스크에 의해 제공되는 모든 예비 공간을 포함하며, RAID 5 시스템으로서 배열된 서브어레이 상에 저장된 데이터의 미러 데이터를 저장하는 수단은 RAID 5 시스템으로서 배열된 서브어레이 상에 기억된 데이터의 패리티 데이터를 기억하지 않는다.
양호하게는, 본 발명은, 예컨대 2개의 서브어레이가 서로로부터 원격으로부 배치되어 있는 디스크 어레이 시스템을 제공한다.
양호하게는, 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 복수의 디스크 중 적어도 하나의 디스크 수단은 각각 예비 공간을 제공하는 예비 디스크이고, 상기 예비 공간 수단은 서브어레이 사이에서 그리고 복수의 디스크 사이에서 실질적으로 균등하게 분산하는 수단을 제공하며, 디스크 어레이 시스템에 의해 저장된 RAID 5 시스템 패리티는 서브어레이 사이에서 그리고 복수의 디스크 사이에서 실질적으로 공평하게 분산되며, 한쪽 서브어레이는 다른쪽 서브어레이 상에 저장된 데이터의 미러 데이터를 저장한다.
양호하게는, 본 발명이 제공하는 디스크 어레이 시스템에 있어서, 2개의 서브어레이는 서로 원격으로 배치되어 있다.
본 발명의 다른 실시예는 n개의 물리적 디스크의 데이터 값을 저장할 수 있는 적어도 2n+1개의 물리적 디스크를 갖는 디스크 어레이에 데이터를 저장하는 방법을 제공한다. 데이터는 물리적 디스크 상에서 적어도 하나의 데이터 스트라이프에 저장되고, 그 각각의 데이터 스트라이프는 스트립이라고 불리는 n개의 실질적으로 동일한 사이즈의 그룹으로 분할된다. 패리티 스트립이 각 데이터 스트라이프마다 생성됨으로써, 데이터 스트라이프의 각 데이터 스트립은 대응하는 생성된 패리티 스트립에 한번만 포함된다. 각 데이터 스트라이프에 있는 데이터 스트립, 그 각 데이터 스트립의 카피, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 디스크 어레이의 2n+1개의 물리적 디스크에 걸쳐서 분산된다. 이 분산은 각 데이터 스트라이프에 있는 데이터 스트립, 그 각 데이터 스트립의 카피 및 데이터 스트라이프마다 대응하는 패리티 스트립이 디스크 어레이의 각기 다른 디스크 상에 각각 있도록 이루어진다.
이제, 첨부하는 도면을 참조하여 본 발명의 실시예를 예시적으로 설명한다.
도 1은 본 발명에 따른, 패리티 보호형 미러 어레이 기술을 이용하는 예시적인 시스템을 도시하는 도면이다.
도 2는 본 발명에 따른, 패리티 보호형 미러 어레이 기술을 이용하고 예비 공간이 분산되는 예시적인 시스템을 도시하는 도면이다.
도 3은 도 2에 도시한 예시적인 시스템의 서브어레이 내의 디스크(1)에 장해가 있을 경우의 예시적인 복구를 도시하는 도면이다.
도 4는 패리티가 시스템의 모든 디스크에 걸쳐서 분산되는 본 발명에 따른 패리티 보호형 미러 어레이 기술을 이용하는 예시적인 시스템을 도시하는 도면이다.
도 5는 패리티 및 예비 공간이 시스템의 모든 디스크에 걸쳐서 분산되는 본 발명에 따른 패리티 보호형 미러 어레이 기술을 이용하는 예시적인 시스템을 도시하는 도면이다.
도 6은 패리티 및 예비 공간이 시스템의 모든 디스크에 걸쳐서 분산되며, 대칭적인 본 발명의 패리티 보호형 미러 어레이 기술을 이용하는 또 다른 예시적인 시스템을 도시하는 도면이다.
본 발명은 디스크 어레이의 어느 2개의 디스크의 장해시에, 또는 2개 이상의 종속 디스크 장해 시에도 데이터를 여전히 이용할 수 있도록 디스크 어레이 상에 데이터를 저장하는 기술을 제공한다. 따라서, 본 발명은 임의개의 디스크에 상당하는 기억 용량을 갖는 디스크 어레이를 제공하고, 오직 XOR 연산만 이용하므로, 어느 2개의 디스크의 장해를 허용하는 데 필요한 디스크 기록 수에 적합하다.
어느 2개의 디스크의 장해를 허용할 수 있는 디스크 어레이는 데이터의 적어도 3개의 독립적 카피를 저장해야만 한다. 이와 관련하여, 본 발명은 데이터의 오리지널 카피, 추가적인 전체 카피, 데이터의 서브세트에 걸쳐 연산된 패리티 데이터로 이루어진 파생 카피를 보유한다. 본 발명에 필요한 기억 용량은 비보호형 디스크 어레이의 기억 용량의 고작 2배이다.
도 1은 본 발명에 따른 패리티 보호형 미러 어레이 기술을 이용하는 예시적인 시스템(100)을 도시하고 있다. 시스템(100)은 3개의 디스크에 상당하는 총 용량을 갖는 총 7개의 디스크(0-6)를 포함한다. 디스크(0-6)는 제1 서브어레이(101)와 제2 서브어레이(102)로 편성된다. 서브어레이(101)는 4개의 디스크, 즉 디스크(0-3)로 된 그룹을 포함한다. 서브어레이(102)는 3개의 디스크, 즉 디스크(4-6)로 된 그룹을 포함한다. 도 1 내지 도 6에 있어서, Di는 데이터 유닛(또는 스트립) i를 나타내고, Pj는 열 또는 스트라이프 j의 패리티를 나타낸다. 서브어레이(102)의 3개의 디스크 상에 데이터를 미러링하고, 서브어레이(101)의 패리티에 공간을 제공하도록 하나의 디스크를 추가함으로써 데이터를 보호한다. 서브어레이(101)는 RAID 5 어레이 시스템으로서 편성되지만, 서브어레이(102)는 RAID 0 어레이 시스템으로서 편성된다.
호스트 판독 동작 시에, 데이터는 서브어레이(101)와 서브어레이(102) 중 하나로부터 판독될 수 있다. 호스트 기록 동작 시에, 제1 어레이에 있는 데이터 및 대응하는 패리티 모두의 카피가 업데이트되어야 한다. 서브어레이(101)에서의 기록 동작은 소규모 기록을 의미하는 RAID 5 시스템 업데이트로서 진행되어, 데이터의 오래된 값 및 대응하는 오래된 패리티가 판독되어야 하며, 새로운 패리티가 계산되고 새로운 데이터 및 새로운 패리티가 기록되므로, 2회의 디스크 판독 동작 및 2회의 디스크 기록 동작이 필요하다. 제2 어레이에서의 기록은 데이터가 단순히 기록되었음을 의미하는 RAID 0 시스템 업데이트로서 진행된다. 이에, 호스트 기록 동작에 있어서, 총 2회의 디스크 판독 동작 및 3회의 디스크 기록 동작이 필요하다. 임의의 2개의 디스크 장해를 허용하려면 데이터의 적어도 3개의 카피가 필요하기 때문에 3회의 디스크 기록 동작의 발생이 적합하다. 호스트 기록 동작은 서브어레이의 한쪽 또는 양쪽 모두가 업데이트되는 때에 완료로서 플래깅될 수 있다. RAID 51 스킴과 대조적으로, 본 발명은 하나 이하의 디스크를 필요로 하는 것외에, 매 호스트 기록 요구 시에 하나 이하의 기록 동작이 필요하다.
호스트 기록 동작 시에, 서브어레이(101)는 오래된 패리티의 판독 동작, 및 새로운 패리티와 새로운 데이터의 기록 동작을 서비스해야 한다. 2개의 어레이를 통해 부하를 평형시키기 위해, 오래된 데이터는 서브어레이(102)로부터 판독될 수 있다. 이에, 서브어레이(101)는 호스트 기록 동작마다 3회의 I/O를 처리하며, 서브어레이(102)는 호스트 기록 동작마다 2회의 I/O를 처리한다. 작업부하를 더욱 평형시키기 위해서, 더 많은 호스트 판독 동작이 서브어레이(102)에서 서비스될 수 있다. 예를 들어, r를 작업부하에서의 판독 동작을 나타내는 분수라고 하고, f를 서브어레이(101)가 서비스해야 하는 판독 동작을 나타내는 분수라고 할 때,
매 입력 I/O 요구시에,
서브어레이(101)에서 발생하는 디스크 판독 동작의 평균수 = rf
서브어레이(101)에서 발생하는 디스크 기록 동작의 평균수 = 3(1-r)
서브어레이(102)에서 발생하는 디스크 판독 동작의 평균수 = r(1-f)
서브어레이(102)에서 발생하는 디스크 기록 동작의 평균수 = 2(1-r)
가 필요하다.
부하를 평형시키기 위해서는
rf + 3(1-r) = r(1-f) + 2(1-r).
이에,
f = 1 - 1/2r.
다시 말해, 서브어레이(101)에게 보내지는 판독 동작을 나타내는 분수는 1 - 1/2r이다. 서브어레이(101, 102)를 거친 부하도 같은 방식으로 평형될 수 있는데, 단지 서브어레이(102)가 서브어레이(101)보다 디스크가 하나 더 적다는 것을 고려해야 한다.
시스템(100)은 서브어레이(102)에서의 임의개의 디스크 장해와, 또는 서브어레이(102)에서 디스크 장해가 발생하지 않는다면, 서브어레이(101)에서의 임의개의 디스크 장해와 함께, 서브어레이(101)에서 최대 하나의 디스크 장해까지 허용할 수 있다. 다시 말해, 시스템(100)은 임의의 2개의 디스크의 장해, 즉 동일한 서브어레이 내에서의 다중 디스크 장해로부터 데이터 손실 보호를 제공한다. 이에, 본 발명이 제공하는 데이터 보호는 기억 시스템에서의 디스크의 장해율이 일부 상관을 나타내는 경향이 있고, 하나의 어레이 내의 장해율 역시 상관되는 경향이 있다는 점에서 실제로 겪게 되는 것을 처리한다.
하나 이상의 디스크에 장해가 발생하는 경우에, 데이터는 RAID 1과 RAID 5 시스템 재구축 조합을 이용해서 복구된다. RAID 1 재구축이 보다 효과적이기 때문에, RAID 1 시스템 재구축을 가능한 한 많이 이용한다. 예를 들어, 서브어레이(101)에 있는 하나 이상의 디스크에 장해가 있는 경우에, 데이트 블록은 먼저 서브어레이(102)로부터 복구된 후에, 손실된 패리티가 재생성된다. 서브어레이(102)에 있는 임의개의 디스크에 장해가 발생하는 경우에, 불량 디스크 상의 데이터는 서브어레이(101)로부터의 데이터를 간단히 카피함으로써 복구된다. 서브어레이(102) 내의 하나의 디스크와 서브어레이(102) 내의 몇몇 디스크에 장해가 발생하는 경우에, 복구 프로세스는 서브어레이(101)를 재구축함으로써 시작된다. 데이터가 동작 드라이브 상에서 서브어레이(102)에 있는 경우에, 서브어레이(102)로부터 데이터를 카피한 후, 손실된 패리티가 재생성된다. 다른 방식에 있어서, 데이터는 RAID 5 시스템 재구축을 이용해서 복구된다. 일단 서브어레이(101)가 재구축된다면, 서브어레이(102)는 서브어레이(101)로부터의 데이터를 간단히 카피함으로써 회복된다.
데이터 손실 가능성을 더욱 줄이기 위해서는, 또다른 디스크를 서브어레이(102)에 추가하여, 장해 검출 시에 시스템(100)을 재구축하는데 이용될 예비 공간을 제공할 수 있어서, 시스템(100)이 디그레이드 모드(degraded)에 있는 시간의 윈도우를 최소화할 수 있다. 예시적인 시스템(100)에서는 또다른 디스크를 서브어레이(102)에 추가하고 서브어레이(102)에 있는 모든 디스크에 걸쳐서 이용 가능한 예비 공간을 논리적으로 확장함으로써, 분산된 예비 공간을 이용할 수 있다.
도 2는 본 발명에 따라 패리티 보호형 미러식 어레이 기술을 이용하고 예비 공간이 분산되는 예시적인 시스템(200)을 도시하고 있다. 시스템(200)은 제1 서브 어레이(201)와 제2 서브어레이(202)로 편성되는 총 8개의 디스크, 즉 디스크(0-7)을 포함한다. 서브어레이는 4개의 디스크, 즉 디스크(0-3)으로 된 그룹을 포함한다. 서브어레이(202)는 4개의 디스크, 즉 디스크(4-7)로 된 그룹을 포함한다. 블록은 도 2에 나타내는 바와 같은 예시적인 방법으로 배열되며, 여기서 Sk는 스트라이프 k에 대한 예비 공간을 나타낸다. 서브어레이(201, 202) 중 하나에서 디스크 장해가 있는 경우에, 복구된 블록은 서브어레이(202)를 통해 분산되는 예비 장소로 이동된다.
도 3은 [도 2에 나타낸 시스템(200)의 서브어레이(201)에 대응하는]서브어레이(301)의 디스크(1) 장해 시의 예시적인 복구를 나타내고 있다. 도 3에 나타내는 바와 같이, 예를 들어 서브어레이(301)에서 (선을 그어 지운 디스크(1)의 블록으로 표시하는 바와 같이) 디스크(1)에 장해가 있는 경우에, 장해 블록은 복구되어 서브어레이(302)에 저장된다.
분산된 예비 디스크를 서브어레이(302)에 추가함으로써, 서브어레이(301, 302)는 대칭적이게 되는데, 단지 예외적으로 서브어레이(302)에는 패리티가 기록되지 않는다. 그러한 대칭은 시스템을 간략화하고 패키징에 있어서 실제적인 이점을 제공한다. 또한, 2개의 서브어레이에서의 장해 경계가 정렬된다. 이에, 서브어레이(301, 302)의 어느 한쪽에서의 임의의 디스크 장해는 다른쪽 서브어레이 내의 하나의 디스크 상에만 저장된 데이터에 영향을 미칠 것이다. 더욱이, 전술한 장해 시나리오와 함께, 이러한 시스템은 다른쪽 서브어레이에 있는 미러링된 카피를 사용할 수 있다면, 서브어레이 양쪽에 있는 임의의 디스크의 장해를 허용할 수 있다. 예를 들어, 어레이는 서브어레이(302)에 있는 디스크(5, 6)의 장해와 함께, 서브어레이(301)에 있는 디스크(0, 3)의 장해를 허용할 수 있다.
본 발명은 2개의 디스크 어레이(및/또는 서브어레이)가 상이한 기억 시스템에 물리적으로 존재하는 디스크 어레이에 적용될 수 있다. 이에, 본 발명은 한쪽의 제1 서브어레이는 로컬 사이트에 있고 다른쪽 서브어레이는 원격의 재난 복구 사이트에 있기에 2개의 어레이를 원거리 네트워크로써 접속하는 경우와 같이, 서브어레이가 지리적으로 분리되는 시스템에도 적용될 수 있다. 게다가, 2개의 서브어레이에 있는 디스크는 타입 및 용량이 다를 수 있으며, 유리한 점은 2개의 서브어레이가 같은 수의 디스크를 가질 필요는 없다는 것이다.
본 발명을 2개의 서브어레이의 기억 장치로서 물리적 디스크의 견지에서 설명하였지만, 본 발명의 기술은 광기억 장치 및 MEMS(마이크로전자기계 시스템) 기반의 기억 장치 등의 다른 형태의 대용량 기억 장치에도 적용 가능하다.
이에, 전술한 본 발명의 패리티 보호형 미러 어레이 기술을 이용하는 시스템의 실시예들은 기존의 RAID 5 및 RAID 0 어레이 시스템을 이용하는 것을 기초로 한다. 시작 시에 본 발명에 따른 패리티 보호형 미러 어레이 기술을 이용하는 시스템을 설계하는 데 유연성을 적용할 수 있다. 더 나은 부하 평형 및 그 결과 더 나은 성능을 위해 디스크 전체에 걸쳐 패리티를 분산시키는 것이 유리하다. 도 4는 패리티가 시스템의 모든 디스크에 걸쳐 분산되는 본 발명에 따른 패리티 보호형 미러식 어레이 기술을 이용하는 예시적인 시스템(400)을 도시하고 있다. 이 시스템은 총 7개의 디스크를 포함한다. 패리티는 7개 디스크 전체에 걸쳐 분산된다.
도 5는 시스템의 모든 디스크에 걸쳐서 패리티 및 예비 공간이 분산되는 본 발명에 따른 패리티 보호형 미러 어레이 기술을 이용하는 예시적인 시스템(500)을 도시하고 있다.
도 6은 정렬된 장해 경계의 원리를 염두하여, 시스템의 모든 디스크에 걸쳐서 패리티 및 예비 공간이 분산되고, 대칭적인 본 발명의 패리티 보호형 미러식 어레이 기술을 이용하는 또 다른 예시적인 시스템(600)을 도시하고 있다. 시스템(600)은 장해 허용이라는 관점에서 전술한 이점을 제공하지만, 장해 경계가 정렬됨으로써 예시적인 시스템(500)과 상이한 특징을 갖는다.

Claims (11)

  1. n개의 물리적 디스크의 데이터 값을 저장할 수 있는 2n+1개의 물리적 디스크를 갖는 디스크 어레이에 데이터를 저장하는 방법으로서,
    상기 n개의 물리적 디스크 상에서 적어도 하나의 데이터 스트라이프에 데이터를 저장하는 단계로서, 각 데이터 스트라이프는 스트립이라고 불리는 동일한 사이즈의 n개의 그룹으로 분할되어 상기 n개의 물리적 디스크에 걸쳐서 분산되는 것인 데이터 저장 단계와,
    각 데이터 스트라이프마다 패리티 스트립을 생성하는 단계로서, 각 데이터 스트라이프의 데이터 스트립은 대응하는 생성된 패리티 스트립에 한번만 포함되는 것인 패리티 스트립 생성 단계와,
    각 데이터 스트라이프의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립을 상기 디스크 어레이의 2n+1개의 물리적 디스크에 걸쳐서 분산시키는 단계를 포함하고,
    상기 각 데이터 스트라이프의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 상기 디스크 어레이의 각기 다른 디스크 상에 있는 것인 데이터 저장 방법.
  2. 제1항에 있어서, 데이터는 복수의 데이터 스트라이프에 저장되고, 복수의 패리티 스트립은 상기 2n+1개의 물리적 디스크에 걸쳐서 균등하게 분산되는 것인 데이터 저장 방법.
  3. 제1항에 있어서, 상기 디스크 어레이는 적어도 하나의 예비적 물리 디스크를 더 포함하고,
    상기 각 데이터 스트라이프의 데이터 스트립을 분산시키는 단계는 상기 각 데이터 스트라이프의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립을 상기 디스크 어레이의 2n+1개의 물리적 디스크 및 각 예비 디스크에 걸쳐서, 분산시키는 단계를 포함하고, 상기 각 데이터 스트라이프의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 상기 디스크 어레이의 각기 다른 디스크 상에 있는 것인 데이터 저장 방법.
  4. n개의 물리적 디스크의 데이터 값을 저장할 수 있는 2n+1개의 물리적 디스크를 포함하는 디스크 어레이로서, 데이터는 그 디스크 상에서 적어도 하나의 데이터 스트라이프에 저장되고, 각 데이터 스트라이프는 n개의 동일한 사이즈의 스트립으로 분할되고 그 n개의 물리적 디스크에 걸쳐서 분산되며, 각 데이터 스트라이프는 대응하는 패리티 스트립을 갖는데, 이 패리티 스트립은 생성 시에 한번만 각각의 데이터 스트립을 포함하며,
    각 데이터 스트라이프마다의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 상기 디스크 어레이의 2n+1개의 물리적 디스크에 걸쳐서 분산되며, 상기 각 데이터 스트라이프마다의 데이터 스트립, 그 각 데이터 스트립의 카피, 및 각 데이터 스트라이프마다 대응하는 패리티 스트립은 상기 디스크 어레이의 각기 다른 디스크 상에 있는 것인 디스크 어레이.
  5. 제4항에 있어서, 데이터는 복수의 데이터 스트라이프에 저장되고, 복수의 패리티 스트립은 상기 2n+1개의 물리적 디스크에 걸쳐서 균등하게 분산되는 것인 디스크 어레이.
  6. 제4항에 있어서, 상기 디스크 어레이 적어도 하나의 예비적 물리 디스크를 더 포함하고,
    각 데이터 스트라이프마다의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립은 상기 디스크 어레이의 2n+1개의 물리적 디스크 및 각 예비 디스크에 걸쳐서, 상기 각 데이터 스트라이프마다의 데이터 스트립과, 그 각 데이터 스트립의 카피와, 각 데이터 스트라이프마다 대응하는 패리티 스트립이 각각 상기 디스크 어레이의 각기 다른 디스크 상에 있도록 분산되는 것인 디스크 어레이.
  7. 삭제
  8. 적어도 하나의 디스크가 호스트 데이터 처리 시스템에게 보여지는 복수의 디스크를 포함하는 디스크 어레이 시스템으로서, 상기 디스크 어레이 시스템은 복수의 디스크에 대해 2회의 판독 동작만, 그리고 복수의 디스크에 대해 3회의 기록 동작만 수행함으로써 상기 호스트 데이터 처리 시스템으로부터의 호스트 데이터 기록 요구에 응답하고, 상기 디스크 어레이 시스템은 상기 복수의 디스크 중 임의의 2개의 디스크에 장해가 있을 경우에, 저장된 모든 데이터를 복구할 수 있는 것인 디스크 어레이 시스템.
  9. 제8항에 있어서, 상기 복수의 디스크는 데이터, 그 데이터의 전체 카피, 그 데이터의 적어도 하나의 서브세트에 대하여 계산된 패리티 데이터를 저장하는 것인 디스크 어레이 시스템.
  10. 제8항에 있어서, 상기 복수의 디스크의 적어도 하나의 디스크는 예비 디스크이고, 각 예비 디스크가 제공하는 예비 공간은 상기 복수의 디스크 사이에 균등하게 분산되는 것인 디스크 어레이 시스템.
  11. 제8항에 있어서, 상기 복수의 디스크는 2개의 서브어레이로 구획화되고,
    상기 디스크 어레이 시스템은 각기 서브어레이를 제어하는 컨트롤러를 더 포함하는 것인 디스크 어레이 시스템.
KR1020057006785A 2002-11-01 2003-10-17 디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의이중 디스크 장해를 허용하는 방법 및 수단 KR100690429B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/286,197 2002-11-01
US10/286,197 US7085953B1 (en) 2002-11-01 2002-11-01 Method and means for tolerating multiple dependent or arbitrary double disk failures in a disk array

Publications (2)

Publication Number Publication Date
KR20050062629A KR20050062629A (ko) 2005-06-23
KR100690429B1 true KR100690429B1 (ko) 2007-03-12

Family

ID=32228819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057006785A KR100690429B1 (ko) 2002-11-01 2003-10-17 디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의이중 디스크 장해를 허용하는 방법 및 수단

Country Status (10)

Country Link
US (1) US7085953B1 (ko)
EP (1) EP1556763B1 (ko)
JP (1) JP4516846B2 (ko)
KR (1) KR100690429B1 (ko)
CN (1) CN100337209C (ko)
AT (1) ATE321300T1 (ko)
AU (1) AU2003271982A1 (ko)
CA (2) CA2503129C (ko)
DE (1) DE60304194T2 (ko)
WO (1) WO2004040450A1 (ko)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7640484B2 (en) * 2001-12-28 2009-12-29 Netapp, Inc. Triple parity technique for enabling efficient recovery from triple failures in a storage array
US20050240584A1 (en) * 2004-04-21 2005-10-27 Hewlett-Packard Development Company, L.P. Data protection using data distributed into snapshots
US7240237B2 (en) * 2004-05-25 2007-07-03 Lsi Corporation Method and system for high bandwidth fault tolerance in a storage subsystem
US7350102B2 (en) * 2004-08-26 2008-03-25 International Business Machine Corporation Cost reduction schema for advanced raid algorithms
GB2418769B (en) * 2004-10-02 2009-06-17 Hewlett Packard Development Co Method and system for storing data
JP2006171957A (ja) * 2004-12-14 2006-06-29 Fujitsu Ltd ストレージ制御装置および方法
JP4761978B2 (ja) * 2006-01-20 2011-08-31 中国電力株式会社 ハードディスク冗長管理装置、方法、プログラムおよび監視制御システム
US7669076B2 (en) * 2006-05-30 2010-02-23 Oracle International Corporation Estimating data availability on managed storage devices
US7565575B2 (en) * 2006-05-30 2009-07-21 Oracle International Corporation Selecting optimal repair strategy for mirrored files
JP4985647B2 (ja) * 2006-09-29 2012-07-25 富士通株式会社 修復プログラム、修復装置および修復方法
WO2008070803A1 (en) 2006-12-06 2008-06-12 Fusion Multisystems, Inc. (Dba Fusion-Io) Apparatus, system, and method for managing data from a requesting device with an empty data token directive
US20090055682A1 (en) * 2007-07-18 2009-02-26 Panasas Inc. Data storage systems and methods having block group error correction for repairing unrecoverable read errors
US8484506B2 (en) * 2008-11-29 2013-07-09 Lsi Corporation Redundant array of independent disks level 5 (RAID 5) with a mirroring functionality
CN101533336B (zh) * 2009-04-15 2010-08-25 杭州华三通信技术有限公司 磁盘冗余阵列存储系统和方法
US8560879B1 (en) * 2009-04-22 2013-10-15 Netapp Inc. Data recovery for failed memory device of memory device array
CN101625880B (zh) * 2009-08-14 2011-07-20 杭州华三通信技术有限公司 实现磁盘冗余阵列之间数据复制的控制方法和装置
CN101692227B (zh) * 2009-09-25 2011-08-10 中国人民解放军国防科学技术大学 大规模高可靠的归档存储系统构建方法
CN101719086B (zh) * 2009-11-30 2012-10-03 成都市华为赛门铁克科技有限公司 磁盘阵列容错处理方法和装置及容错系统
US9582345B2 (en) * 2009-12-14 2017-02-28 Appfolio, Inc. Systems and methods for importing data from data sources over a network while correcting and transforming the data
JP5534024B2 (ja) * 2010-10-21 2014-06-25 富士通株式会社 ストレージ制御装置およびストレージ制御方法
CN102033716B (zh) * 2010-12-01 2012-08-22 北京同有飞骥科技股份有限公司 一种双磁盘容错的节能型磁盘阵列的构建方法
CN102023819B (zh) * 2010-12-01 2012-08-22 北京同有飞骥科技股份有限公司 一种双磁盘容错水平型分组并行访问磁盘阵列的构建方法
CN102023820B (zh) * 2010-12-01 2012-08-22 北京同有飞骥科技股份有限公司 一种双磁盘容错垂直型分组并行访问磁盘阵列的构建方法
CN102053881B (zh) * 2011-01-07 2013-01-23 杭州电子科技大学 一种基于内容的Zip文件雕复方法
CN102053880B (zh) * 2011-01-07 2012-08-08 杭州电子科技大学 一种基于内容的Rar文件雕复方法
CN102033794A (zh) * 2011-01-10 2011-04-27 中国电子科技集团公司第五十二研究所 一种flash固态盘数据冗余保护方法
US9058291B2 (en) 2011-02-28 2015-06-16 International Business Machines Corporation Multiple erasure correcting codes for storage arrays
US8433979B2 (en) 2011-02-28 2013-04-30 International Business Machines Corporation Nested multiple erasure correcting codes for storage arrays
US9430367B1 (en) * 2011-04-18 2016-08-30 American Megatrends, Inc. Systems and methods for active raid
KR101566467B1 (ko) * 2011-11-02 2015-11-05 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 데이터 복원을 용이하게 하기 위한 트리플 패리티 인코딩
US8874995B2 (en) 2012-02-02 2014-10-28 International Business Machines Corporation Partial-maximum distance separable (PMDS) erasure correcting codes for storage arrays
CN104756092A (zh) * 2012-10-19 2015-07-01 富士通株式会社 记录再生装置、错误订正方法以及控制装置
CN103186437A (zh) * 2013-04-02 2013-07-03 浪潮电子信息产业股份有限公司 一种混合磁盘阵列系统的升级方法
CN103488434A (zh) * 2013-09-23 2014-01-01 浪潮电子信息产业股份有限公司 一种加强磁盘阵列可靠性的方法
JP6369298B2 (ja) 2014-11-13 2018-08-08 富士通株式会社 ストレージプログラム、ストレージシステム、ストレージ方法、及びストレージ装置
CN104809035B (zh) * 2015-05-05 2017-07-28 中国科学技术大学 一种能快速单盘修复的存储系统构建方法
US9996463B2 (en) * 2015-11-10 2018-06-12 International Business Machines Corporation Selection and placement of volumes in a storage system using stripes
CN108595988A (zh) * 2018-04-27 2018-09-28 成都信息工程大学 一种可同时加密并容错的硬盘
US11868637B2 (en) * 2020-06-15 2024-01-09 Dell Products L.P. Flexible raid sparing using disk splits
US11829269B2 (en) * 2021-01-28 2023-11-28 EMC IP Holding Company LLC Storage array disk recovery
CN114510379B (zh) * 2022-04-21 2022-11-01 山东百盟信息技术有限公司 一种分布式阵列视频数据存储装置
CN117420969B (zh) * 2023-12-19 2024-04-16 中电云计算技术有限公司 一种分布式数据存储方法、装置、设备及存储介质

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4761785B1 (en) 1986-06-12 1996-03-12 Ibm Parity spreading to enhance storage access
US5129088A (en) * 1987-11-30 1992-07-07 International Business Machines Corporation Data processing method to create virtual disks from non-contiguous groups of logically contiguous addressable blocks of direct access storage device
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5258984A (en) 1991-06-13 1993-11-02 International Business Machines Corporation Method and means for distributed sparing in DASD arrays
US5333305A (en) 1991-12-27 1994-07-26 Compaq Computer Corporation Method for improving partial stripe write performance in disk array subsystems
US5579474A (en) 1992-12-28 1996-11-26 Hitachi, Ltd. Disk array system and its control method
US5392244A (en) * 1993-08-19 1995-02-21 Hewlett-Packard Company Memory systems with data storage redundancy management
US5572660A (en) 1993-10-27 1996-11-05 Dell Usa, L.P. System and method for selective write-back caching within a disk array subsystem
JP3078972B2 (ja) * 1993-11-05 2000-08-21 富士通株式会社 ディスクアレイ装置
US5485571A (en) * 1993-12-23 1996-01-16 International Business Machines Corporation Method and apparatus for providing distributed sparing with uniform workload distribution in failures
US5522032A (en) * 1994-05-05 1996-05-28 International Business Machines Corporation Raid level 5 with free blocks parity cache
US6449730B2 (en) 1995-10-24 2002-09-10 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US5862312A (en) 1995-10-24 1999-01-19 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US5862158A (en) * 1995-11-08 1999-01-19 International Business Machines Corporation Efficient method for providing fault tolerance against double device failures in multiple device systems
US5708771A (en) 1995-11-21 1998-01-13 Emc Corporation Fault tolerant controller system and method
US5720025A (en) 1996-01-18 1998-02-17 Hewlett-Packard Company Frequently-redundant array of independent disks
US6076142A (en) * 1996-03-15 2000-06-13 Ampex Corporation User configurable raid system with multiple data bus segments and removable electrical bridges
US5805788A (en) 1996-05-20 1998-09-08 Cray Research, Inc. Raid-5 parity generation and data reconstruction
US6353895B1 (en) 1998-02-19 2002-03-05 Adaptec, Inc. RAID architecture with two-drive fault tolerance
US6279138B1 (en) * 1998-08-04 2001-08-21 International Business Machines Corporation System for changing the parity structure of a raid array
US6327672B1 (en) 1998-12-31 2001-12-04 Lsi Logic Corporation Multiple drive failure tolerant raid system
US6334168B1 (en) 1999-02-19 2001-12-25 International Business Machines Corporation Method and system for updating data in a data storage system
JP2001043031A (ja) 1999-07-30 2001-02-16 Toshiba Corp 分散パリティ生成機能を備えたディスクアレイ制御装置
US6845472B2 (en) * 2000-01-25 2005-01-18 Hewlett-Packard Development Company, L.P. Memory sub-system error cleansing

Also Published As

Publication number Publication date
CN100337209C (zh) 2007-09-12
JP4516846B2 (ja) 2010-08-04
DE60304194T2 (de) 2006-12-28
EP1556763B1 (en) 2006-03-22
CA2503129C (en) 2011-08-09
ATE321300T1 (de) 2006-04-15
US7085953B1 (en) 2006-08-01
EP1556763A1 (en) 2005-07-27
WO2004040450A1 (en) 2004-05-13
CA2739639A1 (en) 2004-05-13
JP2006505035A (ja) 2006-02-09
CA2503129A1 (en) 2004-05-13
KR20050062629A (ko) 2005-06-23
CN1692335A (zh) 2005-11-02
DE60304194D1 (de) 2006-05-11
AU2003271982A1 (en) 2004-05-25

Similar Documents

Publication Publication Date Title
KR100690429B1 (ko) 디스크 어레이 내에 다중 종속 디스크 장해 또는 임의의이중 디스크 장해를 허용하는 방법 및 수단
JP5285610B2 (ja) グローバルホットスペアディスクが存在するときに、故障したドライブを復元、及びコピーバックする最適化された方法
US7356644B2 (en) Apparatus and method for providing very large virtual storage volumes using redundant arrays of disks
US8839028B1 (en) Managing data availability in storage systems
US5315602A (en) Optimized stripe detection for redundant arrays of disk drives
JP5285611B2 (ja) グローバルホットスペアディスクが存在するときに、切断されたドライブを復元、及びコピーバックする最適化された方法
JP2000207136A (ja) 複数ドライブ故障トレラントraidアルゴリズム
US20080016416A1 (en) Autonomic Parity Exchange
US8386891B2 (en) Anamorphic codes
GB2414592A (en) Decreasing failed disk reconstruction time in a RAID data storage system
US20060190763A1 (en) Redundant storage array method and apparatus
US20050091452A1 (en) System and method for reducing data loss in disk arrays by establishing data redundancy on demand
US8402213B2 (en) Data redundancy using two distributed mirror sets
US10210062B2 (en) Data storage system comprising an array of drives
US20050193273A1 (en) Method, apparatus and program storage device that provide virtual space to handle storage device failures in a storage system
US20110202721A1 (en) Redundant array of independent storage
US11592994B2 (en) Providing preferential treatment to metadata over user data
JP7056874B2 (ja) 制御装置、ディスクアレイ装置、制御方法、及びプログラム
Lin Remote Data Backup System For Disaster Recovery

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120201

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130124

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee