JP2001147785A - データを管理する方法 - Google Patents

データを管理する方法

Info

Publication number
JP2001147785A
JP2001147785A JP2000301649A JP2000301649A JP2001147785A JP 2001147785 A JP2001147785 A JP 2001147785A JP 2000301649 A JP2000301649 A JP 2000301649A JP 2000301649 A JP2000301649 A JP 2000301649A JP 2001147785 A JP2001147785 A JP 2001147785A
Authority
JP
Japan
Prior art keywords
data
raid
disk
redundancy
storage
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2000301649A
Other languages
English (en)
Inventor
Beruhadei Mohamed
モハメド・ベルハディ
D Daniels Roger
ロジャー・ディー・ダニエルズ
K Anberger David
ディビッド・ケー・アンバーガー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JP2001147785A publication Critical patent/JP2001147785A/ja
Pending legal-status Critical Current

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/1092Rebuilding, e.g. when physically replacing a failing disk

Abstract

(57)【要約】 【課題】データ冗長方式を使用する階層型データ記憶シ
ステムにおいて、データ再構築中のデータ損失の可能性
を最小化する方法を提供する。 【解決手段】データ管理システムは、記憶装置の故障に
応答して、記憶システムにて同定された最も弱いデータ
冗長方式に基づき、データ再構築の優先順位付けをす
る。データ再構築の優先順位付けは、最も弱いデータ冗
長方式の再構築を、システム中の他のデータ冗長方式の
再構築よりも優先して行うステップを含む。最も弱いデ
ータ冗長方式は、記憶システム内の各データ冗長方式の
再構築によって防ぐことができるデータを損失する確率
を、そのシステム中の1つ以上のディスクが次に故障す
る可能性という観点から比較することによって、決定さ
れる。各データ冗長方式に対するデータ損失の確率は、
記憶システムおよび記憶装置に付随した特性を考慮し
て、決定される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、コンピュ
ータ大容量記憶システムに関連し、特に、独立ディスク
冗長アレイ(Redundant Array of Independent Disks:
RAID)を利用した階層型システムにおけるディスク
故障時の、データ再構築の優先順位付け方法に関する。
【0002】
【従来の技術】従来のディスクアレイ方式データ記憶シ
ステムは複数のディスク記憶装置を有しており、これら
が、単一の大容量記憶システムを形成するように配置さ
れまた協調して動作する。独立ディスク冗長アレイ(R
AID)システムとは、多様なレベルのデータ・アベイ
ラビリティおよびシステムの性能を得るために、ハード
ディスクドライブのような大容量データ記憶装置のアレ
イにおいて、データの編成を行うことである。ここで、
データ・アベイラビリティとは、データ記憶装置のアレ
イ中の個々のデータ記憶装置または構成要素のうちの1
つまたはそれ以上が故障している場合でも、データ記憶
装置のアレイ中のデータを読み書きするRAIDシステ
ムの能力を指している。システムパフォーマンスの測定
は、RAIDシステムへのデータの送受信の速度で測ら
れる。
【0003】データ・アベイラビリティは、データ、ま
たはデータ間の関係を記憶システム中の複数の箇所に記
憶しておく冗長方式を使用して提供されることが多い。
ディスクまたは構成要素が故障したときには、冗長デー
タがシステムの操作可能な部分から引き出されて、故障
により失われたオリジナルデータを再生するために使用
される。冗長データの記憶には、一般的にミラーおよび
パリティという2つの方法がある。ミラー冗長では、デ
ータは複製されて、記憶システムの2つ以上の別個のエ
リアに記憶される。パリティ冗長では、冗長データは記
憶システムの1つまたはそれ以上のエリアに記憶される
が、冗長記憶エリアの容量は、オリジナルデータを記憶
している記憶空間よりも小さくなる。
【0004】代表的なRAIDシステムでは、ミラーで
あろうとパリティであろうと冗長データの記憶用に、ア
レイ中の物理的記憶容量の一部を指定する。これら冗長
情報により、アレイの構成メンバであるディスク、構成
要素、あるいは単数または複数のディスクへのアクセス
パスが故障した時に、ユーザデータを再生成することが
可能になる。代表的には、ディスクは「ブロック」と呼
ばれる等しいサイズのアドレスエリアに分割されてい
る。各ディスクに渡り同じユニットアドレスを有するブ
ロックのセットは、「ストライプ」または「ストライプ
セット」と呼ばれる。アレイ中にて、一つのストライプ
またはストライプセットが存在しているディスクのセッ
ト(またはサブセット)は、冗長グループと呼ばれる。
冗長グループ間で冗長方式が異なっていても構わない
が、一般的には、RAIDアレイは、1つ以上の冗長グ
ループと、冗長グループ毎に一つの冗長方式とを使用す
る。それに対し、本願明細書中で後述されるように、階
層型RAIDアレイは、アレイ中の各冗長グループに対
して、1つまたはそれ以上の冗長方式(すなわちRAI
Dレベル)を使用する。
【0005】データ管理およびデータの冗長性の観点か
ら、RAIDレベルは、普通RAIDレベル1〜6と呼
ばれる6つのアーキテクチャまたは冗長方式の1つとし
て特徴付けられる。RAIDレベルは他にも存在する
が、レベル1〜6が最も一般的に使用されており、本発
明に関連して本願明細書の中で説明される。しかし、本
発明が、任意のRAIDレベルまたはデータ冗長方式に
対して適用可能であることに留意されたい。
【0006】ディスクのミラーリングの使用はRAID
レベル1と呼ばれ、オリジナルデータがディスクの1セ
ットに記憶される一方で、そのデータの複製コピーが別
のディスクに保存される。パリティチェックを使用する
ものは、RAIDレベル2、3、4、5、および6と呼
ばれる。概して、RAID2、3、4、および5に比べ
てRAID1のほうが、データの信頼性が高く、小さい
書き込みI/Oという優れた性能もあるが、全データが
複製されるために最も多くの記憶空間を使用する。対照
的に、RAIDレベル2〜5では、データの信頼性は
(RAID1に比して)低く、一般には小さい書き込み
という性能も低下している。しかしながら、データを複
製しない代わりにストライプセット中のディスクアレイ
に渡ってインターリーブされてパリティチェックされる
ので、RAID1技術ほど多くのディスク空間を消費し
ないで済む。パリティストライプセットは、複数のメン
バディスク上のデータおよび冗長(パリティ)データを
インターリーブする。パリティストライプセットは単一
の仮想ディスクを構成するが、そのユーザデータ容量
は、そのメンバの容量の合計にほぼ等しく、ユーザデー
タのパリティ(冗長)データを保持するために使用され
る記憶よりは少ない。RAIDレベル3〜5に対して
は、パリティは、普通は、全データディスクからのスト
ライプセット中の対応するデータチャンクを、ビット毎
に排他的OR関数を使用して計算される。これは、一
式、一未知数の積和計算に対応する。RAID1アーキ
テクチャにおけるミラーセットは単一の仮想ディスクを
構成するが、そのユーザデータ容量は、そのメンバのう
ち2分の1の容量の合計であり、残りの半分は、ユーザ
データのミラー(冗長)データを保持している。
【0007】RAIDミラーレベル1に加えて、RAI
Dパリティレベル4、5、および6が、本願で特に注目
される。具体的には、例えば、RAID4は、1つのス
トライプセットまたは冗長グループと単一の専用パリテ
ィディスクとを使用して、そのストライプセットまたは
冗長グループの他のデータディスクに存在しているデー
タについての冗長情報を記憶する。各仮想ディスクセク
タからのデータのセグメントは、1つ(すなわちパリテ
ィディスク)を除いてすべてのストライプセットメンバ
の対応するセクタに分配され、分配されたセグメントの
パリティは、パリティディスクの対応するセクタに書き
込まれる。
【0008】RAID4システムは、全てのパリティブ
ロックをストライプセット内のただ一つのユニットに記
憶しているので、パリティブロックを含むそのユニット
一つだけが、ストライプセットまたは冗長グループ内の
他のデータ記憶装置と比較して不釣合いな頻度でアクセ
スされる。その結果として生じるRAID4システムに
おけるデータフローの集中を回避するために、RAID
5アーキテクチャでは、パリティブロックを、ストライ
プセットまたは冗長グループ内の全データ記憶装置にわ
たって分配している。通常、RAID5システムでは、
N+1個のデータ記憶装置のセットが、ストライプセッ
トまたは冗長グループを形成している。各ストライプ
が、N個のデータブロックと1つのパリティデータブロ
ックとを有している。パリティデータブロックは、N+
1個のデータ記憶装置のうち1つに記憶される。ストラ
イプセットまたは冗長グループのうち残りのストライプ
に対応するパリティブロックは、そのストライプセット
または冗長グループ内のデータ記憶装置にわたって記憶
される。例えば、所与のストライプセットまたは冗長グ
ループ中に5つのデータ記憶装置を使用するRAID5
システムでは、ブロックの第1ストライプに対するパリ
ティブロックが第5の装置に、ブロックの第2ストライ
プに対するパリティブロックが第4の装置に、ブロック
の第3ストライプに対するパリティブロックが第3の装
置に、などのように書き込まれてもよい。代表的なパタ
ーンでは、連続するブロックに対するパリティブロック
の位置は、そのストライプセットまたは冗長グループ内
の連続する論理装置へと移動するが、他のパターンも使
用可能である。
【0009】RAID6アーキテクチャでは、RAID
4および5と同様にデータがストライプされるが、オリ
ジナルデータに対して、2つの独立しており別個のパリ
ティ値(本願明細書ではPおよびQと称する)を使用す
る点で異なっている。Pパリティは、普通は、全データ
ディスクからの1つのストライプにおける対応するデー
タチャンクを、ビット毎に排他的OR関数を使用して計
算される。これは、一式、一未知数の積和計算に対応す
る。一方、Qパリティは、Pとは独立して線形に計算さ
れるが、この場合にも積和計算に関する異なるアルゴリ
ズムを使用する。結果として、各パリティ値は独立した
アルゴリズムを用いて計算され、各々が、そのストライ
プセットまたは冗長グループにおける別個のディスク上
に記憶される。そのために、RAID5システムでは、
あるストライプセットまたは冗長グループ内でディスク
故障が1つだけ生じている場合にのみ、データを再構築
することができるのに対して、RAID6システムで
は、1つのストライプセットまたは冗長グループ内で2
つの別個のディスクが故障している場合であっても、
(再構築のための空間が利用可能であるとすれば)デー
タの再構築が可能である。
【0010】RAID5と同様に、RAID6アーキテ
クチャでは、2つのパリティブロックを、ストライプセ
ットまたは冗長グループ内の全データ記憶装置にわたっ
て分配している。これより、N+2個のデータ記憶装置
からなるストライプセットまたは冗長グループでは、各
ストライプはN個のデータブロックと独立したパリティ
データの2つのデータブロックとを有している。パリテ
ィデータブロックの1つは、N+2個のデータ記憶装置
の1つに記憶されており、他方のパリティデータブロッ
クは、N+2個のデータ記憶装置のうちの別の1つに記
憶されている。ストライプセットまたは冗長グループ中
の残りのストライプに対応するパリティブロックは、そ
のストライプセットまたは冗長グループ内のデータ記憶
装置にわたって記憶される。例えば、所与のストライプ
セットまたは冗長グループ中で5つのデータ記憶装置を
使用するRAID6システムでは、ブロックの第1スト
ライプに対するパリティブロックが第4および第5の装
置に、ブロックの第2ストライプに対するパリティブロ
ックが第3および第4の装置に、ブロックの第3ストラ
イプに対するパリティブロックが第2および第3の装置
に、などのように書き込まれてもよい。この場合もま
た、代表的なパターンでは、連続するブロックに対する
パリティブロックの位置は、そのストライプセットまた
は冗長グループ内の連続する論理装置へと移動するが、
他のパターンも使用可能である。
【0011】RAIDシステムのアーキテクチャおよび
性能に関しては1993年6月9日に発行された、RA
IDアドバイサリー・ボードによる「The RAID Book: A
Source Book for RAID Technology」に詳細な情報があ
り、その開示内容は、参照によって本願明細書中で援用
される。加えて、RAIDシステムの背景的な議論、お
よび論理的に区分されたRAIDシステムに対するさま
ざまな方法が、デービッド・C・スタルモ(David C. S
tallmo)に対する「冗長アレイ記憶システムの論理区分
(Logical Partitioning of a Redundant Array Storag
e System)」という米国特許第5,519,844号に
説明されており、その内容は参照によって本願明細書中
で援用される。
【0012】階層型データ記憶システムでは、1つまた
はそれ以上の異なる技術、つまり、異なる冗長方式、R
AIDレベル、冗長グループ、またはこれらの組み合わ
せを用いて、データを記憶することを許容している。例
えば、階層型RAIDシステムでは、データは、1つま
たはそれ以上の冗長グループに記憶することができる
し、また、冗長グループ毎に、冗長化技術の利点と欠点
とのトレードオフをする目的で1つ以上のRAIDアー
キテクチャ(レベル)にしたがって記憶することもでき
る。開示の目的で、階層型システムには、(1)システ
ムのチューニングおよびパフォーマンスを最適にするた
めに、冗長方式(すなわち異なるRAIDレベル)およ
び/または冗長グループ間でデータを自動的または動的
に移動させるもの、および(2)ユーザがシステムアレ
イ内の特定のディスクセットまたはサブセットを有する
所与のRAIDレベルを指定する必要があるもののよう
な、冗長方式またはグループを構成するためにユーザ入
力を必要とするもの、が含まれる。
【0013】ジェーコブソンら(Jacobson et al.)の
米国特許第5,392,244号「データ記憶冗長性管
理を有するメモリシステム(Memory Systems with Data
Storage Redundancy Management)」には、データ記憶
状態および空間が変化を要求すると、あるRAIDタイ
プから別のRAIDタイプへデータを移動させることが
できる階層型RAIDシステムが開示されているが、そ
の内容は参照によって本願明細書中で援用される。この
特許は、マルチレベルRAIDアーキテクチャを開示し
ており、そのアーキテクチャでは、物理的記憶空間が、
ミラーエリアおよびパリティRAIDエリア(例えばR
AID1およびRAID5)を有するRAIDレベルの
仮想記憶空間にマッピングされる。RAIDレベル仮想
記憶空間は、その後アプリケーションレベル仮想記憶空
間にマッピングされる。この空間は、ユーザに記憶空間
を提供するが、それは1つの大きく連続的にアドレス可
能な空間である。動作中には、ユーザ記憶がアプリケー
ションレベル仮想記憶空間での変化を要求すると、その
変化を受け入れるために、RAIDレベル仮想空間にお
いてミラーRAIDエリアとパリティRAIDエリアと
の間でデータを移動させることができる。例えば、一旦
はミラー冗長にしたがって記憶されたデータが、移動し
てパリティ冗長を使用して記憶されてもよく、その逆も
可能である。
【0014】データ移動により、管理者は、動作条件を
明確にし且つ論理記憶ユニット(すなわちLUN)を組
むにあたって、絶大なフレキシビリティを得ることがで
きる。一例として、このタイプのRAIDシステムは、
最初は、最適性能を有するRAID1の構成にしたがっ
てユーザデータを記憶することができる。ユーザデータ
がストライプセットまたは冗長グループのアレイ容量の
50%に近付き、さらにこれを越えると、システムは、
RAID1およびRAID5にしたがってデータを記憶
し始め、記憶装置が変更を要求したら、連続的な方法で
RAID1とRAID5との間で動的にデータを移動さ
せることができる。動作中の任意の時点で、データは、
全ディスク上に、RAID1またはRAID5、あるい
はその両方として記憶されうる。RAID1記憶および
RAID5記憶の割合は、データの入出力および記憶容
量と共に動的に変化する。これにより、システムは、ユ
ーザデータ量の増加に対して、性能および使用可能容量
を動的に最適化することができる。
【0015】各RAIDレベルがコストパフォーマンス
とコストキャパシティとの割合においてそれぞれ特徴を
有しているのは明らかである。しかし、重要なことは、
RAIDシステムが冗長データを維持および管理して、
記憶ディスクまたは構成要素の故障時にデータを回復す
ることができるということである。これに関して、各R
AIDレベルはまた、使用されているディスクの数の関
数としてデータ損失までの平均時間を決定する特徴的な
アベイラビリティを有している。すなわち、RAIDレ
ベルが異なれば、データ保護の度合も異なるということ
である。ディスクまたは構成要素の故障時には、冗長デ
ータは、システムの動作可能部分から引き出されて、そ
の構成要素またはディスクの故障のために失われたオリ
ジナルデータの再生または再構築のために使用される。
具体的には、RAID冗長グループ内のあるディスクが
故障すると、アレイは、再構築の終了後に、冗長グルー
プがデータの損失無しにもう一度ディスクの故障に耐え
られるように、(空間が利用可能だと仮定して)その冗
長グループ内の無事なディスク上にデータを再構築しよ
うとする。システムの設計により、再構築は自動化され
ているときもあり、ユーザの入力を必要とするときもあ
る。再構築に影響を与える設計ファクタには、例えば、
スペアディスクがアレイ中で特定されているかどうか、
または故障したディスクがユーザによって手作業で取り
換えられなければならないか、等が含まれる。
【0016】
【発明が解決しようとする課題】再構築設計とは無関係
に、ディスクまたは構成要素の故障検出後のデータ再構
築中において、システムは、再構築が完了する前に同じ
ストライプセットまたは冗長グループ内でのさらなるデ
ィスクまたは構成要素の故障が起こり得る状況に置かれ
たままである。どのRAIDシステムでも、データの弱
さは、そのデータに対して使用されているRAIDアー
キテクチャ(冗長方式)に依存するために、このことは
重要である。
【0017】例えば、RAID1記憶方式およびRAI
D5記憶方式を有する単一冗長グループ内の10個のデ
ィスクを使用し、各RAIDレベルが1つまたはそれ以
上のディスクで別個にまたは一緒に使用される可能性が
ある、階層型RAIDアレイを考える。RAID5記憶
は、各ディスク上の1ブロックサイズのデータストライ
プを含む。9つのディスクの各々は、ストライプの各ブ
ロックに実際のユーザデータを保持する。10番目のデ
ィスクは、冗長(パリティ)情報を含むストライプにお
けるデータブロックを保持する。1つのディスクが故障
すると、故障したディスク上のデータは、残っている9
つのディスク上のデータから再構築することができる。
その後に、オリジナルデータおよび再構築されたデータ
を、1つの新しいストライプにおける9つの残存してい
るディスクにわたって再書き込みすることができる(こ
れらのディスクの1つは、この新しいストライプにおけ
るパリティディスクに指定される)。しかし、RAID
5データを全て再構築して再書き込みする前に、9つの
残存ディスクのいずれかが故障したら、データは失われ
てしまうであろう。
【0018】この例のRAID1記憶に対して、10個
のディスクのうち第1のものに記憶されたデータは、ア
レイ内の第2のディスク上にのみ、そのミラーが作成さ
れる。第1のディスクが故障すると、第2のミラーディ
スクからの再構築中にデータが失われるのは、第2のミ
ラーディスクが故障したときのみである。他のディスク
が故障すると、アレイは、RAID1データを失うこと
はないが、RAID5データは失われる。
【0019】したがって、この例のRAID1およびR
AID5の階層記憶では、ディスク故障時の再構築中
に、RAID5記憶の方がRAID1記憶より弱い、す
なわちデータが失われる可能性がより大きい。しかし、
従来の階層型RAIDシステムでは、使用されるRAI
Dレベルの弱さとは関わりなく、データの再構築を行
う。
【0020】したがって、階層型RAIDシステムにお
ける再構築中のデータ損失の可能性を最小化するため
に、使用されている階層型RAIDレベルのデータアベ
イラビリティ特性を考慮に入れたデータの回復および再
構築の管理をする必要がある。
【0021】
【課題を解決するための手段】この発明の一面による
と、RAIDシステムのようなデータ冗長方式を使用す
る階層型データ記憶システムにおいて、記憶システムに
おけるディスク故障に応答してデータを管理する方法
は、記憶システムにて特定された最も弱いデータ冗長方
式に基づいて、データ再構築の優先順位付けをするステ
ップを含んでいる。データ再構築の優先順位付けは、最
も弱いデータ冗長方式の再構築を、システム中の他のい
ずれのデータ冗長方式の再構築よりも先に行うステップ
を含んでいる。最も弱いデータ冗長方式は、データ記憶
システム内の各データ冗長方式についての再構築によっ
て防ぐことができるデータを損失する確率を、そのシス
テム中の1つ以上のディスクが次に故障する可能性とい
う観点から比較することによって、決定される。各デー
タ冗長方式に対するデータ損失の確率は、記憶装置の
数、装置故障の回数、平均故障間隔、再構築のための平
均時間または計算時間、および故障依存性のような、ア
レイ中の記憶システムおよび記憶装置に付随した特性を
考慮することによって、決定される。
【0022】本発明は、さらに、上記の再構築優先順位
付け方法を具現しているデータ記憶システムおよび装置
を含んでいる。
【0023】本発明の他の目的、効果、および能力は、
説明が進むにつれて、さらに明らかになるであろう。
【0024】
【発明の実施の形態】図1は、階層型RAIDデータ記
憶システム10のブロック図であって、このシステム1
0は、システム中のあるデータへのアクセスが不可能に
なるようなディスクの故障、構成要素の故障、または他
のシステム故障の発生時に、データ再構築を優先順位付
けする本発明のシステム35および方法が使用されてい
る。データ記憶システム10はディスクアレイ15を含
んでおり、このディスクアレイ15は、複数の記憶ディ
スク20と、ディスクアレイ15に結合されて記憶ディ
スク20からおよび記憶ディスク20へのデータ転送を
調整するディスクアレイコントローラクラスタ25と、
階層型RAID管理システム30とを有している。RA
ID管理システム30は、アレイ15内のデータ記憶お
よび階層型RAIDレベル(冗長方式)を制御し、さま
ざまな階層型冗長方式の間でのデータの転送を制御す
る。重要なのは、RAID管理システム30は、本発明
によるデータ再構築優先順位付けシステム35を含んで
いることである。具体的に言えば、任意の記憶ディスク
20に対するディスクまたは構成要素の故障時には、デ
ータ再構築優先順位付けシステム35は、最も弱いRA
IDレベルにしたがった再構築を第一に優先順位付けす
ることによって、潜在的なデータ損失を最小化する。
【0025】「ディスク」とは、任意の不揮発性のラン
ダムアクセス可能で書き換え可能な大容量記憶装置であ
る。これには、回転する磁気的および光学的ディスクお
よび固体ディスクと、不揮発性電子記憶素子(PRO
M、EPROM、およびEEPROM等)との両方が含
まれる。「ディスクアレイ」とは、ディスクの集合体で
あって、それらを1つ以上のホストコンピュータに接続
するために必要とされるハードウエアと、物理ディスク
の動作を制御し、それらをホストの動作環境に対して1
つ以上の仮想ディスクとして提供するために使用される
管理ソフトウエアとを指す。「仮想ディスク」は、管理
ソフトウエアによってディスクアレイ内に実現される抽
象的な構成要素である。「記憶装置の故障」または「デ
ィスクの故障」とは、ディスク20のうち任意の1つ以
上のものへのアクセスができなくなったり、任意の1つ
以上のディスク上のデータへのアクセスができなくなっ
たりするような、システム10または構成要素の1つま
たは複数の態様、1つまたは複数の事象を含むものと、
定義される。典型的なディスク故障には、物理ディスク
20自身の実際の故障、単数または複数のディスクへの
読み書きアクセスに影響を与えるシステムまたは構成要
素の故障、単数または複数のディスクをアクセス不能に
する1つの事象またはその組み合わせ、あるいはアレイ
15からの1つまたは複数のディスクの取り外しも含ま
れる。「アレイ」とは、この文中では、記憶装置のセッ
トまたはサブセットを含むものと定義される。
【0026】ディスクアレイコントローラクラスタ25
は、スモールコンピュータシステムインターフェース
(SCSI)のような1つ以上のインターフェースバス
40を介してディスクアレイ15に結合されている。R
AID管理システム30は、インターフェースプロトコ
ル45を介して、ディスクアレイコントローラクラスタ
25に動作可能に結合されている。図示されているシス
テムでは、ディスクアレイコントローラクラスタ25
は、ディスクアレイコントローラ「A」25Aとディス
クアレイコントローラ「B」25Bとからなるデュアル
コントローラとして実現されている。デュアルコントロ
ーラ25Aおよび25Bは、一方のコントローラが動作
不能状態になったときに連続的なバックアップおよび冗
長性を提供することによって、信頼性を向上させてい
る。しかし、本発明は、3つ以上のコントローラ、単一
のコントローラ、または他のアーキテクチャを使用して
実施することも可能である。
【0027】好適な実施形態では、RAID管理システ
ム30およびデータ再構築優先順位付けシステム35
は、ディスクアレイコントローラクラスタ25の不揮発
性ランダムアクセスメモリ(NVRAM)25C、25
Dの内部のファームウエアとして構成されている。RA
ID管理システム30およびデータ再構築優先順位付け
システム35は、ディスク故障後のデータ再構築を含め
てコントローラクラスタ25およびアレイ15を管理す
るために必要な、および本願明細書中でさらに十分に論
じられる本発明に従った再構築の順序またはシーケンス
の優先順位付けおよび/または管理を行うために必要な
実行可能な指示、ルーチン、テーブル、および/または
他のデータならびにデータ構造を含んでいる。RAID
管理システム30およびデータ再構築優先順位付けシス
テム35は、単に描写および説明の明瞭化のために、コ
ントローラクラスタ25から別個に示されている。ある
いは、RAID管理システム30およびデータ再構築優
先順位付けシステム35は、ファームウエアまたはソフ
トウエアのいずれかとして(図示されているように)別
個の構成要素として具現化されてもよく、ホストコンピ
ュータ50のメモリ内に構成されてもよい。あるいは、
これらのシステムは、(ASICのような)ハードウエ
アに組み込まれた回路中で具現化されてもよい。データ
記憶システム10は、I/Oインターフェースバス55
を介してホストコンピュータ50に結合される。
【0028】本願明細書の開示内容は、一般的なRAI
D管理技術またはディスク故障時の実際のデータ再構築
技術に関しては、詳細には触れていないことに留意すべ
きである。これは、これらの技術が当該技術分野ではす
でに十分に良く知られており、開示されているからであ
る。むしろ、本発明の開示内容は、複数の(階層型)デ
ータ冗長レベルおよび/または冗長グループを使用した
アレイシステムの再構築の順序またはシーケンスを優先
順位付けおよび/または管理する実施形態および方法の
特定に、焦点を絞っている。加えて、RAIDシステム
が具体的に示され且つ説明されているが、本発明が任意
のデータ冗長方式、技術、グループ、またはシステムに
適用可能であることが、理解されるであろう。
【0029】階層型ディスクアレイ15は、物理的記憶
空間および1つ以上の仮想RAIDレベル記憶空間を含
む、複数の異なる記憶空間により特徴付けられる。これ
らの記憶の捉え方は、マッピング技術を通じて関係して
いる。具体的には、ディスクアレイ15の物理的記憶空
間は、さまざまなRAIDデータ信頼性レベル(冗長方
式)にしたがって記憶エリアを分割している仮想記憶空
間にマッピングされる。例えば、ディスクアレイ15中
の記憶ディスク20は、複数の冗長グループ60、6
5、70、75に配置されているというように概念化す
ることができる。これらの複数の冗長グループ60、6
5、70、75の各々は、定義されたディスク20のサ
ブセットを有しており、各冗長グループは、ストライプ
60A、60B、60C、65A、65B、65C、7
0A、70B、70C、および75A、75B、75C
を有するストライプセットに構成される。代表例として
4つの冗長グループ60、65、70、75が示されて
おり、これらの各々は0から「N」までのストライプを
有している。しかし、本発明においては、任意の数のグ
ループおよびストライプが使用可能である。
【0030】任意の所与の時刻にて、各ストライプは特
定のRAIDレベル冗長方式に割り当てられており、各
冗長グループは、そのストライプセット内の1つ以上の
RAIDレベルを含んでいる。好適な実施形態では、R
AID管理システム30は、記憶容量、データ信頼性、
および性能上の必要事項に依存して、ストライプおよび
冗長グループ間で冗長方式を移動させる。例えば、任意
の所与の時刻にて、冗長グループ60のストライプ0
(60A)をRAIDレベル1のミラー冗長と指定し、
ストライプ1(60B)およびストライプN(60C)
をRAIDレベル5のパリティ冗長と指定してもよい。
一方、冗長グループ65の全体をRAIDレベル6と指
定し、他の冗長グループ70および75を、RAIDレ
ベル2、3、4、5、または6を含む単一または複数の
冗長方式の任意の組み合わせと指定してもよい。重要な
ことは、説明したように、これらのRAIDレベルの各
々が、同じディスク上または別個のディスク上、あるい
はこれらの組み合わせの上に構成されても、その全てが
ディスクアレイ15内のストライプセットまたは冗長グ
ループの内部に構成されてもよいということである。
【0031】データ記憶システム10は、ディスクアレ
イ15をマッピングするために使用される仮想マッピン
グ情報を永続的に記憶するメモリマップ記憶を含んでい
る。このメモリマップ記憶はディスクアレイの外部に置
かれており、ディスクアレイコントローラクラスタ25
のメモリ25Cおよび25Dに冗長的に存在しているの
が好ましい。コントローラクラスタ25またはRAID
管理システム30は、異なる視点の間のさまざまなマッ
ピング構成の変化につれて、メモリマッピング情報を、
断続的にまたは定期的に更新することができる。
【0032】図示しているように、ディスクアレイ15
は複数の記憶ディスク駆動装置20を有しており、装置
20上のデータ冗長の管理は、RAID管理システム3
0によって調整される。ユーザまたはホストアプリケー
ションプログラムから見られたとき、アプリケーション
レベル仮想ビューは、アレイ15内の記憶ディスク20
上の利用可能な記憶空間を示す単一の大きな記憶容量に
なり得る。すでに述べたように、好適な実施形態では、
RAID管理システム30は、物理的記憶空間にわたっ
てRAIDエリアの構成を動的に変化させる。結果とし
て、RAIDレベル仮想ビュー内のRAIDエリアのデ
ィスク上へのマッピング、およびフロントエンド仮想ビ
ューのRAIDビューへのマッピングは、通常変化する
状態に置かれている。メモリ25Cおよび25Dにおけ
るメモリマップ記憶は、RAID管理システム30によ
ってRAIDエリアをディスク上にマッピングするため
に使用された現在のマッピング情報、並びに仮想ビュー
間でのマッピングに使用された情報とを維持する。RA
ID管理システムは、RAIDレベルマッピングを動的
に変化させるときに、その変化を反映させるためにメモ
リマップ記憶内のマッピング情報の更新も行う。
【0033】ここで重要なのは、ディスク20のうちの
いずれか1つ以上に関連するディスク故障時には、本発
明のデータ再構築優先順位付けシステム35が起動され
て、アレイ15内の冗長方式(すなわちRAIDレベ
ル)に優先順位を付けて、潜在的なデータ損失の可能性
を最小化するような方法でのデータ再構築ができるよう
になることである。具体的には、1つまたは複数のディ
スク故障に応答して、本発明は、各冗長グループにおけ
る冗長方式に優先順位を付け、最も弱いRAIDレベル
の記憶再構築を最初に行い、2番目に弱いRAIDレベ
ルを次に行うというように、記憶の再構築を行う。最も
弱い冗長方式(すなわちRAIDレベル)は、アレイ1
5内で再構築によって防ぐことができる潜在的なデータ
損失に対して、(アレイ中の1つ以上の記憶装置が次に
故障する可能性の観点から、その冗長グループ内の他の
任意のRAIDレベルと比較して、およびアレイ中の他
の任意の冗長グループ内における任意の他のRAIDレ
ベルと比較して)最も高い確率を有する冗長方式と定義
される。同じ冗長方式(すなわちRAIDレベル)が2
つ以上の別個の冗長グループで使用されている場合に
は、最も弱い冗長方式は、所与の冗長グループと比較し
て定義されてもよい。
【0034】優先順位付け技術は、使用されているかま
たは使用される可能性があるRAIDレベルまたは他の
データ冗長レベルには無関係に、アレイ15に適用され
る点で効果的である。1つまたは複数のディスク20が
故障したとすると、データの弱さは、再構築によって防
ぐことができるデータ損失の確率によって測定される。
好適な実施形態においては、データ再構築優先順位付け
システム35は、故障の影響を受けるデータを実際に再
構築するのではなく、むしろ、再構築の順序を特定して
優先順位を付け、RAID管理システム30が再構築を
実行している。
【0035】階層型アーキテクチャでは同じ1つまたは
複数のディスク20上に複数のRAIDレベルが存在し
ているため、あるいは、1つ以上の冗長グループ上に1
つ以上のRAIDレベルが存在しているために、ディス
ク故障の発生後に、再構築優先順位付けシステム35に
よってRAIDレベルの再構築を1つずつ行うようにす
ることで、実際にデータ損失に繋がりうる、連続したデ
ィスクの故障を減らすことができる。この状況では、R
AIDレベルが再構築される順序は重要なものになるこ
とがある。なぜなら、データを失う確率が低減され得る
からである。
【0036】再構築の順序またはシーケンスは、ディス
ク記憶システム10によってサポートされている実際の
RAIDレベルと、ディスク故障が発生するシーケンス
とに、大きく依存している。故障するディスクの組み合
わせの数、および、所与のディスクアレイ15またはデ
ィスク20のセットに共存し得るRAIDレベルの数は
非常に大きくなるので、以下の例では、好適な実施形態
にしたがって、データ再構築優先順位付けシステム35
により実行される再構築順序(優先順位)の分析法およ
びステップを例示する。
【0037】まず、単一の冗長グループ(グループ1)
にN個のディスク20のセットがあり、単純化のために
Nが偶数であるとする。加えて、N個のディスクの全て
が、ディスクの一部が他のディスクにミラーコピーされ
ているRAID1、およびN−2個のディスクが実際の
データを含み2つのディスクは2つの独立パリティ(2
つの余分な冗長情報)を含むRAID6、で構成されて
いるとする。ここでもまた、これらのRAIDレベルの
みが本発明によりサポートされるということではなく、
例示目的のために好適な実施形態を上記のRAIDレベ
ルに限定していることに、留意されたい。
【0038】次に、冗長グループyにおけるz個のディ
スクが故障していると特定されたとしたときに、再構築
により防ぐことができ得る、冗長グループy中のRAI
Dx(または冗長方式)を失う確率として、条件付き確
率P(x、y|z)を次のように定義する。P(x、y|
z)=Pr(冗長グループyにおいて再構築で防ぐこと
ができるRAIDxを失う確率|冗長グループyにおけ
るz個のディスクが故障していると特定されたとき)こ
こで、z=0のとき(すなわち、冗長グループyにおけ
るディスクの故障が無いとき)、または冗長グループy
のRAIDxがすでに失われている(すなわち防ぐこと
ができない)とき、P(x、y|z)=0とする。
【0039】再構築優先順位付けシステム35による再
構築は、1つまたは複数のディスク故障が発生するまで
は開始されないので、上記の確率は、ディスク故障時に
条件付けされなければならない。これより、一つのの冗
長グループシステム(y=1)に対しては、次のように
なる。 P(1、1|1)=「冗長グループ1において1つのデ
ィスクが故障したとするときに、冗長グループ1のみに
おいて、再構築で防ぐことができるRAID1データが
失われる確率」、 P(6、1|1)=「冗長グループ1において1つのデ
ィスクが故障したとするときに、冗長グループ1のみに
おいて、再構築で防ぐことができるRAID6データが
失われる確率」
【0040】また、MTBFがディスクの平均故障間隔
であり、MTTRが平均再構築時間であるとする。MT
BFおよびMTTR特性は、統計サンプルを使用するよ
うな従来の方法によって決定されるか、または、ディス
クメーカーの仕様から得ることができる。MTTRを以
下の解説にて使用するが、再構築までの計算時間もまた
使用可能であり、MTTRの代わりに用いてもよいこと
に留意されたい。加えて、MTTRは、RAIDレベル
に依存し、且つシステム構成に依存することがわかる。
しかし、解説を容易にするために、任意のRAIDレベ
ルに対するMTTR(オンラインにスペアが用意されて
いなければディスク交換時間を含み得る)は一定である
とする。また、ディスク故障はランダムに発生する(且
つ指数分布に従う)とする。これより、この文中では、
再構築時間中に所与のディスクが故障する定常確率は、
以下のように計算される。
【0041】P(再構築中に所与のディスクが故障)=
MTTR/MTBF 以上の前提の下で、次のシナリオを分析する。 ケース1:1つのディスクが故障 ケース2:RAID1で、互いがミラーではない2つの
ディスクが故障 ケース3:RAID1で、互いがミラーである2つのデ
ィスクが故障 ケース4:3つ以上のディスクが故障
【0042】ケース1:RAID1およびRAID6;
1つのディスクが故障 ケース1に対して、1つのディスクが故障しており、そ
の故障ディスクが再構築されている間に、次のディスク
故障がRAID1での故障ディスクのミラーイメージに
て発生したら、RAID1データの損失が生じる。この
ときには、次のようになる。 P(1、1|1)=P(再構築中に、第1の故障ディスクのミラーである第2 のディスクが故障) =MTTR/MTBF 一方、次のディスク故障がRAID1での故障ディスク
のミラーでなければ(第1の故障ディスクのミラーでな
い限り、どのディスクでもよく、N−2通りの可能性が
ある)、RAID6でのデータ損失は生じない。RAI
D6データ損失が生じるのは、第3のディスク(任意の
残存しているディスクであり、N−2通りの可能性があ
る)の故障時のみである。これより、次のようになる。 P(6、1|1)=P(再構築中に、第1の故障ディスクのミラーではない第 2のディスクの故障)×P(再構築中に、任意の残存ディスクである第3のディ スクの故障) =(N−2)(MTTR/MTBF)×(N−2)(MTTR/MTBF) =(N−2)MTTR/MTBF
【0043】続いて、P(1、1|1)とP(6、1|
1)とが比較され、どちらのRAIDレベルを先に再構
築するように優先順位付けをすべきかが決定される。明
らかに、確率が高いほど、そのRAIDレベルの最初に
再構築されるべき優先順位は高くなる。したがって、ケ
ース1のシナリオに対してはたいていの場合、RAID
1が、潜在的なデータ損失に対して最も弱く、これより
最初に再構築されるよう優先順位が付けられる。なお、
Nが大きくなれば、RAID6を先に再構築するという
例外が存在する。例えば、このケーススタディにおいて
は、N>2+(MTBF/MTTR)1/2であるとき
に、RAID6が先に再構築される。
【0044】ケース2:RAID1およびRAID6;
互いがミラーではない2つのディスクが故障 ケース2に対して、故障した2つのディスクがRAID
1におけるお互いのミラーでないときには、再構築中の
次のディスク故障(任意の残存しているディスクであ
り、N−2通りの可能性がある)により、RAID6に
おけるデータ損失が生じる。これより、次のようにな
る。 P(6、1|2)=P(再構築中に、任意の残存ディスクの故障) =(N−2)MTTR/MTBF しかし、第3のディスク故障が、他の2つの故障ディス
クのうちの1つのミラーであると、RAID1データも
また失われる可能性がある。第3のディスクは、RAI
D1における第1の故障ディスクのミラーまたは第2の
故障ディスクのミラー(2つの可能性がある)でなけれ
ばならず、RAID1データが失われる確率は、次のよ
うになる。 P(1、1|2)=P(再構築中に、すでに故障したディスクのミラーディス クのいずれかが故障) =2MTTR/MTBF ここでも、P(1、1|2)とP(6、1|2)とが比較
され、どちらのRAIDレベルを先に再構築するように
優先順位付けをすべきかが決定される。確率が高いほ
ど、そのRAIDレベルの最初に再構築されるべき優先
順位は高くなる。したがって、どのケース2のシナリオ
でもN>4であれば、RAID6が、潜在的なデータ損
失に対して最も弱く、そのためこのケーススタディにお
いては、最初に再構築されるように優先順位が付けられ
る。
【0045】ケース3:RAID1およびRAID6;
お互いにミラーである2つのディスクが故障 ケース3に対して、故障した2つのディスクがRAID
1におけるお互いのミラーであるときには、これら2つ
のディスク上のRAID1データがすでに失われてお
り、このため、RAID1における失われたデータの再
構築は不可能である。このシナリオでは、残された唯一
の選択肢は、RAID6データを再構築することであ
る。これより、次のようになる。 P(1、1|2)=0(RAID1のデータがすでに失われており、再構築が 不可能であるという事実による) P(6、1|2)=P(再構築中に、任意の残存ディスクが故障) =(N−2)MTTR/MTBF ケース3におけるP(1、1|2)とP(6、1|2)と
を比較したとき、RAID6データが潜在的なデータ損
失に対して最も弱いのは明らかである。なぜなら、常に
P(6、1|2)が、より高い確率を有し、従って優先
順位がより高いからである。言い換えると、RAID6
データを再構築する以外に選択肢はない。そのため、ケ
ース3のシナリオでは、RAID6が常に先に再構築さ
れる。
【0046】ケース4:RAID1およびRAID6;
3つ以上のディスク故障 最後にケース4に対して、3つまたはそれ以上のディス
クが故障すると、RAID6データは明らかに失われ、
再構築され得るデータは(可能であるならば)RAID
1においてのみである。この場合、z≧3に対して、次
のようになる。 P(6、1|z)=0(RAID6のデータがすでに失
われており、再構築が不可能であるという事実による) 明らかに、ケース4のシナリオに対して、唯一の選択肢
は、可能であるならばRAID1データを再構築するこ
とである。そのため、ケース4のシナリオでは、可能で
あるならばRAID1が常に先に再構築される。
【0047】ここで、要約すると、これらのケースの例
は、ケース3に対してはRAID6の再構築以外に選択
肢が無く、ケース4に対しては、可能である限りRAI
D1を再構築することが唯一の選択肢であることを示し
ている。一方、ケース1およびケース2に対する判断
は、MTTR、MTBF、およびNに依存する。これら
の数が変化すると(すなわち、より速い修理時間、より
速い再構築時間、より長い故障間隔、システムの各冗長
グループでサポートされるディスク数の違い)、再構築
の優先順位に対する戦略も、それに応じて変化する。一
例として、例示目的のみのために、一般的な数を使用し
て、MTBFが100万時間(1.0E+6時間)、M
TTRが24時間、およびNが10と仮定する。このと
き、ケース1に対して次のようになる: P(1、1|1)=MTTR/MTBF=24/1.0E+6 =2.4E−5 P(6、1|1)=(N−2)MTTR/MTBF =(10−2)24/(1.0E+6) =3.7E−8 ケース2に対して: P(1、1|1)=2MTTR/MTBF=2×24/1.0E+6 =4.8E−5 P(6、1|1)=(N−2)MTTR/MTBF =(10−2)×24/(1.0E+6) =1.9E−4 この例も再び、ケース1に対しては、RAID1が先に
再構築されることを示している。しかし、ケース2に対
しては、再構築戦略は、RAID6に最初に集中される
べきであろう。
【0048】最後に、RAID1およびRAID5記憶
方式(RAID6ではない)を有する10個のディスク
を含む1つの冗長グループ(グループ1)を使用する階
層RAIDアレイ15の1つ以上の例に関して、本発明
の再構築優先順位付けシステム35を考える。このと
き、各RAIDレベルは、アレイ内の1つまたはそれ以
上のディスク上で、別個に使用されてもよく、または一
緒に使用されてもよい。RAID5記憶は、各ディスク
上に、単一のブロックサイズのデータストライプを含ん
でいる。9つのディスクはそれぞれ、ストライプの各ブ
ロック内に実際のユーザデータを保持している。10番
目のディスクは、冗長(パリティ)情報を含むストライ
プに、データブロックを保持している。あるディスクが
故障すると、故障したディスク上のデータは、残存して
いる9つのディスク上のデータから再構成することがで
きる。オリジナルデータおよび再構成されたデータは、
その後に、新しいストライプにおける9つの残存してい
るディスクにわたって再書き込みされることができる
(これらのディスクの1つは、この新しいストライプに
対するパリティディスクに指定される)。しかし、RA
ID5データが全て再構築されて再書き込みされる前に
9つの残存ディスクのいずれかが故障したら、データは
失われてしまうであろう。
【0049】この例のRAID1記憶に対して、10個
のディスクのうち第1のものに記憶されたデータは、ア
レイ内の第2のディスク上にのみミラーコピーが作成さ
れる。第1のディスクが故障すると、第2の(ミラー)
ディスクからの再構築中にデータが失われるのは、第2
のディスクが故障したときのみである。他のディスクが
故障すると、アレイは、RAID1データを失うことは
ないが、RAID5データは失われる。したがって、こ
の例のRAID1およびRAID5の階層記憶では、デ
ィスク故障時の再構築中に、RAID5記憶の方がRA
ID1記憶よりも、データが失われる確率が大きい。こ
れより、再構成優先順位付けシステム35は、RAID
5データを先に再構築する。この例の確率は、 次のよ
うになる。 P(1、1|1)=P(再構築中に、第1の故障ディスクのミラーである第2 のディスクの故障) =MTTR/MTBF P(5、1|1)=P(再構築中に、第1の故障ディスクのミラーではない任 意の第2のディスクの故障) =(N−2)(MTTR/MTBF)
【0050】ここで図2および図3を参照すると、これ
らのフローチャートは、本発明の望ましい実現方法を描
いており、図1を参照して説明される。図2は、全体的
で高レベルの視点からの望ましい実現方法を描いてお
り、これは、再構築優先順位付けシステム35に関連し
た2つの独立して実行されるプロセスを表している。す
なわち、ステップ105で階層型RAIDデータ記憶シ
ステム10におけるディスク故障が検出されると、ステ
ップ110で割り込み115が送られて、再構築優先順
位付け処理が開始される。割り込み115の開始によ
り、本発明の再構築優先順位付けシステム35は、ステ
ップ120で、再構築中におけるさらなるディスク故障
(単数または複数)が起こる確率の観点から、潜在的な
データ損失に関して、アレイ15の中で最も弱いRAI
Dレベルを特定する。続いて、最も弱いRAIDレベル
を特定すると、再構築優先順位付けシステム35は、ス
テップ125でRAID管理システム30と通信して、
特定された最も弱いRAIDレベルを最初に再構築する
ことによって、RAID管理システム30による故障し
たディスクのデータの再構築を可能にしたり、再構築さ
せたり、またはそれを制御する。このように、重要なこ
とは、アレイ15に対するデータ損失の確率を最小限に
することが可能になり得るということである。加えて、
アレイの全体的なアベイラビリティが増加し得る。
【0051】再構築中に(すなわち、すでに起こってい
るディスク故障の間に)、ステップ105にて次のディ
スク故障が検出されると、本発明の再構築優先順位付け
システム35は、ステップ110で再び割り込み115
を送って、ステップ120で再構築優先順位付けを再計
算し、ステップ125で、新しく優先順位が付けられた
再構築を行うか、またはその制御を行うことに留意すべ
きである。これに応答して、RAID管理システム30
は、新しく計算された再構築優先順位付けが決定したこ
とを確認し、現在実行中の再構築をホールドし、それか
ら、新たな計算情報に基づく再構築を開始して完了す
る。好適な実施形態では、この再構築優先順位付け処理
は、実行中の優先順位付けの決定またはデータ再構築の
間であっても、任意の時間において、および所与のシス
テム変更または状況の組み合わせにおいて、最も弱いR
AIDレベルを特定するために、ステップ110で割り
込み115によって駆動される。例えば、再構築優先順
位付けが冗長グループ60(図1)における第1のディ
スク故障に応答して生じていて、次のディスク故障が実
際に同じ冗長グループまたは別個の冗長グループにて発
生すると、割込み信号115が送られて、優先順位付け
ステップ120を再び開始し、新しく計算された最も弱
いRAIDレベルを特定して、その新しく計算された最
も弱いRAIDレベルに基づいた再構築を行う。
【0052】図3は、図2のステップ120をさらに詳
細に描いている。最も弱いRAIDレベルを特定する
(120)ために、アレイ中の記憶システム10、15
および記憶装置20に関連した特性が考慮される。これ
には、各冗長グループ内の記憶装置の数、装置の故障の
数、平均故障間隔、平均再構築時間、および故障依存性
が含まれる。故障依存性には、冗長グループ(1つまた
は複数)についての故障の位置、どの冗長方式(1つま
たは複数)が冗長グループ(1つまたは複数)内の故障
(1つまたは複数)によって影響を受けるか、および影
響を受ける冗長方式(1つまたは複数)内の故障(1つ
または複数)の相互関係が含まれる。
【0053】第1のステップ150では、アレイ中の任
意の1つまたは複数の冗長グループ60、65、70、
または75を特定する。次に、ステップ155で、各冗
長グループで使用される1つまたは複数のRAIDレベ
ルが特定される。例えば、RAID1およびRAID6
を単一の冗長グループで使用したり、RAID1のみを
1つの冗長グループで使用し、RAID5のみを別の1
つの冗長グループで使用したり、RAID1のみを複数
の別個の冗長グループで使用したり、または、RAID
レベルと冗長グループとの他の組み合わせを使用すると
いったことを特定する。
【0054】次に、ステップ160で、各冗長グループ
およびRAIDレベルに対して、記憶装置およびシステ
ム変数が特定される。これらの変数には、例えば、スト
ライプセットまたは冗長グループ(1つまたは複数)内
のディスクの数(N)、平均故障間隔(MTBF)、平
均再構築時間(MTTR)、および影響を受ける冗長方
式(1つまたは複数)内の故障(1つまたは複数)の相
互関係が含まれる。
【0055】引き続いて、ステップ165で、(データ
記憶システムにおいて1つ以上の記憶装置が次に故障す
る可能性の観点から)データの失われる確率が、各冗長
グループ内の各RAIDレベルに対して計算される。確
率の計算のより具体的な例については、図1の解説を参
照されたい。その後に、ステップ170で、計算された
確率が比較される。最後に、ステップ175で、比較結
果に基づいて、確率が最大であるRAIDレベルを、現
在故障しているディスクの再構築中に1つ以上の記憶装
置が次に故障する可能性という観点から、(所与の冗長
グループ内の他のRAIDレベル、ならびに他の冗長グ
ループおよびそれのRAIDレベルに比べて)最も弱い
RAIDレベルと決定する。
【0056】好適な実施形態では、本発明の再構築優先
順位付けシステム35が、最も弱いRAIDレベルを特
定するためのハードコード化された指示およびデータを
含んでいることに留意されたい。言い換えると、任意の
所与の最初に製造された記憶システム10においては、
各冗長グループにおけるディスク20の最大数が前もっ
て分かっており、それらのMTBF値およびMTTR値
も既知である。加えて、実行される階層型RAIDレベ
ルも既知であり、また前もって制限されている。これよ
り、全ての発生し得るディスク故障シナリオは既知であ
り、このために、発生し得る種々のディスク故障シナリ
オを与えたときの最も弱いRAIDレベルも、前もって
知られている(条件に基づいて前もって比較または計算
しておくことができる)。したがって、好適な実施形態
においては、再構築優先順位付けシステム35は、ディ
スク故障後に再構築が必要になったことを検出すると、
ディスクの故障状況に適合する、事前に比較または計算
しておいた確率に基づいて、単純に分岐指示を実行する
だけである。これにより、再構築優先順位付けシステム
35は、最も弱いRAIDレベルを迅速に特定して、R
AID管理システム30に、その最も弱いRAIDレベ
ルの再構築を最初に実行させる。
【0057】一方、再構築優先順位付けシステム35
は、記憶システム10を詳細に定義して特定する程度の
データ、テーブル、または構造を含んでいるので、最も
弱いRAIDレベルを動的に検出することができる。言
い換えると、システム10内のディスク20の数は、任
意のアレイ稼動時間中に動的に決定され、ディスクのタ
イプとそれらのMTBF値とが、参照アクセスを動的に
可能にするために、(リードオンリーメモリのような)
メモリに記憶される。また、MTTR値および現時点で
使用されているRAIDレベルは、動的に計算または比
較される。動的に獲得したこれらの要因を用いて、再構
築優先順位付けシステム35は、最も弱いRAIDレベ
ルを、優先順位付けされて最初に再構築されるように、
まさに実行中に計算し、また同じ内容をRAID管理シ
ステム30に報告する。
【0058】最後に、上記で解説した内容は、階層型R
AIDアレイに対する記憶管理およびデータ再構築優先
順位付けシステムに関する好適な実施形態である。本発
明が、当該技術分野に存在するさまざまなハードウエア
プラットフォームおよびソフトウエアツールの任意のも
のを使用して容易に実施されることが、当該技術分野に
おいて通常の技術を持つ者には明らかであろう。本発明
を特定の実施形態に関して説明してきたが、本発明の真
の精神および範囲から逸脱すること無く、実施または改
変のための他の代替的な実施形態および方法が使用され
得ることは明らかである。
【0059】本発明は例として次の実施態様を含む。 (1)階層型データ記憶システム(10)において、複数の
データ冗長方式(30)を使用してデータを管理する方法で
あって、前記データ記憶システムにおける記憶装置(20)
の故障に応答(105)して、前記記憶システムにおける最
も弱いデータ冗長方式に基づいてデータ再構築を制御す
るステップ(120,125)を含む、方法。
【0060】(2)前記階層型データ記憶システム(10)
が、該データ記憶システム内の1つ以上の冗長グループ
(60,65,70,75)内で使用される1つ以上のデータ冗長方
式を含み、前記最も弱いデータ冗長方式が、前記1つ以
上の冗長方式および1つ以上の冗長グループとの対比に
おいて、単一の冗長グループ内の冗長方式を同定する、
上記1に記載の方法。
【0061】(3)前記最も弱いデータ冗長方式が、前
記データ記憶システム内で1つ以上の記憶装置が次に故
障する可能性という観点から、再構築によって防ぐこと
のできるデータを損失する確率が最大であるデータ冗長
方式として定義される、上記1または2に記載の方法。
【0062】(4)前記データ再構築を制御するステッ
プが、前記冗長方式を優先順位付けするステップと、前
記最も弱いデータ冗長方式の再構築を、前記記憶システ
ムにおける他のデータ冗長方式の再構築に先立って行う
ステップと、を含む、上記1、2、または3に記載の方
法。
【0063】(5)前記データ再構築を制御するステッ
プが、少なくとも前記記憶装置のサブセットを含む、前
記データ記憶システムに関連した特性を考慮することに
よって、前記最も弱いデータ冗長方式を特定するステッ
プを含む、上記1、2、3、または4に記載の方法。
【0064】(6)複数の大容量記憶装置(20)と複数の
データ冗長方式(30)とを有する階層型データ記憶システ
ム(10)において、データ損失の確率を低減する方法であ
って、(a)前記データ記憶システムにおける記憶装置
(20)において、前記大容量記憶装置(20)のうちの少なく
とも1つに関してデータをアクセス不能にするような故
障を検出するステップと、(b)前記データ記憶システ
ム内で1つ以上の記憶装置が次に故障する可能性という
観点から、再構築によって防ぐことができるデータを損
失する確率が最大であるデータ冗長方式を特定するステ
ップ(120)と、(c)前記データを損失する確率が最大
であるデータ冗長方式が最初に再構築されるように、デ
ータ再構築を可能にするステップ(125)と、を含む、方
法。
【0065】(7)階層型データ記憶システム(10)であ
って、(a)複数のデータ冗長方式(30)と、(b)前記
記憶システムにおける1つまたは複数の記憶装置(20)の
故障を検出するように構成された故障検出装置(30)と、
(c)前記記憶システム内で最も弱いデータ冗長方式に
基づいてデータ再構築を行うように構成された再構築優
先順位付け装置(35)と、を備える、データ記憶システ
ム。
【0066】(8)前記再構築優先順位付け装置が、前
記最も弱いデータ冗長方式(120,125)の再構築を、前記
記憶システムにおける他のデータ冗長方式の再構築に先
立って行うように構成されている、上記7に記載のデー
タ記憶システム。
【0067】(9)前記最も弱いデータ冗長方式を、前
記データ記憶システム内で1つ以上の記憶装置(20)が次
に故障する可能性という観点から、再構築によって防ぐ
ことができるデータを損失する確率が最大であるデータ
冗長方式として定義する、上記7または8に記載のデー
タ記憶システム。
【0068】(10)前記再構築優先順位付け装置(35)
が、最も弱いデータ冗長方式に基づくデータの再構築
を、少なくとも前記記憶装置のサブセットを含む前記デ
ータ記憶システムに関連した特性を考慮することによっ
て行う(160)ように構成されている、上記7、8、また
は9に記載のデータ記憶システム。
【0069】(11)複数のデータ冗長方式(30)を有す
る階層型データ記憶システム(10)におけるデータ再構築
を制御するためのコンピュータ実行可能な指示を有し、
前記データ再構築が、前記記憶システムにおける最も弱
いデータ冗長方式に基づいている、コンピュータ読取り
可能な媒体。
【図面の簡単な説明】
【図1】 本発明の再構築順位付けシステムおよび方法
を使用する階層データ記憶システムのブロック図であ
る。
【図2】 本発明の好適な方法を描いている(好適な実
施形態を示す)フローチャートである。
【図3】 図2の方法のうちで特定されたステップをさ
らに詳細に描いているフローチャートである。
【符号の説明】
10 階層型データ記憶システム 20 記憶ディスク(装置) 30 RAID管理システム 35 再構築優先順位付けシステム(装置) 60 冗長グループ 65 冗長グループ 70 冗長グループ 75 冗長グループ 105 ディスク故障検出ステップ 120 最も弱いデータ冗長方式の特定ステップ 125 データ再構築ステップ 160 記憶装置およびシステム変数の特定ステップ
フロントページの続き (72)発明者 ロジャー・ディー・ダニエルズ アメリカ合衆国83709アイダホ州ボイジー、 ウィチタ・ドライブ 8568 (72)発明者 ディビッド・ケー・アンバーガー アメリカ合衆国83705アイダホ州ボイジー、 ハイデン・ウェイ 2604

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 階層型データ記憶システムにおいて、複
    数のデータ冗長方式を使用してデータを管理する方法で
    あって、 前記データ記憶システムにおける記憶装置の故障に応答
    して、前記記憶システムにおける最も弱いデータ冗長方
    式に基づいてデータ再構築を制御するステップを含む、
    方法。
JP2000301649A 1999-10-29 2000-10-02 データを管理する方法 Pending JP2001147785A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/430403 1999-10-29
US09/430,403 US6516425B1 (en) 1999-10-29 1999-10-29 Raid rebuild using most vulnerable data redundancy scheme first

Publications (1)

Publication Number Publication Date
JP2001147785A true JP2001147785A (ja) 2001-05-29

Family

ID=23707408

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000301649A Pending JP2001147785A (ja) 1999-10-29 2000-10-02 データを管理する方法

Country Status (2)

Country Link
US (1) US6516425B1 (ja)
JP (1) JP2001147785A (ja)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007502470A (ja) * 2003-08-14 2007-02-08 コンペレント・テクノロジーズ 仮想ディスク・ドライブのシステムおよび方法
JP2009110456A (ja) * 2007-10-31 2009-05-21 Fujitsu Ltd ストレージ制御装置、方法、及びプログラム
WO2009157086A1 (ja) * 2008-06-27 2009-12-30 富士通株式会社 Raid装置並びにその制御装置および制御方法
US7809979B2 (en) 2005-03-15 2010-10-05 Fujitsu Limited Storage control apparatus and method
US7886111B2 (en) 2006-05-24 2011-02-08 Compellent Technologies System and method for raid management, reallocation, and restriping
JP2011520182A (ja) * 2008-04-17 2011-07-14 エヌイーシー ラボラトリーズ アメリカ インク 分散データストレージシステムの信頼性の動的定量化と改善
JP2011192257A (ja) * 2010-03-11 2011-09-29 Lsi Corp 分散データレイアウト環境における冗長性復元を最適化するためのシステム及び方法
US8103902B2 (en) 2004-03-11 2012-01-24 Hitachi, Ltd. Disk array including plural exchangeable magnetic disk unit
US8468292B2 (en) 2009-07-13 2013-06-18 Compellent Technologies Solid state drive data storage system and method
JP2013174984A (ja) * 2012-02-24 2013-09-05 Nec Corp ストレージシステム
JP2015052960A (ja) * 2013-09-09 2015-03-19 富士通株式会社 ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
JP2015525377A (ja) * 2012-07-23 2015-09-03 株式会社日立製作所 ストレージシステム及びデータ管理方法
US9146851B2 (en) 2012-03-26 2015-09-29 Compellent Technologies Single-level cell and multi-level cell hybrid solid state drive
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
JP2020021277A (ja) * 2018-07-31 2020-02-06 株式会社日立製作所 情報処理システム、情報処理システムの管理方法及びプログラム
US11275531B2 (en) 2020-01-27 2022-03-15 Fujitsu Limited Storage system, management apparatus and storage medium

Families Citing this family (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6851005B1 (en) * 2000-03-03 2005-02-01 International Business Machines Corporation Apparatus and method for implementing raid devices in a cluster computer system
US6647514B1 (en) * 2000-03-23 2003-11-11 Hewlett-Packard Development Company, L.P. Host I/O performance and availability of a storage array during rebuild by prioritizing I/O request
US6694479B1 (en) * 2000-05-23 2004-02-17 Hewlett-Packard Development Company, L.P. Multiple drive failure recovery for a computer system having an array of storage drives
US6807649B1 (en) * 2000-05-23 2004-10-19 Hewlett-Packard Development Company, L.P. Encryption keys for multiple drive fault tolerance
US7146485B1 (en) * 2000-12-30 2006-12-05 Storage Technology Corporation Rebuilding of dynamic maps and data managed thereby
US6957433B2 (en) * 2001-01-08 2005-10-18 Hewlett-Packard Development Company, L.P. System and method for adaptive performance optimization of data processing systems
US20030236954A1 (en) * 2002-06-20 2003-12-25 International Business Machines Corporation Method for configurable priority read order of mirrors from within a volume manager
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
US7308599B2 (en) * 2003-06-09 2007-12-11 Hewlett-Packard Development Company, L.P. Method and apparatus for data reconstruction after failure of a storage device in a storage array
US7058762B2 (en) * 2003-06-09 2006-06-06 Hewlett-Packard Development Company, L.P. Method and apparatus for selecting among multiple data reconstruction techniques
US7246301B2 (en) * 2003-06-13 2007-07-17 Dell Products L.P. Method for storage array error correction
US7143305B2 (en) * 2003-06-25 2006-11-28 International Business Machines Corporation Using redundant spares to reduce storage device array rebuild time
US7325097B1 (en) * 2003-06-26 2008-01-29 Emc Corporation Method and apparatus for distributing a logical volume of storage for shared access by multiple host computers
US20050027938A1 (en) * 2003-07-29 2005-02-03 Xiotech Corporation Method, apparatus and program storage device for dynamically resizing mirrored virtual disks in a RAID storage system
US7206991B2 (en) * 2003-10-15 2007-04-17 Lsi Logic Corporation Method, apparatus and program for migrating between striped storage and parity striped storage
US20050166022A1 (en) * 2004-01-28 2005-07-28 Hitachi, Ltd. Method and apparatus for copying and backup in storage systems
US7243190B2 (en) * 2004-02-13 2007-07-10 International Business Machines Corporation Apparatus and method to rebuild an NVS image using cache data
US7334156B2 (en) * 2004-02-13 2008-02-19 Tandberg Data Corp. Method and apparatus for RAID conversion
US20060161752A1 (en) * 2005-01-18 2006-07-20 Burkey Todd R Method, apparatus and program storage device for providing adaptive, attribute driven, closed-loop storage management configuration and control
US7941602B2 (en) * 2005-02-10 2011-05-10 Xiotech Corporation Method, apparatus and program storage device for providing geographically isolated failover using instant RAID swapping in mirrored virtual disks
US20060218360A1 (en) * 2005-03-22 2006-09-28 Burkey Todd R Method, apparatus and program storage device for providing an optimized read methodology for synchronously mirrored virtual disk pairs
US7305579B2 (en) * 2005-03-22 2007-12-04 Xiotech Corporation Method, apparatus and program storage device for providing intelligent rebuild order selection
US20060236149A1 (en) * 2005-04-14 2006-10-19 Dell Products L.P. System and method for rebuilding a storage disk
US7363426B2 (en) * 2005-04-26 2008-04-22 Dell Products L.P. System and method for RAID recovery arbitration in shared disk applications
TWI283349B (en) * 2005-05-12 2007-07-01 Inventec Corp Data protection method
US7418550B2 (en) * 2005-07-30 2008-08-26 Lsi Corporation Methods and structure for improved import/export of raid level 6 volumes
US7430635B2 (en) * 2005-07-30 2008-09-30 Lsi Corporation Methods and structure for improved import/export of RAID level 6 volumes
US7757015B2 (en) * 2005-09-13 2010-07-13 International Business Machines Corporation Device, method and computer program product readable medium for determining the identity of a component
US10860424B1 (en) 2005-09-30 2020-12-08 Pure Storage, Inc. Background verification processing in a storage network
US11221917B1 (en) 2005-09-30 2022-01-11 Pure Storage, Inc. Integrity processing in a dispersed storage network
US8880799B2 (en) * 2005-09-30 2014-11-04 Cleversafe, Inc. Rebuilding data on a dispersed storage network
US8352782B2 (en) * 2005-09-30 2013-01-08 Cleversafe, Inc. Range based rebuilder for use with a dispersed data storage network
US8555109B2 (en) * 2009-07-30 2013-10-08 Cleversafe, Inc. Method and apparatus for distributed storage integrity processing
US11620185B2 (en) * 2005-09-30 2023-04-04 Pure Storage, Inc. Integrity processing in a dispersed storage network
JP4472617B2 (ja) * 2005-10-28 2010-06-02 富士通株式会社 Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法
US20070143541A1 (en) * 2005-12-19 2007-06-21 Lsi Logic Corporation Methods and structure for improved migration of raid logical volumes
US7536586B2 (en) * 2006-01-12 2009-05-19 Dell Products L.P. System and method for the management of failure recovery in multiple-node shared-storage environments
US20080091877A1 (en) * 2006-05-24 2008-04-17 Klemm Michael J Data progression disk locality optimization system and method
US7996609B2 (en) * 2006-12-20 2011-08-09 International Business Machines Corporation System and method of dynamic allocation of non-volatile memory
JP2008158724A (ja) * 2006-12-22 2008-07-10 Fujitsu Ltd ディスクアレイ装置のステージング方法
US7992072B2 (en) * 2007-02-26 2011-08-02 International Business Machines Corporation Management of redundancy in data arrays
US7913075B2 (en) * 2007-07-03 2011-03-22 Pmc-Sierra, Inc. Systems and methods for automatic provisioning of storage and operating system installation from pre-existing iSCSI target
US7814361B2 (en) * 2007-10-12 2010-10-12 Dell Products L.P. System and method for synchronizing redundant data in a storage array
US7945752B1 (en) 2008-03-27 2011-05-17 Netapp, Inc. Method and apparatus for achieving consistent read latency from an array of solid-state storage devices
US8074021B1 (en) * 2008-03-27 2011-12-06 Netapp, Inc. Network storage system including non-volatile solid-state memory controlled by external data layout engine
US7971013B2 (en) * 2008-04-30 2011-06-28 Xiotech Corporation Compensating for write speed differences between mirroring storage devices by striping
US7890795B1 (en) 2008-06-02 2011-02-15 Emc Corporation Auto-adapting cache memory system and memory
US8615678B1 (en) * 2008-06-30 2013-12-24 Emc Corporation Auto-adapting multi-tier cache
US20100011176A1 (en) * 2008-07-11 2010-01-14 Burkey Todd R Performance of binary bulk IO operations on virtual disks by interleaving
US20100011371A1 (en) * 2008-07-11 2010-01-14 Burkey Todd R Performance of unary bulk IO operations on virtual disks by interleaving
US8006128B2 (en) * 2008-07-31 2011-08-23 Datadirect Networks, Inc. Prioritized rebuilding of a storage device
US8135984B2 (en) * 2008-11-06 2012-03-13 Mitac Technology Corp. System and method for reconstructing RAID system
US8176367B2 (en) 2009-05-28 2012-05-08 Agere Systems Inc. Systems and methods for managing end of life in a solid state drive
US8151137B2 (en) * 2009-05-28 2012-04-03 Lsi Corporation Systems and methods for governing the life cycle of a solid state drive
US8176360B2 (en) * 2009-08-11 2012-05-08 Texas Memory Systems, Inc. Method and apparatus for addressing actual or predicted failures in a FLASH-based storage system
US7941696B2 (en) * 2009-08-11 2011-05-10 Texas Memory Systems, Inc. Flash-based memory system with static or variable length page stripes including data protection information and auxiliary protection stripes
US8930622B2 (en) 2009-08-11 2015-01-06 International Business Machines Corporation Multi-level data protection for flash memory system
US8189379B2 (en) 2009-08-12 2012-05-29 Texas Memory Systems, Inc. Reduction of read disturb errors in NAND FLASH memory
US7818525B1 (en) 2009-08-12 2010-10-19 Texas Memory Systems, Inc. Efficient reduction of read disturb errors in NAND FLASH memory
JP5556192B2 (ja) * 2010-01-26 2014-07-23 日本電気株式会社 ストレージシステム
US8799287B1 (en) * 2010-04-06 2014-08-05 Symantec Corporation Method and apparatus for categorizing documents containing sensitive information
US9898373B2 (en) 2010-04-26 2018-02-20 International Business Machines Corporation Prioritizing rebuilding of stored data in a dispersed storage network
US8726070B2 (en) * 2010-09-27 2014-05-13 Dell Products L.P. System and method for information handling system redundant storage rebuild
US8775868B2 (en) * 2010-09-28 2014-07-08 Pure Storage, Inc. Adaptive RAID for an SSD environment
KR101636785B1 (ko) * 2010-12-01 2016-07-06 엘에스아이 코포레이션 독립 실리콘 소자들을 갖는 동적 상위 레벨 리던던시 모드 관리
JP5887757B2 (ja) * 2011-08-17 2016-03-16 富士通株式会社 ストレージシステム、ストレージ制御装置およびストレージ制御方法
US8751861B2 (en) * 2012-02-08 2014-06-10 Lsi Corporation System and method for improved rebuild in RAID
US8856431B2 (en) * 2012-08-02 2014-10-07 Lsi Corporation Mixed granularity higher-level redundancy for non-volatile memory
US8892939B2 (en) 2012-11-21 2014-11-18 Hewlett-Packard Development Company, L.P. Optimizing a RAID volume
US9417822B1 (en) * 2013-03-15 2016-08-16 Western Digital Technologies, Inc. Internal storage manager for RAID devices
US10681134B2 (en) * 2013-07-31 2020-06-09 Pure Storage, Inc. Accelerated learning in adaptive rebuilding by applying observations to other samples
US9164828B2 (en) 2013-09-26 2015-10-20 Seagate Technology Llc Systems and methods for enhanced data recovery in a solid state memory system
US9424179B2 (en) 2013-10-17 2016-08-23 Seagate Technology Llc Systems and methods for latency based data recycling in a solid state memory system
US9201729B2 (en) 2013-10-21 2015-12-01 Seagate Technology, Llc Systems and methods for soft data utilization in a solid state memory system
US9378840B2 (en) 2013-10-28 2016-06-28 Seagate Technology Llc Systems and methods for sub-zero threshold characterization in a memory cell
US9276609B2 (en) 2013-11-16 2016-03-01 Seagate Technology Llc Systems and methods for soft decision generation in a solid state memory system
WO2015114643A1 (en) * 2014-01-30 2015-08-06 Hewlett-Packard Development Company, L.P. Data storage system rebuild
US9292389B2 (en) 2014-01-31 2016-03-22 Google Inc. Prioritizing data reconstruction in distributed storage systems
US9576683B2 (en) 2014-02-06 2017-02-21 Seagate Technology Llc Systems and methods for hard error reduction in a solid state memory device
US9378810B2 (en) 2014-02-11 2016-06-28 Seagate Technology Llc Systems and methods for last written page handling in a memory device
US9336091B2 (en) 2014-03-06 2016-05-10 International Business Machines Corporation Reliability enhancement in a distributed storage system
US9594632B2 (en) 2014-07-09 2017-03-14 Qualcomm Incorporated Systems and methods for reliably storing data using liquid distributed storage
US9582355B2 (en) * 2014-07-09 2017-02-28 Qualcomm Incorporated Systems and methods for reliably storing data using liquid distributed storage
US9734007B2 (en) 2014-07-09 2017-08-15 Qualcomm Incorporated Systems and methods for reliably storing data using liquid distributed storage
US10275302B2 (en) * 2015-12-18 2019-04-30 Microsoft Technology Licensing, Llc System reliability by prioritizing recovery of objects
US9665446B1 (en) 2015-12-29 2017-05-30 International Business Machines Corporation Fully distributed intelligent rebuild
CN107122269B (zh) * 2016-02-25 2020-02-28 伊姆西Ip控股有限责任公司 用于保证映射独立磁盘冗余阵列的可靠性的方法和装置
US10089178B2 (en) * 2016-02-29 2018-10-02 International Business Machines Corporation Developing an accurate dispersed storage network memory performance model through training
US10120769B2 (en) 2016-04-13 2018-11-06 Dell Products L.P. Raid rebuild algorithm with low I/O impact
CN106250055A (zh) * 2016-07-12 2016-12-21 乐视控股(北京)有限公司 一种数据存储方法及系统
US9952798B2 (en) * 2016-08-12 2018-04-24 Google Inc. Repartitioning data in a distributed computing system
US10409682B1 (en) * 2017-02-24 2019-09-10 Seagate Technology Llc Distributed RAID system
US10467115B1 (en) * 2017-11-03 2019-11-05 Nutanix, Inc. Data consistency management in large computing clusters
US10733053B1 (en) 2018-01-31 2020-08-04 Pure Storage, Inc. Disaster recovery for high-bandwidth distributed archives
US20200241781A1 (en) 2019-01-29 2020-07-30 Dell Products L.P. Method and system for inline deduplication using erasure coding
US11442642B2 (en) 2019-01-29 2022-09-13 Dell Products L.P. Method and system for inline deduplication using erasure coding to minimize read and write operations
US11171671B2 (en) * 2019-02-25 2021-11-09 Samsung Electronics Co., Ltd. Reducing vulnerability window in key value storage server without sacrificing usable capacity
US10929037B2 (en) 2019-06-15 2021-02-23 International Business Machines Corporation Converting a RAID to a more robust RAID level
US11442826B2 (en) * 2019-06-15 2022-09-13 International Business Machines Corporation Reducing incidents of data loss in raid arrays having the same raid level
US11074118B2 (en) 2019-06-15 2021-07-27 International Business Machines Corporation Reporting incidents of data loss in RAID arrays
US11372730B2 (en) 2019-07-31 2022-06-28 Dell Products L.P. Method and system for offloading a continuous health-check and reconstruction of data in a non-accelerator pool
US11328071B2 (en) 2019-07-31 2022-05-10 Dell Products L.P. Method and system for identifying actor of a fraudulent action during legal hold and litigation
US11609820B2 (en) 2019-07-31 2023-03-21 Dell Products L.P. Method and system for redundant distribution and reconstruction of storage metadata
US11775193B2 (en) 2019-08-01 2023-10-03 Dell Products L.P. System and method for indirect data classification in a storage system operations
JP2021099624A (ja) * 2019-12-20 2021-07-01 株式会社日立製作所 ストレージシステム及びストレージシステムのリビルド処理方法
US11281535B2 (en) 2020-03-06 2022-03-22 Dell Products L.P. Method and system for performing a checkpoint zone operation for a spare persistent storage
US11301327B2 (en) * 2020-03-06 2022-04-12 Dell Products L.P. Method and system for managing a spare persistent storage device and a spare node in a multi-node data cluster
US11416357B2 (en) 2020-03-06 2022-08-16 Dell Products L.P. Method and system for managing a spare fault domain in a multi-fault domain data cluster
US11494267B2 (en) * 2020-04-14 2022-11-08 Pure Storage, Inc. Continuous value data redundancy
US11418326B2 (en) 2020-05-21 2022-08-16 Dell Products L.P. Method and system for performing secure data transactions in a data cluster
US11709738B1 (en) * 2022-02-25 2023-07-25 Dell Products L.P. Intelligent protection of virtual machine by identifying the degree of risk at a granular level

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2923702B2 (ja) * 1991-04-01 1999-07-26 株式会社日立製作所 記憶装置及びそのデータ修復方法
US5278838A (en) * 1991-06-18 1994-01-11 Ibm Corp. Recovery from errors in a redundant array of disk drives
JP3183719B2 (ja) * 1992-08-26 2001-07-09 三菱電機株式会社 アレイ型記録装置
US5522031A (en) * 1993-06-29 1996-05-28 Digital Equipment Corporation Method and apparatus for the on-line restoration of a disk in a RAID-4 or RAID-5 array with concurrent access by applications
CN1281560A (zh) * 1997-10-08 2001-01-24 西加特技术有限责任公司 混合数据存储和重建系统以及用于数据存储装置的方法
JP3616487B2 (ja) * 1997-11-21 2005-02-02 アルプス電気株式会社 ディスクアレイ装置

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9436390B2 (en) 2003-08-14 2016-09-06 Dell International L.L.C. Virtual disk drive system and method
US7962778B2 (en) 2003-08-14 2011-06-14 Compellent Technologies Virtual disk drive system and method
US10067712B2 (en) 2003-08-14 2018-09-04 Dell International L.L.C. Virtual disk drive system and method
US9047216B2 (en) 2003-08-14 2015-06-02 Compellent Technologies Virtual disk drive system and method
US8321721B2 (en) 2003-08-14 2012-11-27 Compellent Technologies Virtual disk drive system and method
US7849352B2 (en) 2003-08-14 2010-12-07 Compellent Technologies Virtual disk drive system and method
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
JP2007502470A (ja) * 2003-08-14 2007-02-08 コンペレント・テクノロジーズ 仮想ディスク・ドライブのシステムおよび方法
US8560880B2 (en) 2003-08-14 2013-10-15 Compellent Technologies Virtual disk drive system and method
US9021295B2 (en) 2003-08-14 2015-04-28 Compellent Technologies Virtual disk drive system and method
US7941695B2 (en) 2003-08-14 2011-05-10 Compellent Technolgoies Virtual disk drive system and method
US8555108B2 (en) 2003-08-14 2013-10-08 Compellent Technologies Virtual disk drive system and method
US8103902B2 (en) 2004-03-11 2012-01-24 Hitachi, Ltd. Disk array including plural exchangeable magnetic disk unit
US7809979B2 (en) 2005-03-15 2010-10-05 Fujitsu Limited Storage control apparatus and method
US7886111B2 (en) 2006-05-24 2011-02-08 Compellent Technologies System and method for raid management, reallocation, and restriping
US8230193B2 (en) 2006-05-24 2012-07-24 Compellent Technologies System and method for raid management, reallocation, and restriping
US10296237B2 (en) 2006-05-24 2019-05-21 Dell International L.L.C. System and method for raid management, reallocation, and restripping
US9244625B2 (en) 2006-05-24 2016-01-26 Compellent Technologies System and method for raid management, reallocation, and restriping
US8386837B2 (en) 2007-10-31 2013-02-26 Fujistu Limited Storage control device, storage control method and storage control program
JP4499776B2 (ja) * 2007-10-31 2010-07-07 富士通株式会社 ストレージ制御装置、方法、及びプログラム
JP2009110456A (ja) * 2007-10-31 2009-05-21 Fujitsu Ltd ストレージ制御装置、方法、及びプログラム
JP2011520182A (ja) * 2008-04-17 2011-07-14 エヌイーシー ラボラトリーズ アメリカ インク 分散データストレージシステムの信頼性の動的定量化と改善
WO2009157086A1 (ja) * 2008-06-27 2009-12-30 富士通株式会社 Raid装置並びにその制御装置および制御方法
US8468292B2 (en) 2009-07-13 2013-06-18 Compellent Technologies Solid state drive data storage system and method
US8819334B2 (en) 2009-07-13 2014-08-26 Compellent Technologies Solid state drive data storage system and method
JP2011192257A (ja) * 2010-03-11 2011-09-29 Lsi Corp 分散データレイアウト環境における冗長性復元を最適化するためのシステム及び方法
JP2013174984A (ja) * 2012-02-24 2013-09-05 Nec Corp ストレージシステム
US9146851B2 (en) 2012-03-26 2015-09-29 Compellent Technologies Single-level cell and multi-level cell hybrid solid state drive
JP2015525377A (ja) * 2012-07-23 2015-09-03 株式会社日立製作所 ストレージシステム及びデータ管理方法
JP2015052960A (ja) * 2013-09-09 2015-03-19 富士通株式会社 ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム
JP2020021277A (ja) * 2018-07-31 2020-02-06 株式会社日立製作所 情報処理システム、情報処理システムの管理方法及びプログラム
US11221935B2 (en) 2018-07-31 2022-01-11 Hitachi, Ltd. Information processing system, information processing system management method, and program thereof
US11275531B2 (en) 2020-01-27 2022-03-15 Fujitsu Limited Storage system, management apparatus and storage medium

Also Published As

Publication number Publication date
US6516425B1 (en) 2003-02-04

Similar Documents

Publication Publication Date Title
JP2001147785A (ja) データを管理する方法
JP3177242B2 (ja) データ記憶装置における書込みオペレーション識別子の不揮発性メモリ記憶
US6467023B1 (en) Method for logical unit creation with immediate availability in a raid storage environment
US6523087B2 (en) Utilizing parity caching and parity logging while closing the RAID5 write hole
US5504858A (en) Method and apparatus for preserving data integrity in a multiple disk raid organized storage system
US6606629B1 (en) Data structures containing sequence and revision number metadata used in mass storage data integrity-assuring technique
JP3266277B2 (ja) 階層記憶管理システムのための変換式raid
US7069382B2 (en) Method of RAID 5 write hole prevention
US6553511B1 (en) Mass storage data integrity-assuring technique utilizing sequence and revision number metadata
US7281089B2 (en) System and method for reorganizing data in a raid storage system
JP2501752B2 (ja) コンピユ―タ・システムのストレ―ジ装置及びデ―タのストア方法
JP3226370B2 (ja) 高可用度ディスク配列に関する改善
US5875457A (en) Fault-tolerant preservation of data integrity during dynamic raid set expansion
US7962783B2 (en) Preventing write corruption in a raid array
JP3071017B2 (ja) 冗長アレイ・システムにおける冗長情報の復元方法および制御システム
US5950230A (en) RAID array configuration synchronization at power on
US7062704B2 (en) Storage array employing scrubbing operations using multiple levels of checksums
US6907504B2 (en) Method and system for upgrading drive firmware in a non-disruptive manner
JP2981245B2 (ja) アレイ型ディスク駆動機構システム及び方法
US8041891B2 (en) Method and system for performing RAID level migration
JP2000207136A (ja) 複数ドライブ故障トレラントraidアルゴリズム
US20040210731A1 (en) Systems and methods for striped storage migration
JPH04230512A (ja) Dasdアレイのための更新記録方法及び装置
US7454686B2 (en) Apparatus and method to check data integrity when handling data
US8375187B1 (en) I/O scheduling for flash drives

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050830

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051115

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060426