JPH05197498A - 構成可能な冗長アレイ記憶装置 - Google Patents
構成可能な冗長アレイ記憶装置Info
- Publication number
- JPH05197498A JPH05197498A JP3351155A JP35115591A JPH05197498A JP H05197498 A JPH05197498 A JP H05197498A JP 3351155 A JP3351155 A JP 3351155A JP 35115591 A JP35115591 A JP 35115591A JP H05197498 A JPH05197498 A JP H05197498A
- Authority
- JP
- Japan
- Prior art keywords
- storage device
- storage
- logical
- blocks
- devices
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2087—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring with a common controller
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/103—Hybrid, i.e. RAID systems with parity comprising a mix of RAID types
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 基本的冗長構成をそれぞれのユーザに対して
変更できる、またはユーザの要求が変更された時にそれ
に対応して変更できる、柔軟性のある廉価なディスクの
冗長アレイ(RAID)アーキテクチャ記憶装置を提供
する。また、異なる冗長構成を同時に実施することがで
きる柔軟性のあるRAIDアーキテクチャ記憶装置を提
供する。 【構成】 冗長アレイ記憶装置は、RAID1装置、R
AID3装置、RAID4装置、またはRAID1装
置、またはこれらの構成の任意の組み合わせとして構成
することができる。冗長アレイ記憶装置は1組の物理的
記憶装置を有し、この物理的記憶装置は1個または複数
個の論理記憶装置として構成される。論理ボリュームが
1個または複数個の論理記憶装置として定められる。冗
長群が1個または複数個の論理ボリュームとして定めら
れる。論理ボリュームは、ホストCPUによって、ボリ
ューム番号と、初期ブロック番号と、転送されるべきブ
ロックの数とによってアドレス指定される。
変更できる、またはユーザの要求が変更された時にそれ
に対応して変更できる、柔軟性のある廉価なディスクの
冗長アレイ(RAID)アーキテクチャ記憶装置を提供
する。また、異なる冗長構成を同時に実施することがで
きる柔軟性のあるRAIDアーキテクチャ記憶装置を提
供する。 【構成】 冗長アレイ記憶装置は、RAID1装置、R
AID3装置、RAID4装置、またはRAID1装
置、またはこれらの構成の任意の組み合わせとして構成
することができる。冗長アレイ記憶装置は1組の物理的
記憶装置を有し、この物理的記憶装置は1個または複数
個の論理記憶装置として構成される。論理ボリュームが
1個または複数個の論理記憶装置として定められる。冗
長群が1個または複数個の論理ボリュームとして定めら
れる。論理ボリュームは、ホストCPUによって、ボリ
ューム番号と、初期ブロック番号と、転送されるべきブ
ロックの数とによってアドレス指定される。
Description
【0001】
【産業上の利用分野】本発明はコンピュータ装置のデー
タ記憶装置に関する。さらに詳細にいえば、本発明は、
RAIDI装置、RAID3装置、RAID4装置、ま
たはRAID5装置として構成することができる、また
はこれらの構成の任意の組み合わせとして構成すること
ができる、冗長アレイ記憶装置に関す。
タ記憶装置に関する。さらに詳細にいえば、本発明は、
RAIDI装置、RAID3装置、RAID4装置、ま
たはRAID5装置として構成することができる、また
はこれらの構成の任意の組み合わせとして構成すること
ができる、冗長アレイ記憶装置に関す。
【0002】
【従来の技術とその問題点】典型的なデータ処理装置
は、全体的に、中央処理装置(CPU)に直接にまたは
制御装置およびチャンネルを通して接続された、1個ま
たは複数個の記憶装置を有する。これらの記憶装置の機
能は、CPUが特定のデータ処理装置タスクを実行する
のに使用するデータとプログラムを記憶することであ
る。
は、全体的に、中央処理装置(CPU)に直接にまたは
制御装置およびチャンネルを通して接続された、1個ま
たは複数個の記憶装置を有する。これらの記憶装置の機
能は、CPUが特定のデータ処理装置タスクを実行する
のに使用するデータとプログラムを記憶することであ
る。
【0003】最近のデータ処理装置には、いろいろな種
類の記憶装置が用いられる。典型的な装置は、記憶装置
のためのそれぞれの制御装置を通して装置に接続され
た、1個または複数個の大容量テープ装置およびまたは
ディスク装置(磁気的、光学的、または半導体的)を有
することができる。
類の記憶装置が用いられる。典型的な装置は、記憶装置
のためのそれぞれの制御装置を通して装置に接続され
た、1個または複数個の大容量テープ装置およびまたは
ディスク装置(磁気的、光学的、または半導体的)を有
することができる。
【0004】けれども、もしこの大容量記憶装置の1つ
が、その装置の中に含まれる情報がそのシステムによっ
てもはや利用可能でなくなったならば、問題点が生ず
る。通常は、このような故障はコンピュータ全体を停止
させるであろう。
が、その装置の中に含まれる情報がそのシステムによっ
てもはや利用可能でなくなったならば、問題点が生ず
る。通常は、このような故障はコンピュータ全体を停止
させるであろう。
【0005】先行技術は、この問題点を解決して信頼性
の高いデータ記憶装置をうるために、いくつかの方法を
提案している。レコードが比較的小さい装置では、記憶
装置の中のデータ・レコードのおのおのに添えられたE
CCシンドローム・ビットを生ずる、エラー訂正コード
を利用することが可能である。このようなコードの場
合、誤って読み出されることがあるわずかのデータを訂
正することが可能である。けれども、このようなコード
は、全体的に、誤っている長いレコードを訂正するまた
は再生するには適していなく、全部の記憶装置が故障す
るならば全く直すことができない。したがって、個別の
記憶装置に対し、外部的にデータの信頼性を与える必要
性が存在する。
の高いデータ記憶装置をうるために、いくつかの方法を
提案している。レコードが比較的小さい装置では、記憶
装置の中のデータ・レコードのおのおのに添えられたE
CCシンドローム・ビットを生ずる、エラー訂正コード
を利用することが可能である。このようなコードの場
合、誤って読み出されることがあるわずかのデータを訂
正することが可能である。けれども、このようなコード
は、全体的に、誤っている長いレコードを訂正するまた
は再生するには適していなく、全部の記憶装置が故障す
るならば全く直すことができない。したがって、個別の
記憶装置に対し、外部的にデータの信頼性を与える必要
性が存在する。
【0006】このような「外部」信頼性に対する別の方
式が、先行技術において開示されている。カリフォルニ
ア大学、バークレイの研究者グループによる、パターソ
ンほか名の論文「廉価なディスクの冗長アレイ(RAI
D)に対する1つの場合」(Proc.ACM SIG
MOD、1988年6月)は、記憶装置としてディスク
駆動機構を用いる時、このような信頼性をうるための多
数の異なる方式を列挙している。ディスク駆動機構のア
レイは、(廉価なディスクの冗長アレイに対する)略語
「RAID」の下で、5つのアーキテクチャの中の1つ
で特徴づけられる。
式が、先行技術において開示されている。カリフォルニ
ア大学、バークレイの研究者グループによる、パターソ
ンほか名の論文「廉価なディスクの冗長アレイ(RAI
D)に対する1つの場合」(Proc.ACM SIG
MOD、1988年6月)は、記憶装置としてディスク
駆動機構を用いる時、このような信頼性をうるための多
数の異なる方式を列挙している。ディスク駆動機構のア
レイは、(廉価なディスクの冗長アレイに対する)略語
「RAID」の下で、5つのアーキテクチャの中の1つ
で特徴づけられる。
【0007】RAID1アーキテクチャは、「ミラー」
記憶装置の複製された組を備えること、および記憶装置
の各対の上にすべてのデータの複製コピーを保持するこ
とを必要とする。このような解決法は信頼性の問題点を
解決するが、それは記憶のコストを2倍にする。RAI
D1アーキテクチャを実施した多数の装置が、特にタン
デム・コーポレーション社により、製造されている。
記憶装置の複製された組を備えること、および記憶装置
の各対の上にすべてのデータの複製コピーを保持するこ
とを必要とする。このような解決法は信頼性の問題点を
解決するが、それは記憶のコストを2倍にする。RAI
D1アーキテクチャを実施した多数の装置が、特にタン
デム・コーポレーション社により、製造されている。
【0008】RAID2アーキテクチャは、データの各
語の各ビット、プラス各語に対するエラー検出および訂
正(EDC)ビットを、分離したディスク駆動機構の上
に格納する。(これはまた「ビット・ストライピング」
として知られている。)例えば、フローラほか名の米国
特許第4,722,085号は、複数個の比較的小形で
かつ独立に動作するディスク部分装置を用いた、異常に
高い故障許容と非常に高いデータ転送帯域幅とを有する
大形で大容量のディスク駆動機構として機能する、ディ
スク駆動機構メモリを開示している。データ・オルガナ
イザは、エラー検出機能およびエラー訂正機能を得るた
めに、各32ビット・データ語に(周知のハミング・コ
ードを用いて決定された)7個のEDCビットを加え
る。その結果えられた39ビット語が、ディスク駆動機
構当たり1ビットずつ、39個のディスク駆動機構に書
き込まれる。もし39個のディスク駆動機構の中の1つ
が故障するならば、記憶された39ビット語のおのおの
の残りの38ビットは、データ語のおのおのがディスク
駆動機構から読み出される時、語毎の単位で32ビット
・データ語のおのおのを再構成するのに用いることがで
きる。
語の各ビット、プラス各語に対するエラー検出および訂
正(EDC)ビットを、分離したディスク駆動機構の上
に格納する。(これはまた「ビット・ストライピング」
として知られている。)例えば、フローラほか名の米国
特許第4,722,085号は、複数個の比較的小形で
かつ独立に動作するディスク部分装置を用いた、異常に
高い故障許容と非常に高いデータ転送帯域幅とを有する
大形で大容量のディスク駆動機構として機能する、ディ
スク駆動機構メモリを開示している。データ・オルガナ
イザは、エラー検出機能およびエラー訂正機能を得るた
めに、各32ビット・データ語に(周知のハミング・コ
ードを用いて決定された)7個のEDCビットを加え
る。その結果えられた39ビット語が、ディスク駆動機
構当たり1ビットずつ、39個のディスク駆動機構に書
き込まれる。もし39個のディスク駆動機構の中の1つ
が故障するならば、記憶された39ビット語のおのおの
の残りの38ビットは、データ語のおのおのがディスク
駆動機構から読み出される時、語毎の単位で32ビット
・データ語のおのおのを再構成するのに用いることがで
きる。
【0009】このような装置の明白な欠点は、(大てい
の大形コンピュータは32ビット語を使用するから)最
小の装置に対しても多数のディスク駆動機構を必要とす
ることであり、およびEDCビットを記憶するために比
較的高い駆動機構比(39の中から7駆動機構)を必要
とすることである。RAID2ディスク駆動機構メモリ
装置のまた別の制限条件は、個別のディスク作動器(ア
クチュエータ)が各データ・ブロックに書き込むのと同
時に動作することである。これらのビットは、ディスク
の駆動機構のすべてに亘って分布している。この構成は
高いデータ転送帯域幅を有する。それは、個々のディス
クのおのおのがデータのブロックに一部分を転送するか
らであり、その正味の効果は、単一の駆動機構がそのブ
ロックを呼び出す場合よりもはるかに速く、全ブロック
がコンピュータ装置に対し使用可能であるからである。
これは、大きいデータ・ブロックに対して利点である。
けれども、この構成により、全記憶装置に対し、ただ1
つの読み出し/書き込みヘッド作動器が得られる。この
ことは、データ・ファイルが小さい時、駆動アレイのラ
ンダム・アクセス特性に悪い影響を与える。それは、た
だ1つのデータ・ファイルを一度に「単一」作動器によ
って呼び出すことができるからである。したがって、R
AID2装置は、全体的に、バンキング装置、財務装
置、および予約装置のようなオン・ライン取引処理(O
LTP)のために設計されたコンピュータ装置に対して
適切であるとは考えられない。これらの場合には、多数
個の小さなデータ・ファイルに対する大量のランダムア
クセスは、大量のデータ格納動作と大量のデータ転送動
作を有している。
の大形コンピュータは32ビット語を使用するから)最
小の装置に対しても多数のディスク駆動機構を必要とす
ることであり、およびEDCビットを記憶するために比
較的高い駆動機構比(39の中から7駆動機構)を必要
とすることである。RAID2ディスク駆動機構メモリ
装置のまた別の制限条件は、個別のディスク作動器(ア
クチュエータ)が各データ・ブロックに書き込むのと同
時に動作することである。これらのビットは、ディスク
の駆動機構のすべてに亘って分布している。この構成は
高いデータ転送帯域幅を有する。それは、個々のディス
クのおのおのがデータのブロックに一部分を転送するか
らであり、その正味の効果は、単一の駆動機構がそのブ
ロックを呼び出す場合よりもはるかに速く、全ブロック
がコンピュータ装置に対し使用可能であるからである。
これは、大きいデータ・ブロックに対して利点である。
けれども、この構成により、全記憶装置に対し、ただ1
つの読み出し/書き込みヘッド作動器が得られる。この
ことは、データ・ファイルが小さい時、駆動アレイのラ
ンダム・アクセス特性に悪い影響を与える。それは、た
だ1つのデータ・ファイルを一度に「単一」作動器によ
って呼び出すことができるからである。したがって、R
AID2装置は、全体的に、バンキング装置、財務装
置、および予約装置のようなオン・ライン取引処理(O
LTP)のために設計されたコンピュータ装置に対して
適切であるとは考えられない。これらの場合には、多数
個の小さなデータ・ファイルに対する大量のランダムア
クセスは、大量のデータ格納動作と大量のデータ転送動
作を有している。
【0010】RAID3アーキテクチャは、ディスク駆
動記憶装置のおのおのが故障またはデータ・エラーを検
出するための内部装置を有する、という概念に基づいて
いる。したがって、エラーの位置を検出するための余分
の情報を記憶することは必要ではなく、だから、パリテ
ィに基づくエラー訂正の、より単純な形式を用いること
ができる。この方式では、故障を受けるすべての記憶装
置の内容は、パリティ情報を生ずるために、「排他的O
R」(XOR)処理を受ける。その結果えられる情報
は、1つの冗長記憶装置の中に記憶される。もし1つの
記憶装置が故障するならば、その装置の中のデータは、
パリティ情報を有する残りの記憶装置からデータをXO
R処理することにより、代替記憶装置の中に再構成され
ることができる。このような構成は、「N」記憶装置の
ためにただ1つの付加記憶装置だけが要求されるミラー
形ディスクRAID1アーキテクチャよりも、利点を有
する。RAID3アーキテクチャのまた別の特徴は、デ
ィスク駆動機構がRAID2装置と同様に結合した方式
で動作することであり、かつ1つのディスク駆動機構が
パリテイ装置として設計されることである。
動記憶装置のおのおのが故障またはデータ・エラーを検
出するための内部装置を有する、という概念に基づいて
いる。したがって、エラーの位置を検出するための余分
の情報を記憶することは必要ではなく、だから、パリテ
ィに基づくエラー訂正の、より単純な形式を用いること
ができる。この方式では、故障を受けるすべての記憶装
置の内容は、パリティ情報を生ずるために、「排他的O
R」(XOR)処理を受ける。その結果えられる情報
は、1つの冗長記憶装置の中に記憶される。もし1つの
記憶装置が故障するならば、その装置の中のデータは、
パリティ情報を有する残りの記憶装置からデータをXO
R処理することにより、代替記憶装置の中に再構成され
ることができる。このような構成は、「N」記憶装置の
ためにただ1つの付加記憶装置だけが要求されるミラー
形ディスクRAID1アーキテクチャよりも、利点を有
する。RAID3アーキテクチャのまた別の特徴は、デ
ィスク駆動機構がRAID2装置と同様に結合した方式
で動作することであり、かつ1つのディスク駆動機構が
パリテイ装置として設計されることである。
【0011】RAID3アーキテクチャの1つの実施例
は、マイクロポリス・コーポレーション・パラレル駆動
アレイ、モデル1804 SCSIである。この装置
は、4個の並列でかつ同期したディスク駆動機構と、1
つの冗長パリティ駆動機構とを使用する。4個のデータ
・ディスク駆動機構の中の1つの故障は、パリティ・デ
ィスク駆動機構に格納されたパリティ・ビットを用いる
ことによって、修復することができる。RAID3装置
のまた別の実施例は、オウチ名の米国特許第4,09
2,732号に開示されている。
は、マイクロポリス・コーポレーション・パラレル駆動
アレイ、モデル1804 SCSIである。この装置
は、4個の並列でかつ同期したディスク駆動機構と、1
つの冗長パリティ駆動機構とを使用する。4個のデータ
・ディスク駆動機構の中の1つの故障は、パリティ・デ
ィスク駆動機構に格納されたパリティ・ビットを用いる
ことによって、修復することができる。RAID3装置
のまた別の実施例は、オウチ名の米国特許第4,09
2,732号に開示されている。
【0012】RAID3ディスク駆動メモリ装置は、R
AID2装置よりも、データ装置に対する冗長装置の比
がはるかに小さい。けれども、RAID3装置はRAI
D2装置と同じ特性限界を有する。そこでは、個別のデ
ィスク作動器は結合され、そして一緒に動作する。この
ことは、データ・ファイルが小さい時、駆動アレイのラ
ンダム・アクセス特性に不都合な影響を与える。それ
は、一度にただ1個のデータ・ファイルだけを「単一
の」作動器によって呼び出すことができるからである。
したがって、RAID3装置は、全体的に、OLTP目
的のために設計されたコンピュータ装置に対し適切であ
るとは考えられない。
AID2装置よりも、データ装置に対する冗長装置の比
がはるかに小さい。けれども、RAID3装置はRAI
D2装置と同じ特性限界を有する。そこでは、個別のデ
ィスク作動器は結合され、そして一緒に動作する。この
ことは、データ・ファイルが小さい時、駆動アレイのラ
ンダム・アクセス特性に不都合な影響を与える。それ
は、一度にただ1個のデータ・ファイルだけを「単一
の」作動器によって呼び出すことができるからである。
したがって、RAID3装置は、全体的に、OLTP目
的のために設計されたコンピュータ装置に対し適切であ
るとは考えられない。
【0013】RAID4アーキテクチャはRAID3ア
ーキテクチャと同じパリティ・エラー訂正概念を用いる
が、しかし、小さなファイルのランダム読み出しに関
し、個個のディスク駆動機構の作動器の動作を「非結
合」にすることによって、およびデータの最小量(典型
的には、ディスク・セクタ)を各ディスクに対してより
大きな割合で読み出すおよび書き込むこと(これはま
た、ブロック・ストライピングとして知られている)に
よって、RAID3装置の特性を改良する。RAID4
アーキテクチャのさらに別の特徴は、単一記憶装置がパ
リティ装置として設計されることである。
ーキテクチャと同じパリティ・エラー訂正概念を用いる
が、しかし、小さなファイルのランダム読み出しに関
し、個個のディスク駆動機構の作動器の動作を「非結
合」にすることによって、およびデータの最小量(典型
的には、ディスク・セクタ)を各ディスクに対してより
大きな割合で読み出すおよび書き込むこと(これはま
た、ブロック・ストライピングとして知られている)に
よって、RAID3装置の特性を改良する。RAID4
アーキテクチャのさらに別の特徴は、単一記憶装置がパ
リティ装置として設計されることである。
【0014】RAID4装置の限界は、独立に動作する
データ記憶装置のアレイにデータ・ブロックを書き込む
ことが、パリティ装置に新しいパリティ・ブロックを書
き込むこと必要とすることである。パリティ装置に記憶
されたパリティ情報は読み出されなければならなく、そ
して(古いデータの情報内容を「除去」するために)古
いデータとXOR処理をしなければならない。それか
ら、その結果得られた和は(新しいパリティ情報を得る
ために)新しいデータとXOR処理をしなければならな
い。それから、データ・レコードとパリティ・レコード
との両方がディスク駆動機構に書き込まれなければなら
ない。この工程は、通常、「読み出し・変更・書き込
み」シーケンスと呼ばれる。
データ記憶装置のアレイにデータ・ブロックを書き込む
ことが、パリティ装置に新しいパリティ・ブロックを書
き込むこと必要とすることである。パリティ装置に記憶
されたパリティ情報は読み出されなければならなく、そ
して(古いデータの情報内容を「除去」するために)古
いデータとXOR処理をしなければならない。それか
ら、その結果得られた和は(新しいパリティ情報を得る
ために)新しいデータとXOR処理をしなければならな
い。それから、データ・レコードとパリティ・レコード
との両方がディスク駆動機構に書き込まれなければなら
ない。この工程は、通常、「読み出し・変更・書き込
み」シーケンスと呼ばれる。
【0015】したがって、パリティ装置のパリティ・レ
コードによって受け持たれる任意のデータ記憶装置のレ
コードが変更される度に、単一パリティ装置の上で読み
出しおよび書き込みが起こる。パリティ装置はデータ書
き込み動作に対する隘路になる。それは、多数個のデー
タ記憶装置の並列動作によって得られる高速呼び出し速
度とは異なって、単位時間当たりに実行できるレコード
に対する変更の数はパリティ装置の呼び出し速度の関数
であるからである。この制限のために、RAID4装置
は、全体的に、OLTP目的のために設計されたコンピ
ュータ装置に対し適切であるとは考えられない。実際、
RAID4装置は、実用目的では、製造されていないよ
うに思われる。
コードによって受け持たれる任意のデータ記憶装置のレ
コードが変更される度に、単一パリティ装置の上で読み
出しおよび書き込みが起こる。パリティ装置はデータ書
き込み動作に対する隘路になる。それは、多数個のデー
タ記憶装置の並列動作によって得られる高速呼び出し速
度とは異なって、単位時間当たりに実行できるレコード
に対する変更の数はパリティ装置の呼び出し速度の関数
であるからである。この制限のために、RAID4装置
は、全体的に、OLTP目的のために設計されたコンピ
ュータ装置に対し適切であるとは考えられない。実際、
RAID4装置は、実用目的では、製造されていないよ
うに思われる。
【0016】RAID5アーキテクチャは、RAID4
アーキテクチャと同じパリティ・エラー訂正概念および
独立な作動器を用いるが、しかし、データおよびパリテ
ィ情報を利用可能なすべてのディスク駆動機構に亘って
配分することによって、RAID4装置の書き込み特性
を改良する。典型的には、1つの組の中の「N+1」個
の記憶装置(「冗長群」としてまた知られている)は、
ブロックと呼ばれる複数個の同じ大きさのアドレス領域
に分割される。記憶装置のおのおのは、全体的に、同じ
数のブロックを有する。同じ装置アドレス領域を有する
冗長群の中の各記憶装置からのブロックは、「縞」と呼
ばれる。縞のおのおのはデータのN個のブロックと、1
個の記憶装置の上の1個のパリティ・ブロックとを有す
る。パリティ・ブロックは縞の残りの部分に対するパリ
ティを有する。さらに、縞のおのおのは1個のパリティ
・ブロックを有する。パリティ・ブロックは、異なる記
憶装置に分布する。したがって、冗長群の中のデータの
変更毎に付随するパリティ更新活動は、異なる記憶装置
に亘って分布される。単一の装置がすべてのパリティ更
新活動の負担を負わされることはない。
アーキテクチャと同じパリティ・エラー訂正概念および
独立な作動器を用いるが、しかし、データおよびパリテ
ィ情報を利用可能なすべてのディスク駆動機構に亘って
配分することによって、RAID4装置の書き込み特性
を改良する。典型的には、1つの組の中の「N+1」個
の記憶装置(「冗長群」としてまた知られている)は、
ブロックと呼ばれる複数個の同じ大きさのアドレス領域
に分割される。記憶装置のおのおのは、全体的に、同じ
数のブロックを有する。同じ装置アドレス領域を有する
冗長群の中の各記憶装置からのブロックは、「縞」と呼
ばれる。縞のおのおのはデータのN個のブロックと、1
個の記憶装置の上の1個のパリティ・ブロックとを有す
る。パリティ・ブロックは縞の残りの部分に対するパリ
ティを有する。さらに、縞のおのおのは1個のパリティ
・ブロックを有する。パリティ・ブロックは、異なる記
憶装置に分布する。したがって、冗長群の中のデータの
変更毎に付随するパリティ更新活動は、異なる記憶装置
に亘って分布される。単一の装置がすべてのパリティ更
新活動の負担を負わされることはない。
【0017】例えば、5個のディスク駆動機構を有する
RAID5装置において、第1縞のブロックに対するパ
リティ情報は第2駆動機構に書き込むことができ、第2
縞のブロックに対するパリティ情報は第4駆動機構に書
き込むことができ、第3縞のブロックに対するパリティ
情報は第3駆動機構に書き込むことができる、などであ
る。続いて起こる縞に対するパリティ・ブロックは、螺
旋状パターンに(他のパターンも可能であるけれども)
ディスク駆動機構のまわりを前進する。
RAID5装置において、第1縞のブロックに対するパ
リティ情報は第2駆動機構に書き込むことができ、第2
縞のブロックに対するパリティ情報は第4駆動機構に書
き込むことができ、第3縞のブロックに対するパリティ
情報は第3駆動機構に書き込むことができる、などであ
る。続いて起こる縞に対するパリティ・ブロックは、螺
旋状パターンに(他のパターンも可能であるけれども)
ディスク駆動機構のまわりを前進する。
【0018】したがって、パリティ情報を記憶するため
にディスク駆動機構を用いることはなく、そしてRAI
D4アーキテクチャの隘路はなくなる。RAID5装置
の1つの実施例は、クラークほか名の米国特許第4,7
61,765号に開示されている。
にディスク駆動機構を用いることはなく、そしてRAI
D4アーキテクチャの隘路はなくなる。RAID5装置
の1つの実施例は、クラークほか名の米国特許第4,7
61,765号に開示されている。
【0019】RAID4装置におけるように、RAID
5装置の限界は、データ・ブロックの中の変更が2個の
読み出し動作と2個の書き込み動作とを有する、読み出
し・変更・書き込みシーケンスを必要とすることであ
る。古いパリティ・ブロックと古いデータ・ブロックは
読み出され、そしてXOR処理されなければならなく、
そしてそれから、その結果得られた和は新しいデータと
XOR処理されなければならない。それから、データ・
ブロックとパリティ・ブロックとの両方が、ディスク駆
動機構に書き込まれなければならない。2個の書き込み
動作の場合と同様に、2個の読み出し動作は並列に実行
できるが、RAID4装置またはRAID5装置の中の
データのブロックの変更は、従来のディスクについての
同じ動作よりなお大幅に長くかかる。従来のディスクは
予備的読み出し動作を必要としない。したがって、書き
込み動作を実行するために、ディスク駆動機構が以前の
位置に回転して戻るのを待たなければならない。この回
転時間だけで、典型的なデータ変更動作のために必要な
時間の約50%になることがある。さらに、2個のディ
スク記憶装置がそれぞれのデータ変更動作の期間内に関
与し、そしてそれは全体として装置の処理量を限定す
る。書き込み特性の犠牲にも拘らず、RAID5形装置
はますます広く用いられてきている。それは、この装置
により、冗長特性、良好な読み出し特性、および良好な
書き込み特性に対し、低い総コストでデータの高信頼性
が得られるからである。
5装置の限界は、データ・ブロックの中の変更が2個の
読み出し動作と2個の書き込み動作とを有する、読み出
し・変更・書き込みシーケンスを必要とすることであ
る。古いパリティ・ブロックと古いデータ・ブロックは
読み出され、そしてXOR処理されなければならなく、
そしてそれから、その結果得られた和は新しいデータと
XOR処理されなければならない。それから、データ・
ブロックとパリティ・ブロックとの両方が、ディスク駆
動機構に書き込まれなければならない。2個の書き込み
動作の場合と同様に、2個の読み出し動作は並列に実行
できるが、RAID4装置またはRAID5装置の中の
データのブロックの変更は、従来のディスクについての
同じ動作よりなお大幅に長くかかる。従来のディスクは
予備的読み出し動作を必要としない。したがって、書き
込み動作を実行するために、ディスク駆動機構が以前の
位置に回転して戻るのを待たなければならない。この回
転時間だけで、典型的なデータ変更動作のために必要な
時間の約50%になることがある。さらに、2個のディ
スク記憶装置がそれぞれのデータ変更動作の期間内に関
与し、そしてそれは全体として装置の処理量を限定す
る。書き込み特性の犠牲にも拘らず、RAID5形装置
はますます広く用いられてきている。それは、この装置
により、冗長特性、良好な読み出し特性、および良好な
書き込み特性に対し、低い総コストでデータの高信頼性
が得られるからである。
【0020】現在まで、異なるRAID装置が設計され
たが、このような装置はやや柔軟性に欠け、そこでは1
種類の冗長構成だけがそれぞれの設計で実施された。し
たがって、例えば、冗長アレイ記憶装置の設計は、全体
的に、RAID3装置だけまたはRAID5装置だけに
限られている。冗長アレイ記憶装置の原理的利用は利点
を有することが分かった時、設計のこのような硬直さは
問題点を提出しないであろう。けれども、記憶装置の利
用は時と共に変わることがある。実際、同じ時に、ユー
ザは異なる種類のRAID装置にたいする必要性を持つ
ことがあるが、これらの要請に適合した多数個の記憶装
置を取得するための資源を有しないことがあった。重要
なこととして、異なるユーザは異なる要求を有すること
である。このような異なる要請に適応するために、異な
るRAID構成を有する冗長アレイ記憶装置を設計する
ことはコストがかかる。
たが、このような装置はやや柔軟性に欠け、そこでは1
種類の冗長構成だけがそれぞれの設計で実施された。し
たがって、例えば、冗長アレイ記憶装置の設計は、全体
的に、RAID3装置だけまたはRAID5装置だけに
限られている。冗長アレイ記憶装置の原理的利用は利点
を有することが分かった時、設計のこのような硬直さは
問題点を提出しないであろう。けれども、記憶装置の利
用は時と共に変わることがある。実際、同じ時に、ユー
ザは異なる種類のRAID装置にたいする必要性を持つ
ことがあるが、これらの要請に適合した多数個の記憶装
置を取得するための資源を有しないことがあった。重要
なこととして、異なるユーザは異なる要求を有すること
である。このような異なる要請に適応するために、異な
るRAID構成を有する冗長アレイ記憶装置を設計する
ことはコストがかかる。
【0021】したがって、基本的冗長構成をそれぞれの
ユーザに対して変更することができる、またはユーザの
要求が変わった時変更することができる、柔軟性のある
RAIDアーキテクチャ記憶装置を提供することが強く
要請される。また、異なる種類の冗長構成を同時に実施
することができる。柔軟性のあるRAIDアーキテクチ
ャ記憶装置を提供することが望ましい。本発明により、
このような装置が得られる。
ユーザに対して変更することができる、またはユーザの
要求が変わった時変更することができる、柔軟性のある
RAIDアーキテクチャ記憶装置を提供することが強く
要請される。また、異なる種類の冗長構成を同時に実施
することができる。柔軟性のあるRAIDアーキテクチ
ャ記憶装置を提供することが望ましい。本発明により、
このような装置が得られる。
【0022】
【問題点を解決するための方法】本発明のRAIDアー
キテクチャは極めて大きな融通性を有している。そし
て、本発明により、冗長アレイ記憶装置は、RAID1
記憶装置,RAID3記憶装置,RAID4記憶装置,
またはRAID5記憶装置として、またはこれらの構成
の任意の組み合わせとして、構成することができる。本
発明は、冗長アレイ記憶装置をアドレス指定するための
構成データ構造を有し、および初期設定工程中に冗長ア
レイ記憶装置を構成する方法を有する。
キテクチャは極めて大きな融通性を有している。そし
て、本発明により、冗長アレイ記憶装置は、RAID1
記憶装置,RAID3記憶装置,RAID4記憶装置,
またはRAID5記憶装置として、またはこれらの構成
の任意の組み合わせとして、構成することができる。本
発明は、冗長アレイ記憶装置をアドレス指定するための
構成データ構造を有し、および初期設定工程中に冗長ア
レイ記憶装置を構成する方法を有する。
【0023】冗長アレイ記憶装置は、1組の物理的記憶
装置を有する。この物理的記憶装置は、ブロック番号
(1個のブロックは1個または複数個のセクタを有す
る。)によってアクセスすることができる。初期設定工
程の一部分として、物理的記憶装置のおのおのは、1個
または複数個の論理記憶装置として構成される。論理記
憶装置のおのおのは、チャンネル番号と、記憶装置番号
と、開始ブロック番号と、およびオフセット数(転送が
実行される時、転送されるべきブロックの数がまた指定
される)とによって、アドレスが指定される。
装置を有する。この物理的記憶装置は、ブロック番号
(1個のブロックは1個または複数個のセクタを有す
る。)によってアクセスすることができる。初期設定工
程の一部分として、物理的記憶装置のおのおのは、1個
または複数個の論理記憶装置として構成される。論理記
憶装置のおのおのは、チャンネル番号と、記憶装置番号
と、開始ブロック番号と、およびオフセット数(転送が
実行される時、転送されるべきブロックの数がまた指定
される)とによって、アドレスが指定される。
【0024】一旦、論理記憶装置が定められると、論理
ボリュームが1個または複数個の論理記憶装置として定
められる。論理ボリュームのおのおのは深さ特性を有す
る。
ボリュームが1個または複数個の論理記憶装置として定
められる。論理ボリュームのおのおのは深さ特性を有す
る。
【0025】論理ボリュームが定められた後、冗長群が
1個または複数個の論理ボリュームとして定められる。
本発明において、冗長群のおのおのに対して、冗長レベ
ルが指定される。冗長レベルは、0、1(例えば、XO
Rパリティ、またはリード・ソロモン・コードのような
エラー訂正コード)、または2(例えば、XORパリテ
ィ・プラス・リード・ソロモン・エラー訂正コード)で
あることができる。
1個または複数個の論理ボリュームとして定められる。
本発明において、冗長群のおのおのに対して、冗長レベ
ルが指定される。冗長レベルは、0、1(例えば、XO
Rパリティ、またはリード・ソロモン・コードのような
エラー訂正コード)、または2(例えば、XORパリテ
ィ・プラス・リード・ソロモン・エラー訂正コード)で
あることができる。
【0026】または、冗長群は1個または複数個の論理
記憶装置として定められ、そして論理ボリュームは多数
個の冗長群として定められる。
記憶装置として定められ、そして論理ボリュームは多数
個の冗長群として定められる。
【0027】論理ボリュームは、ホストCPUによっ
て、ボリューム番号と、初期ブロック番号と、転送され
るべきブロックの数とによって、アドレス指定される。
ホストCPUはまた、読み出し動作または書き込み動作
を指定する。それから、指定されたボリューム番号と、
初期ブロック番号と、転送されるべきブロックの数と
が、対応するチャンネル番号と、記憶装置番号と、開始
ブロック番号と、および転送されるべきブロックの数と
に翻訳される。
て、ボリューム番号と、初期ブロック番号と、転送され
るべきブロックの数とによって、アドレス指定される。
ホストCPUはまた、読み出し動作または書き込み動作
を指定する。それから、指定されたボリューム番号と、
初期ブロック番号と、転送されるべきブロックの数と
が、対応するチャンネル番号と、記憶装置番号と、開始
ブロック番号と、および転送されるべきブロックの数と
に翻訳される。
【0028】本発明により、論理ボリュームが、物理的
記憶装置に渡ること(「垂直区分」)と、このような物
理的記憶装置の一部分のみを有すること(「水平区
分」)と、および定めることが可能な深さ特性および冗
長特性を有することができる。
記憶装置に渡ること(「垂直区分」)と、このような物
理的記憶装置の一部分のみを有すること(「水平区
分」)と、および定めることが可能な深さ特性および冗
長特性を有することができる。
【0029】本発明の好ましい実施例の細部は、添付図
面と下記の詳細な説明に示される。本発明の細部を一旦
理解すれば、本発明の範囲内において、多くの変更のな
しうることは当業者にはすぐに分かるであろう。
面と下記の詳細な説明に示される。本発明の細部を一旦
理解すれば、本発明の範囲内において、多くの変更のな
しうることは当業者にはすぐに分かるであろう。
【0030】
【実施例】添付図面において、同等な部品には同じ参照
番号および同じ名称が付されている。
番号および同じ名称が付されている。
【0031】本明細書において、説明される好ましい実
施例は単なる例示のためであって、本発明の方法がそれ
らに限定されることを意味するものではない。
施例は単なる例示のためであって、本発明の方法がそれ
らに限定されることを意味するものではない。
【0032】本発明は、1個または多数個の物理的記憶
装置の群と、この物理的記憶装置がCPUによってどの
ように呼び出されるかを決定するために物理的記憶装置
上に「配置」された1組の論理装置とを有する。
装置の群と、この物理的記憶装置がCPUによってどの
ように呼び出されるかを決定するために物理的記憶装置
上に「配置」された1組の論理装置とを有する。
【0033】磁気ディスク駆動機構または光ディスク駆
動機構のような典型的な物理的記憶装置は、各表面のお
のおの当たり少なくとも1個の読み出し/書き込み変換
器ヘッドを備えた1個または多数個の回転するディスク
を有する。1個のディスク記憶装置は、例えば、ディス
ク表面当たり500トラックないし2000トラックを
有することができる。これらのトラックのおのおのは、
通常は寸法が512バイトである番号付きセクタに分割
される。これらのセクタは、記憶装置によって呼び出す
ことができる記憶領域の最小単位である。(セクタの中
のデータ・ビットは個別に変更できるが、また、全セク
タを読み出し、そして選定されたビットを変更し、そし
て全セクタを元に戻して書き込むことによって変更する
ことができる。)ディスク記憶装置はトラック当たり8
個ないし50個のセクタを有することができる。トラッ
クの群は、同じディスク記憶装置の上で、トラック当た
りのセクタの数がトラック毎に異なることが可能であ
る。(内側の比較的小さなトラックはトラック当たりの
セクタの数が少なく、一方、外側の比較的大きなトラッ
クはトラック当たりのセクタの数が多いことが可能であ
る。)
動機構のような典型的な物理的記憶装置は、各表面のお
のおの当たり少なくとも1個の読み出し/書き込み変換
器ヘッドを備えた1個または多数個の回転するディスク
を有する。1個のディスク記憶装置は、例えば、ディス
ク表面当たり500トラックないし2000トラックを
有することができる。これらのトラックのおのおのは、
通常は寸法が512バイトである番号付きセクタに分割
される。これらのセクタは、記憶装置によって呼び出す
ことができる記憶領域の最小単位である。(セクタの中
のデータ・ビットは個別に変更できるが、また、全セク
タを読み出し、そして選定されたビットを変更し、そし
て全セクタを元に戻して書き込むことによって変更する
ことができる。)ディスク記憶装置はトラック当たり8
個ないし50個のセクタを有することができる。トラッ
クの群は、同じディスク記憶装置の上で、トラック当た
りのセクタの数がトラック毎に異なることが可能であ
る。(内側の比較的小さなトラックはトラック当たりの
セクタの数が少なく、一方、外側の比較的大きなトラッ
クはトラック当たりのセクタの数が多いことが可能であ
る。)
【0034】1つのセクタの呼ひ出しは、最終的に、回
転するディスクの組に沿っての軸方向の移動と、ディス
クの上での半径方向の移動と、ディスクまわりでの円周
方向の移動とによって、セクタの識別を行うことが必要
である。このような識別のために、通常、2つの方式が
用いられる。第1の方式は、表面番号またはヘッド番号
(軸方向変位)と、トラック番号(半径方向変位)と、
セクタ番号(円周方向変位)とによって、セクタを識別
する。第2の方式は、すべてのディスクの上の同じ半径
を有するトラックの全部を「シリンダ」として処理す
る。したがって、トラックは、1つの表面の上にあるよ
りは、1つのシリンダの上にある。この方式では、セク
タは、シリンダ番号(半径方向変位)と、トラック番号
(軸方向変位)と、セクタ番号(円周方向変位)とによ
って識別される。本発明は、いずれの方式の物理的識別
を用いても実施することができる。
転するディスクの組に沿っての軸方向の移動と、ディス
クの上での半径方向の移動と、ディスクまわりでの円周
方向の移動とによって、セクタの識別を行うことが必要
である。このような識別のために、通常、2つの方式が
用いられる。第1の方式は、表面番号またはヘッド番号
(軸方向変位)と、トラック番号(半径方向変位)と、
セクタ番号(円周方向変位)とによって、セクタを識別
する。第2の方式は、すべてのディスクの上の同じ半径
を有するトラックの全部を「シリンダ」として処理す
る。したがって、トラックは、1つの表面の上にあるよ
りは、1つのシリンダの上にある。この方式では、セク
タは、シリンダ番号(半径方向変位)と、トラック番号
(軸方向変位)と、セクタ番号(円周方向変位)とによ
って識別される。本発明は、いずれの方式の物理的識別
を用いても実施することができる。
【0035】より高レベルの記憶制御装置に対し(CP
Uでも)、すべての関与するセクタを追跡することによ
って、記憶装置の上のデータの位置のトラックを保持す
ることができる。このことは、通常、パーソナル・コン
ピュータに用いられるよく知られているST−506イ
ンタフェース・スタンダードに従う磁気ディスク駆動機
構で実行される。このように呼び出される記憶装置は、
セクタ呼び出し可能として知られている。
Uでも)、すべての関与するセクタを追跡することによ
って、記憶装置の上のデータの位置のトラックを保持す
ることができる。このことは、通常、パーソナル・コン
ピュータに用いられるよく知られているST−506イ
ンタフェース・スタンダードに従う磁気ディスク駆動機
構で実行される。このように呼び出される記憶装置は、
セクタ呼び出し可能として知られている。
【0036】けれども、高レベル記憶制御装置に対する
最近のコンピュータ装置において、前記のアドレス指定
方式のいずれかによって、セクタ・アドレスのトラック
を保持することは不便である。したがって、本発明の好
ましい実施例では、記憶装置のセクタをより追跡可能な
方式に配置する、また別の方式の記憶装置アドレス指定
が用いられる。
最近のコンピュータ装置において、前記のアドレス指定
方式のいずれかによって、セクタ・アドレスのトラック
を保持することは不便である。したがって、本発明の好
ましい実施例では、記憶装置のセクタをより追跡可能な
方式に配置する、また別の方式の記憶装置アドレス指定
が用いられる。
【0037】この配置は、当業者にはよく知られている
ように、1個または複数個のセクタをブロックとして処
理することにより、および各記憶装置をブロック番号で
アドレス指定することにより、達成される。本発明の装
置の好ましい実施例に用いられる記憶装置の上の1つの
ブロックは、512バイトから4096バイトまで変わ
ることができるが、それは任意の大きさであることがで
きる。(ただし、実施を容易にするために、通常、ブロ
ックの大きさは2バイトの倍数に限定される。)用いら
れる記憶装置は指定されたブロックの大きさを支援しな
ければならない。さらに、このような記憶装置は、ブロ
ックを構成するのに欠陥セクタを用いないように、これ
らの欠陥セクタに注意を払う。(ある記憶装置はまた、
外部装置に対し1組の隣接して番号付けされたブロック
を常に提供するために、動作中に欠陥ブロックを動的に
「配置から除外する」ことができる。)その時、各記憶
装置は、より高レベルの制御装置によって、1組の隣接
して番号付けされたブロックを有する「完全な」物理的
装置であると考えられる。
ように、1個または複数個のセクタをブロックとして処
理することにより、および各記憶装置をブロック番号で
アドレス指定することにより、達成される。本発明の装
置の好ましい実施例に用いられる記憶装置の上の1つの
ブロックは、512バイトから4096バイトまで変わ
ることができるが、それは任意の大きさであることがで
きる。(ただし、実施を容易にするために、通常、ブロ
ックの大きさは2バイトの倍数に限定される。)用いら
れる記憶装置は指定されたブロックの大きさを支援しな
ければならない。さらに、このような記憶装置は、ブロ
ックを構成するのに欠陥セクタを用いないように、これ
らの欠陥セクタに注意を払う。(ある記憶装置はまた、
外部装置に対し1組の隣接して番号付けされたブロック
を常に提供するために、動作中に欠陥ブロックを動的に
「配置から除外する」ことができる。)その時、各記憶
装置は、より高レベルの制御装置によって、1組の隣接
して番号付けされたブロックを有する「完全な」物理的
装置であると考えられる。
【0038】例えば、小型コンピュータ装置インタフェ
ース(「SCSI」)を有する記憶装置の場合、各記憶
装置はブロックの隣接した組であると考えられる。この
ような装置に対する呼び出し要求は、呼び出されるべき
ブロックの番号を単に指定する。または、呼び出し要求
は、開始ブロックの番号と、後に続く論理的に隣接する
呼び出されるべきブロックの番号とを指定する。その
後、この装置に対するSCSI制御装置は、各ブロック
番号を、シリンダ、トラック、およびセクタ番号の形
式、またはヘッド、トラック、およびセクタ番号形式の
いずれかに変換させる。けれども、この変換は要求元の
装置に対し明白である。
ース(「SCSI」)を有する記憶装置の場合、各記憶
装置はブロックの隣接した組であると考えられる。この
ような装置に対する呼び出し要求は、呼び出されるべき
ブロックの番号を単に指定する。または、呼び出し要求
は、開始ブロックの番号と、後に続く論理的に隣接する
呼び出されるべきブロックの番号とを指定する。その
後、この装置に対するSCSI制御装置は、各ブロック
番号を、シリンダ、トラック、およびセクタ番号の形
式、またはヘッド、トラック、およびセクタ番号形式の
いずれかに変換させる。けれども、この変換は要求元の
装置に対し明白である。
【0039】本発明の概念は、セクタ呼び出し可能記憶
装置に適用できることは明らかである。けれども、本発
明の好ましい実施例は、ブロック呼び出し可能記憶装置
を利用する。それで、本発明により、複数個のこのよう
な装置を配置して、基本的ディスク・アレイ・アーキテ
クチャを定める第1論理構造体がえられる。
装置に適用できることは明らかである。けれども、本発
明の好ましい実施例は、ブロック呼び出し可能記憶装置
を利用する。それで、本発明により、複数個のこのよう
な装置を配置して、基本的ディスク・アレイ・アーキテ
クチャを定める第1論理構造体がえられる。
【0040】図1は、本発明による一般化されたRAI
Dの図面である。少なくとも1つのアレイ制御装置3に
バス2によって接続された、CPU1が示されている。
アレイ制御装置3は、I/Oチャンネル4(例えば、S
OSIバス)によって、複数個の記憶装置S1−S6
(6個は単に例示のためのものである)のおのおのに接
続される。I/Oチャンネル4のおのおのは、図1の点
線で示されているように、複数個の記憶装置を支援する
ことができる。いくつかの物理的構造体では、第2アレ
イ制御装置3′(図示されていない)を、付加された冗
長性のために、アレイ制御装置3と並列に、I/Oチャ
ンネル4に接続することができる。アレイ制御装置3は
分離したプログラム可能、マルチタスク処理装置(例え
ば、サニベール、カリフオルニアのMIPS社製のMI
PS R3000 RISC処理装置)を有することが
好ましい。この処理装置は、記憶装置を制御するため
に、CPUIと独立に動作することができる。
Dの図面である。少なくとも1つのアレイ制御装置3に
バス2によって接続された、CPU1が示されている。
アレイ制御装置3は、I/Oチャンネル4(例えば、S
OSIバス)によって、複数個の記憶装置S1−S6
(6個は単に例示のためのものである)のおのおのに接
続される。I/Oチャンネル4のおのおのは、図1の点
線で示されているように、複数個の記憶装置を支援する
ことができる。いくつかの物理的構造体では、第2アレ
イ制御装置3′(図示されていない)を、付加された冗
長性のために、アレイ制御装置3と並列に、I/Oチャ
ンネル4に接続することができる。アレイ制御装置3は
分離したプログラム可能、マルチタスク処理装置(例え
ば、サニベール、カリフオルニアのMIPS社製のMI
PS R3000 RISC処理装置)を有することが
好ましい。この処理装置は、記憶装置を制御するため
に、CPUIと独立に動作することができる。
【0041】図2Aは、複数個の記憶装置S0−S11
(12個は単に例示のためのものである)を示してい
る。これらの記憶装置のおのおのは(例えば)8個の論
理ブロックL0−L7を有する。アレイ構造体の中の個
別のブロックを呼び出すことを可能にするために、本発
明は、データが物理的記憶装置の上のどこにあるかを明
細に述べたデータ構造体を設定することによって、アレ
イの上に第1レベルの論理構造を与える。制御装置3の
中でまたはCPU1の中で実行される初期設定工程の一
部分として、前記アレイの物理的記憶装置のおのおの
は、1個または複数個の論理記憶装置として配列され
る。データ構造体は各論理記憶装置を下記の項目で定め
る。
(12個は単に例示のためのものである)を示してい
る。これらの記憶装置のおのおのは(例えば)8個の論
理ブロックL0−L7を有する。アレイ構造体の中の個
別のブロックを呼び出すことを可能にするために、本発
明は、データが物理的記憶装置の上のどこにあるかを明
細に述べたデータ構造体を設定することによって、アレ
イの上に第1レベルの論理構造を与える。制御装置3の
中でまたはCPU1の中で実行される初期設定工程の一
部分として、前記アレイの物理的記憶装置のおのおの
は、1個または複数個の論理記憶装置として配列され
る。データ構造体は各論理記憶装置を下記の項目で定め
る。
【0042】(1) チャンネル番号。 図2Aの実施
例では、チャンネルは、物理的記憶装置を制御装置3に
接続するバス(例えば、SCSIバス)である。チャン
ネルは12個の記憶装置S0−S11に対応し、そして
0−11と番号付けされる。 (2) 記憶装置番号。 チャンネルに沿っての各物理
的記憶装置おのおのは、例示された実施例では、2で始
まり7で終わる位置によって番号付けされる。したがっ
て、各チャンネルは、6個の記憶装置(2個の制御装置
3,3′はSCSIバス上で利用可能な8個のアドレス
の中の2個を使用するから)までを取り扱うことができ
る。けれども、この最大番号は、I/Oチャンネルに対
するSCSIスタンダードを用いることと、2個のアレ
イ制御装置3,3′を用いることとに基づいている。他
のI/Oチャンネル・アーキテクチャを用いる時、他の
構成制限が適用される。 (3) 開始ブロック番号。 これは、各論理記憶装置
に対する記憶装置の上の開始ブロック番号である。通
常、物理的記憶装置は番号0のブロックを開始する。け
れども、各物理的記憶装置は多数個の論理記憶装置を有
することができるから、各論理記憶装置に対し開始ブロ
ック番号を設定することにより、論理記憶装置に対する
アドレス空間が重ならないことが確実にされる。 (4) ブロックの数。 これは、それぞれの論理記憶
装置の中のブロックの総数である。これらのブロック
は、開始ブロック番号に始まってブロックの総数まで順
次に続く番号が付される。
例では、チャンネルは、物理的記憶装置を制御装置3に
接続するバス(例えば、SCSIバス)である。チャン
ネルは12個の記憶装置S0−S11に対応し、そして
0−11と番号付けされる。 (2) 記憶装置番号。 チャンネルに沿っての各物理
的記憶装置おのおのは、例示された実施例では、2で始
まり7で終わる位置によって番号付けされる。したがっ
て、各チャンネルは、6個の記憶装置(2個の制御装置
3,3′はSCSIバス上で利用可能な8個のアドレス
の中の2個を使用するから)までを取り扱うことができ
る。けれども、この最大番号は、I/Oチャンネルに対
するSCSIスタンダードを用いることと、2個のアレ
イ制御装置3,3′を用いることとに基づいている。他
のI/Oチャンネル・アーキテクチャを用いる時、他の
構成制限が適用される。 (3) 開始ブロック番号。 これは、各論理記憶装置
に対する記憶装置の上の開始ブロック番号である。通
常、物理的記憶装置は番号0のブロックを開始する。け
れども、各物理的記憶装置は多数個の論理記憶装置を有
することができるから、各論理記憶装置に対し開始ブロ
ック番号を設定することにより、論理記憶装置に対する
アドレス空間が重ならないことが確実にされる。 (4) ブロックの数。 これは、それぞれの論理記憶
装置の中のブロックの総数である。これらのブロック
は、開始ブロック番号に始まってブロックの総数まで順
次に続く番号が付される。
【0043】さらに、CPU1は、記憶装置を呼び出す
ために、制御装置3,3′のいずれかを選定することが
でき、したがって、制御装置番号はまた処理工程中に指
定される。図2Aの実施例では、主アレイ制御装置3は
番号0であり、そして任意選択の冗長アレイ制御装置
3′は、もしそれが設置されるならば、番号1である。
もし記憶装置がただ1つのアレイ制御装置だけを有する
ように設計されるならば、番号は不必要である。好まし
い実施例では、制御装置番号は、CPU1によって、動
的に選定される。
ために、制御装置3,3′のいずれかを選定することが
でき、したがって、制御装置番号はまた処理工程中に指
定される。図2Aの実施例では、主アレイ制御装置3は
番号0であり、そして任意選択の冗長アレイ制御装置
3′は、もしそれが設置されるならば、番号1である。
もし記憶装置がただ1つのアレイ制御装置だけを有する
ように設計されるならば、番号は不必要である。好まし
い実施例では、制御装置番号は、CPU1によって、動
的に選定される。
【0044】このアドレス指定階層の場合、論理記憶装
置は物理的記憶装置にわたることはできない。けれど
も、1個の物理的記憶装置は少なくとも1個の論理記憶
装置を有し、そして複数個の論理記憶装置を有すること
ができる。このデータ構造を用いて、論理記憶装置の中
での1つのブロックは、開始ブロック番号からのそのオ
フセットだけを知ることによって、その位置を定めるこ
とができる。
置は物理的記憶装置にわたることはできない。けれど
も、1個の物理的記憶装置は少なくとも1個の論理記憶
装置を有し、そして複数個の論理記憶装置を有すること
ができる。このデータ構造を用いて、論理記憶装置の中
での1つのブロックは、開始ブロック番号からのそのオ
フセットだけを知ることによって、その位置を定めるこ
とができる。
【0045】1つの実施例として、図2Bは、24個の
論理記憶装置として定められた図2Aの12個の物理的
記憶装置を示す。物理的記憶装置S0−S11のおのお
のは、2個の論理記憶装置として定めらる。各物理的記
憶装置の中の第1論理記憶装置はブロックL0−L3を
有し、一方、第2論理記憶装置はブロックL4−L7を
有する。
論理記憶装置として定められた図2Aの12個の物理的
記憶装置を示す。物理的記憶装置S0−S11のおのお
のは、2個の論理記憶装置として定めらる。各物理的記
憶装置の中の第1論理記憶装置はブロックL0−L3を
有し、一方、第2論理記憶装置はブロックL4−L7を
有する。
【0046】また別の実施例として、20,000個の
ブロックを有する1つの物理的記憶装置は、おのおのが
10,000個のブロックを有する2個の論理記憶装置
として構成することができ、または、おのおのが5,0
00個のブロックを有する4個の論理記憶装置として構
成することができ、または、10,000個のブロック
を有する1個の論理記憶装置および5,000個のブロ
ックを有する2個の論理記憶装置として構成することが
できる。けれども、20,000個のブロックを有する
2個の物理的記憶装置のおのおのは、40,000個の
ブロックを有する1個の物理的記憶装置として構成する
ことはできない。
ブロックを有する1つの物理的記憶装置は、おのおのが
10,000個のブロックを有する2個の論理記憶装置
として構成することができ、または、おのおのが5,0
00個のブロックを有する4個の論理記憶装置として構
成することができ、または、10,000個のブロック
を有する1個の論理記憶装置および5,000個のブロ
ックを有する2個の論理記憶装置として構成することが
できる。けれども、20,000個のブロックを有する
2個の物理的記憶装置のおのおのは、40,000個の
ブロックを有する1個の物理的記憶装置として構成する
ことはできない。
【0047】第1レベルの論理アドレス指定だけを用い
ることにより、制御装置3は図1に示されたアレイの中
の任意の記憶装置の中の任意のブロックを呼び出すこと
ができる。けれども、アドレス指定の形式だけでは、記
憶装置を本発明の柔軟性のある構成RAIDアーキテク
チャに組織化することはできない。第2レベルの論理ア
ドレス指定が必要である。第2論理レベルにより、論理
記憶装置の中の論理ブロックの隣接するスパンを有する
論理ボリュームとしてアレイをアドレス指定する、CP
U1が得られる。第1論理レベルのアドレス指定は制御
装置3によって完全に処理され、そしてCPU1に対し
て完全に簡明である。
ることにより、制御装置3は図1に示されたアレイの中
の任意の記憶装置の中の任意のブロックを呼び出すこと
ができる。けれども、アドレス指定の形式だけでは、記
憶装置を本発明の柔軟性のある構成RAIDアーキテク
チャに組織化することはできない。第2レベルの論理ア
ドレス指定が必要である。第2論理レベルにより、論理
記憶装置の中の論理ブロックの隣接するスパンを有する
論理ボリュームとしてアレイをアドレス指定する、CP
U1が得られる。第1論理レベルのアドレス指定は制御
装置3によって完全に処理され、そしてCPU1に対し
て完全に簡明である。
【0048】第2レベルの論理アドレス指定では、論理
ボリュームは1個または複数個の論理記憶装置として定
められる。論理ボリュームの中の論理記憶装置の数は、
この論理ボリュームによって用いられるべき縞の幅を定
める。データ・ブロックは、論理ボリュームの中で第1
論理記憶装置から出発して、論理ボリュームを横断して
常に縞に作られる。1つの論理ボリュームの中のすべて
の論理記憶装置は、同じブロック寸法と同じブロック容
量とを有するように定められる。
ボリュームは1個または複数個の論理記憶装置として定
められる。論理ボリュームの中の論理記憶装置の数は、
この論理ボリュームによって用いられるべき縞の幅を定
める。データ・ブロックは、論理ボリュームの中で第1
論理記憶装置から出発して、論理ボリュームを横断して
常に縞に作られる。1つの論理ボリュームの中のすべて
の論理記憶装置は、同じブロック寸法と同じブロック容
量とを有するように定められる。
【0049】図2Cにおいて、図2Aの12個の物理的
記憶装置は、おのおのが6個の論理記憶装置の2個の論
理ボリュームにグループ分けされた12個の論理記憶装
置として定められる。(前記範囲内に入る任意の他の構
成をまた選定することができる。)これらの実施例にお
ける両方の論理ボリュームの縞の幅は6である。
記憶装置は、おのおのが6個の論理記憶装置の2個の論
理ボリュームにグループ分けされた12個の論理記憶装
置として定められる。(前記範囲内に入る任意の他の構
成をまた選定することができる。)これらの実施例にお
ける両方の論理ボリュームの縞の幅は6である。
【0050】1つの論理ボリュームに対する縞の順序は
付随する「深さ」を有する。この深さは、この論理ボリ
ュームの中の次の論理記憶装置にデータ・ブロックを書
き込む前に、いかに多くのデータ・ブロックが1つの論
理記憶装置に連続して書き込まれるかを定める。例え
ば、図2Cにおいて、論理ボリューム#0の中に6個の
論理記憶装置S0−S5があり、そしてこの論理ボリュ
ームは1ブロックの深さを有する。CPU1からのアド
レス指定要求に関して、論理ボリューム#0の論理的な
ブロック番号付けは、論理記憶装置S0のブロックL0
である第1論理ブロック0で開始する。第2論理ブロッ
ク1は論理記憶装置S1のブロックL0であり、などで
ある。論理ボリューム#1は同じ論理構造を有して定め
られるように示されているが、下記で詳細に示されるよ
うに、これは必ずしも必要ではない。
付随する「深さ」を有する。この深さは、この論理ボリ
ュームの中の次の論理記憶装置にデータ・ブロックを書
き込む前に、いかに多くのデータ・ブロックが1つの論
理記憶装置に連続して書き込まれるかを定める。例え
ば、図2Cにおいて、論理ボリューム#0の中に6個の
論理記憶装置S0−S5があり、そしてこの論理ボリュ
ームは1ブロックの深さを有する。CPU1からのアド
レス指定要求に関して、論理ボリューム#0の論理的な
ブロック番号付けは、論理記憶装置S0のブロックL0
である第1論理ブロック0で開始する。第2論理ブロッ
ク1は論理記憶装置S1のブロックL0であり、などで
ある。論理ボリューム#1は同じ論理構造を有して定め
られるように示されているが、下記で詳細に示されるよ
うに、これは必ずしも必要ではない。
【0051】図2Dは、論理ボリューム#0であるが4
ブロックの深さを有するまた別の構成の実施例である。
最初の4個の番号付き論理ブロックは論理記憶装置S0
の上の引き続くブロックであり、次の4個の番号付き論
理ブロックは論理記憶装置S1の上の引き続くブロック
であり、などである。オン・ライン取引処理(OLT
P)RAID4モードまたはRAID5モードで動作し
ている時、CPUオペレーティング・システムのページ
寸法(もし適切ならば)に整合する深さを使用すること
に関し、重要な利点がえられる。例えば、もしCPU1
からの要求が4ブロック境界の上に常にあるならば、そ
して4個のブロックの倍数で作成されるならば、(各論
理記憶装置に対し利用可能であるものを有するのに十分
な要求があると仮定して)分離した要求を処理する論理
ボリューム#0の6個の論理記憶装置のすべてを有する
ことが可能である。
ブロックの深さを有するまた別の構成の実施例である。
最初の4個の番号付き論理ブロックは論理記憶装置S0
の上の引き続くブロックであり、次の4個の番号付き論
理ブロックは論理記憶装置S1の上の引き続くブロック
であり、などである。オン・ライン取引処理(OLT
P)RAID4モードまたはRAID5モードで動作し
ている時、CPUオペレーティング・システムのページ
寸法(もし適切ならば)に整合する深さを使用すること
に関し、重要な利点がえられる。例えば、もしCPU1
からの要求が4ブロック境界の上に常にあるならば、そ
して4個のブロックの倍数で作成されるならば、(各論
理記憶装置に対し利用可能であるものを有するのに十分
な要求があると仮定して)分離した要求を処理する論理
ボリューム#0の6個の論理記憶装置のすべてを有する
ことが可能である。
【0052】これとは異なって、図2Cに示された論理
ボリューム#0の構成において、4ブロック要求が行わ
れた時、4個の論理記憶装置が関与するであろう。一
方、図2Cの構成はRAID3形類似が可能であり、4
個のブロックに対するランダム・アクセスのためのヘッ
ド・シーク時間および呼び出し時間は、図2Dの構成に
おける4個のブロックのデータの転送に必要な時間より
も遥かに重要であるであろう。(4個のブロックを転送
するための時間は1個のブロックを転送するための時間
よりもわずかに大きいだけである。)
ボリューム#0の構成において、4ブロック要求が行わ
れた時、4個の論理記憶装置が関与するであろう。一
方、図2Cの構成はRAID3形類似が可能であり、4
個のブロックに対するランダム・アクセスのためのヘッ
ド・シーク時間および呼び出し時間は、図2Dの構成に
おける4個のブロックのデータの転送に必要な時間より
も遥かに重要であるであろう。(4個のブロックを転送
するための時間は1個のブロックを転送するための時間
よりもわずかに大きいだけである。)
【0053】第2レベルの論理アドレス指定は、CPU
1が記憶アレイと通信するのに用いるフレームワークを
構成する。CPU1からの入力/出力の要求は、論理ボ
リュームと、最初の論理ブロック番号と、ブロックの数
とを指定することによって行われる。この情報を用い
て、制御装置3は指示された論理体積に対しデータ構造
を呼び出し、そしてどの論理記憶装置が要求されたデー
タ・ブロックを有しているかが決定される。このこと
は、最初の諭理ブロック番号と、この論理ボリュームを
有する論理記憶装置(ブロックの数パラメータから)の
寸法とを比較することによって、達成される。
1が記憶アレイと通信するのに用いるフレームワークを
構成する。CPU1からの入力/出力の要求は、論理ボ
リュームと、最初の論理ブロック番号と、ブロックの数
とを指定することによって行われる。この情報を用い
て、制御装置3は指示された論理体積に対しデータ構造
を呼び出し、そしてどの論理記憶装置が要求されたデー
タ・ブロックを有しているかが決定される。このこと
は、最初の諭理ブロック番号と、この論理ボリュームを
有する論理記憶装置(ブロックの数パラメータから)の
寸法とを比較することによって、達成される。
【0054】したがって、もし寸法がおのおの20,0
00ブロックの6個の論理記憶装置を1つの論理ボリュ
ームが有するならば、そして要求された最初の論理ブロ
ック番号がブロック63,000に対するものであるな
らば、そのブロックは4番目の論理記憶装置の上のオフ
セット番号3,000ブロックの位置にあるであろう。
正しい論理記憶装置とオフセット番号とが決定された
後、この要求がそれぞれのチャンネル番号、記憶装置番
号、および開始ブロック番号に位置づけられる。さら
に、この要求は開始ブロック番号からのオフセットと、
転送されるべきブロックの数とを有する。この実施例で
は、要求された最初の論理ブロック番号は、4番目の論
理記憶装置の位置づけ配置された開始ブロック番号から
3,000ブロックのオフセット番号の位置にある。こ
のような位置づけ配置は周知の方式で実行される。
00ブロックの6個の論理記憶装置を1つの論理ボリュ
ームが有するならば、そして要求された最初の論理ブロ
ック番号がブロック63,000に対するものであるな
らば、そのブロックは4番目の論理記憶装置の上のオフ
セット番号3,000ブロックの位置にあるであろう。
正しい論理記憶装置とオフセット番号とが決定された
後、この要求がそれぞれのチャンネル番号、記憶装置番
号、および開始ブロック番号に位置づけられる。さら
に、この要求は開始ブロック番号からのオフセットと、
転送されるべきブロックの数とを有する。この実施例で
は、要求された最初の論理ブロック番号は、4番目の論
理記憶装置の位置づけ配置された開始ブロック番号から
3,000ブロックのオフセット番号の位置にある。こ
のような位置づけ配置は周知の方式で実行される。
【0055】本発明では、適用をなんら変更することな
く、論理ボリュームの寸法を変更することができる。け
れども、データは1つの論理ポリュームを有する論理記
憶装置に亘って記憶されるから、(例えば、物理的記憶
装置を付加するまたは削除することによって)それを変
更した後、論理ボリュームを「リフォーマット」するこ
とが必要である。物理的記憶装置を付加することは、コ
ストが増大することを除けば、もとの物理的記憶装置が
「より大きな」記憶装置の一部分としての使用が継続す
るのであるから、より小さな物理的記憶装置とより大き
な記憶装置とを再び組み立てることと同様である。
く、論理ボリュームの寸法を変更することができる。け
れども、データは1つの論理ポリュームを有する論理記
憶装置に亘って記憶されるから、(例えば、物理的記憶
装置を付加するまたは削除することによって)それを変
更した後、論理ボリュームを「リフォーマット」するこ
とが必要である。物理的記憶装置を付加することは、コ
ストが増大することを除けば、もとの物理的記憶装置が
「より大きな」記憶装置の一部分としての使用が継続す
るのであるから、より小さな物理的記憶装置とより大き
な記憶装置とを再び組み立てることと同様である。
【0056】本発明により、異なる論理ボリュームが異
なる深さを有することが可能である。例えば、図2Dに
おいて、図2Aの12個の物理的記憶装置は、おのおの
が6個の論理記憶装置を有する2個の論理ボリュームに
グループ分けされた、12個の論理記憶装置として定め
られる。論理記憶装置S0−S5は論理ボリューム#0
を有し、そしてそのボリュームは4ブロックの深さを有
し、および論理記憶装置S6−S11は論理ボリューム
#1を有し、そしてそのボリュームは1ブロックの深さ
を有する。
なる深さを有することが可能である。例えば、図2Dに
おいて、図2Aの12個の物理的記憶装置は、おのおの
が6個の論理記憶装置を有する2個の論理ボリュームに
グループ分けされた、12個の論理記憶装置として定め
られる。論理記憶装置S0−S5は論理ボリューム#0
を有し、そしてそのボリュームは4ブロックの深さを有
し、および論理記憶装置S6−S11は論理ボリューム
#1を有し、そしてそのボリュームは1ブロックの深さ
を有する。
【0057】アレイの特性は、論理ボリュームが構成さ
れる方法によって決定される。高入力/出力帯域幅に対
し、並列転送を最適化するために、多数個の制御装置に
渡って論理記憶装置を分散することがよい。OLTPモ
ード(すなわち、RAID4またはRAID5)に対
し、1つの論理ボリュームの中の論理記憶装置の数が大
きくなればなる程、取り扱うことができる同時処理の数
が(CPU1がその処理容量に到達する点まで)大きく
なる。OLTPモードの特性の観点から、異なる物理的
記憶装置に対する多数個のチャンネルに渡っての縞作成
(おのおのは独立なI/Oバス4で呼び出し可能であ
る)は、付加された物理的記憶装置に1つのチャンネル
を縞分割する(ここで、異なる物理的記憶装置に対する
I/O要求は同じI/Oバス4を共有しなければならな
い)よりは全体的によい。
れる方法によって決定される。高入力/出力帯域幅に対
し、並列転送を最適化するために、多数個の制御装置に
渡って論理記憶装置を分散することがよい。OLTPモ
ード(すなわち、RAID4またはRAID5)に対
し、1つの論理ボリュームの中の論理記憶装置の数が大
きくなればなる程、取り扱うことができる同時処理の数
が(CPU1がその処理容量に到達する点まで)大きく
なる。OLTPモードの特性の観点から、異なる物理的
記憶装置に対する多数個のチャンネルに渡っての縞作成
(おのおのは独立なI/Oバス4で呼び出し可能であ
る)は、付加された物理的記憶装置に1つのチャンネル
を縞分割する(ここで、異なる物理的記憶装置に対する
I/O要求は同じI/Oバス4を共有しなければならな
い)よりは全体的によい。
【0058】一旦、論理ボリュームが定められると、1
個または多数個の論理ボリュームを有する冗長群が定め
られる。(または、冗長群は1個または多数個の論理記
憶装置として定められ、そして論理ボリュームは冗長群
の1つのメンバとして定められる。いずれの特性分類で
も同じ基本データ構造がえられる。)1つの論理ボリュ
ームは(もしそれがいづれかの冗長群の中に含まれるな
らば)1つの冗長群の中に完全に含まれなければならな
い。本発明の好ましい実施例では、2レベルまでの冗長
性が支援される。冗長性レベルのおのおのにより、1つ
の論理記憶装置が、ユーザ・データをなんら損失するこ
となく、1つの冗長群の中に入ることができる。したが
って、1つのレベルの冗長性(P冗長性と呼ばれる)に
より、データを損失することなく、冗長群当り1つの論
理記憶装置を入れることができ、一方、2レベルの冗長
性(第2レベルはQ冗長性と呼ばれる)により、データ
を損失することなく、冗長群当り2つの論理記憶装置を
入れることができる。
個または多数個の論理ボリュームを有する冗長群が定め
られる。(または、冗長群は1個または多数個の論理記
憶装置として定められ、そして論理ボリュームは冗長群
の1つのメンバとして定められる。いずれの特性分類で
も同じ基本データ構造がえられる。)1つの論理ボリュ
ームは(もしそれがいづれかの冗長群の中に含まれるな
らば)1つの冗長群の中に完全に含まれなければならな
い。本発明の好ましい実施例では、2レベルまでの冗長
性が支援される。冗長性レベルのおのおのにより、1つ
の論理記憶装置が、ユーザ・データをなんら損失するこ
となく、1つの冗長群の中に入ることができる。したが
って、1つのレベルの冗長性(P冗長性と呼ばれる)に
より、データを損失することなく、冗長群当り1つの論
理記憶装置を入れることができ、一方、2レベルの冗長
性(第2レベルはQ冗長性と呼ばれる)により、データ
を損失することなく、冗長群当り2つの論理記憶装置を
入れることができる。
【0059】冗長群の中のブロックのおのおのの行は、
冗長行と呼ばれる。冗長ブロックは各冗長行の中のブロ
ックに対して生じ、そしてそれぞれの冗長行の中に記憶
される。したがって、各行は、冗長ブロックのために、
データ記憶容量の中から1個または2個のブロック(P
冗長性のために1個、およびQ冗長性のために1個)を
失うであろう。けれども、CPU1は論理ブロックの見
かけ上隣接するスパンを有する論理ボリュームだけを
「見る」から、この損失は(冗長群の中の論理記憶装置
の全容量における損失を除いて、および帯域幅における
損失を除いて)CPU1に対して簡明である。
冗長行と呼ばれる。冗長ブロックは各冗長行の中のブロ
ックに対して生じ、そしてそれぞれの冗長行の中に記憶
される。したがって、各行は、冗長ブロックのために、
データ記憶容量の中から1個または2個のブロック(P
冗長性のために1個、およびQ冗長性のために1個)を
失うであろう。けれども、CPU1は論理ブロックの見
かけ上隣接するスパンを有する論理ボリュームだけを
「見る」から、この損失は(冗長群の中の論理記憶装置
の全容量における損失を除いて、および帯域幅における
損失を除いて)CPU1に対して簡明である。
【0060】好ましい実施例では、P冗長ブロックは、
よく知られた方式で、冗長行の中のすべてのデータ・ブ
ロックに排他的ORを行うことによって計算される。好
ましい実施例では、Q冗長ブロックは、よく知られた方
式で、冗長行の中のすべてのデータ・ブロックにリード
・ソロモン符号化法を適用することによって計算され
る。けれども、好ましいXOR法およびリード・ソロモ
ン法の代わりに、他の冗長法を適用することができる。
P冗長性およびQ冗長性、および故障の後のユーザ・デ
ータの再生法は、1988年11月14日に出願され、
本発明と共に譲渡された、名称「アレイ状ディスク駆動
装置および駆動方法」の米国特許出願番号第270,7
13号に、詳細に開示されている。
よく知られた方式で、冗長行の中のすべてのデータ・ブ
ロックに排他的ORを行うことによって計算される。好
ましい実施例では、Q冗長ブロックは、よく知られた方
式で、冗長行の中のすべてのデータ・ブロックにリード
・ソロモン符号化法を適用することによって計算され
る。けれども、好ましいXOR法およびリード・ソロモ
ン法の代わりに、他の冗長法を適用することができる。
P冗長性およびQ冗長性、および故障の後のユーザ・デ
ータの再生法は、1988年11月14日に出願され、
本発明と共に譲渡された、名称「アレイ状ディスク駆動
装置および駆動方法」の米国特許出願番号第270,7
13号に、詳細に開示されている。
【0061】冗長群は、ブロック毎を単位として、計算
される。したがって、異なる深さを有するが同じ冗長群
の中に含まれる、多数個の論理ボリュームを有すること
が可能である。したがって、例えば、12物理的記憶装
置アレイの6個の論理記憶装置は、4ブロックの深さを
有し、RAID3状高帯域幅アーキテクチャを有する
(しかし、冗長群に渡って共有されたパリティを有す
る)論理ボリュームとして定めることができ、一方、残
りの6個の論理記憶装置は、1ブロックの深さを有し、
RAID5状OLTPアーキテクチャを有する論理ボリ
ュームとして設定することができる。(例えば、図2D
を見よ。)論理ボリューム#0に対する書き込み動作
は、パリティ・ブロックが冗長群の中に(すなわち、論
理ボリューム#0の中に、または論理ボリューム#1の
中に)ある時にはいつでも、付随するバリティ・ブロッ
クを更新することを要求する。同様に、論理ボリューム
#1に対する書き込み動作は、パリティ・ブロックが冗
長群の中にある時にはいつでも、対応するパリティ・ブ
ロックに対し更新を要求する。これら2個の論理ボリュ
ームの間のボリューム深さの差は、なんら問題点を生じ
ない。それは、パリティ・ブロックがブロック毎を単位
として更新されるからであり、およびすべてのボリュー
ム深さがブロック寸法の倍数であるからである。
される。したがって、異なる深さを有するが同じ冗長群
の中に含まれる、多数個の論理ボリュームを有すること
が可能である。したがって、例えば、12物理的記憶装
置アレイの6個の論理記憶装置は、4ブロックの深さを
有し、RAID3状高帯域幅アーキテクチャを有する
(しかし、冗長群に渡って共有されたパリティを有す
る)論理ボリュームとして定めることができ、一方、残
りの6個の論理記憶装置は、1ブロックの深さを有し、
RAID5状OLTPアーキテクチャを有する論理ボリ
ュームとして設定することができる。(例えば、図2D
を見よ。)論理ボリューム#0に対する書き込み動作
は、パリティ・ブロックが冗長群の中に(すなわち、論
理ボリューム#0の中に、または論理ボリューム#1の
中に)ある時にはいつでも、付随するバリティ・ブロッ
クを更新することを要求する。同様に、論理ボリューム
#1に対する書き込み動作は、パリティ・ブロックが冗
長群の中にある時にはいつでも、対応するパリティ・ブ
ロックに対し更新を要求する。これら2個の論理ボリュ
ームの間のボリューム深さの差は、なんら問題点を生じ
ない。それは、パリティ・ブロックがブロック毎を単位
として更新されるからであり、およびすべてのボリュー
ム深さがブロック寸法の倍数であるからである。
【0062】冗長ブロックは冗長群の中に均等に分布し
ている。したがって、それらの位置は、CPU1によっ
て要求されたデータ・ブロックの位置に相対的に、計算
することができる。冗長ブロックを分散することはま
た、OLTPモードにある時、冗長ブロックを含む論理
記憶装置の上の「順序づけ」からアレイを防止する。
(すなわち、分散した冗長性によりRAID5アーキテ
クチャが得られ、一方、非分散冗長性によりRAID3
アーキテクチャまたはRAID4アーキテクチャが得ら
れる。)
ている。したがって、それらの位置は、CPU1によっ
て要求されたデータ・ブロックの位置に相対的に、計算
することができる。冗長ブロックを分散することはま
た、OLTPモードにある時、冗長ブロックを含む論理
記憶装置の上の「順序づけ」からアレイを防止する。
(すなわち、分散した冗長性によりRAID5アーキテ
クチャが得られ、一方、非分散冗長性によりRAID3
アーキテクチャまたはRAID4アーキテクチャが得ら
れる。)
【0063】図2Eは、RAID装置の図面であり、1
ブロックの深さと1レベルの冗長性を有する、典型的な
論理構成を示す。冗長ブロックは「P」によって示され
ている。図2Fは、モデルRAID装置の図面であり、
1ブロックの深さと2レベルの冗長性を有する、典型的
な論理構成を示す。冗長ブロックは「P」および「Q」
によって示されている。1個のアレイの中に構成された
冗長群のおのおのは異なる冗長レベルを有することがで
き、したがって、CPU1は、信頼性の要求に適合する
ために、各冗長群に対し冗長のレベルを変更することが
できる。冗長群を変更する(論理ボリュームを付加する
または削除する、または冗長レベルを変更する)ことは
「リフォーマット」操作を必要とする。(これは動的に
行うことができる、すなわち、正規の呼び出し動作を停
止することなく行うことができる。)
ブロックの深さと1レベルの冗長性を有する、典型的な
論理構成を示す。冗長ブロックは「P」によって示され
ている。図2Fは、モデルRAID装置の図面であり、
1ブロックの深さと2レベルの冗長性を有する、典型的
な論理構成を示す。冗長ブロックは「P」および「Q」
によって示されている。1個のアレイの中に構成された
冗長群のおのおのは異なる冗長レベルを有することがで
き、したがって、CPU1は、信頼性の要求に適合する
ために、各冗長群に対し冗長のレベルを変更することが
できる。冗長群を変更する(論理ボリュームを付加する
または削除する、または冗長レベルを変更する)ことは
「リフォーマット」操作を必要とする。(これは動的に
行うことができる、すなわち、正規の呼び出し動作を停
止することなく行うことができる。)
【0064】図2Eおよび図2Fに示された冗長ブロッ
クの分布の特定のパターンは単に例示されたものであっ
て、本発明の範囲内において、分布の他のパターンも可
能である。
クの分布の特定のパターンは単に例示されたものであっ
て、本発明の範囲内において、分布の他のパターンも可
能である。
【0065】論理ボリュームの深さが1より大きい時で
も、P冗長ブロックおよびQ冗長ブロックの生成は、同
じ行の中のブロックに基づいている。冗長のレベル
(0,1,または2)を選定する時、必要な信頼性のレ
ベルを加重することが必要である。また、どの位多くの
記憶空間を提供すべきかを決定することが必要である。
冗長群の中にある論理記憶装置の数が大きくなればなる
程、ますます冗長ブロックに失われる全容量の大きさは
小さくなる。しかし、冗長群の寸法が大きくなればなる
程、ますます記憶装置の故障の可能性は高くなり、した
がって、冗長群の信頼性はますます低くなる。記憶装置
故障によるデータを訂正する時、全冗長行を再び読み出
すことが必要であり、したがって、冗長群が大きくなれ
ばなる程、ますます記憶装置故障を有する冗長群に対す
る1/O要求への応答は遅くなる。冗長群が大きくなれ
ばなる程、ますます良く全体の特性がOLTPモードに
あることができる。それは単に、関与する変換器へツド
がますます多くなるからであり、およびデータ・ブロッ
クに対する冗長ブロックの比がますます低くなるからで
ある。
も、P冗長ブロックおよびQ冗長ブロックの生成は、同
じ行の中のブロックに基づいている。冗長のレベル
(0,1,または2)を選定する時、必要な信頼性のレ
ベルを加重することが必要である。また、どの位多くの
記憶空間を提供すべきかを決定することが必要である。
冗長群の中にある論理記憶装置の数が大きくなればなる
程、ますます冗長ブロックに失われる全容量の大きさは
小さくなる。しかし、冗長群の寸法が大きくなればなる
程、ますます記憶装置の故障の可能性は高くなり、した
がって、冗長群の信頼性はますます低くなる。記憶装置
故障によるデータを訂正する時、全冗長行を再び読み出
すことが必要であり、したがって、冗長群が大きくなれ
ばなる程、ますます記憶装置故障を有する冗長群に対す
る1/O要求への応答は遅くなる。冗長群が大きくなれ
ばなる程、ますます良く全体の特性がOLTPモードに
あることができる。それは単に、関与する変換器へツド
がますます多くなるからであり、およびデータ・ブロッ
クに対する冗長ブロックの比がますます低くなるからで
ある。
【0066】図3Aは、図2Cに示されたアレイのため
のデータ構造の図であって、2個の論理ボリューム(#
0および#1)を有するとして定められた1個の冗長群
(#0)を有する。図3Bは同じアレイに対するデータ
構造の図であるが、それぞれ、論理ボリューム#0およ
び論理ボリューム#1を有するとして定められた2個の
冗長群(#0および#1)を有する。このデータ構造の
場合、CPU1からの1/O要求は、論理ボリューム
と、初期論理ブロック番号と、およびブロックの数とを
使って述べられる。この情報を用いて、制御装置3は指
示された論理ボリュームに対するデータ構造を呼び出
し、そしてどの論理記憶装置が要求されたデータ・ブロ
ックを有しているかを決定する。前記のように、このこ
とは、初期論理ブロック番号と、論理ボリュームを有す
る論理記憶装置の(ブロックの数パラメータからの)寸
法とを比較することによって達成される。正しい論理記
憶装置と正しいオフセット数とを決定した後、この要求
がそれぞれのチャンネル番号と、記憶装置番号と、開始
ブロック番号とに配置される。この要求はさらに、開始
ブロック番号からのオフセットと、転送されるべきブロ
ックの数とを有する。これらのパラメータにより、要求
されたデータ・ブロックを呼び出すために、物理的記憶
装置のアドレス指定が可能になる。
のデータ構造の図であって、2個の論理ボリューム(#
0および#1)を有するとして定められた1個の冗長群
(#0)を有する。図3Bは同じアレイに対するデータ
構造の図であるが、それぞれ、論理ボリューム#0およ
び論理ボリューム#1を有するとして定められた2個の
冗長群(#0および#1)を有する。このデータ構造の
場合、CPU1からの1/O要求は、論理ボリューム
と、初期論理ブロック番号と、およびブロックの数とを
使って述べられる。この情報を用いて、制御装置3は指
示された論理ボリュームに対するデータ構造を呼び出
し、そしてどの論理記憶装置が要求されたデータ・ブロ
ックを有しているかを決定する。前記のように、このこ
とは、初期論理ブロック番号と、論理ボリュームを有す
る論理記憶装置の(ブロックの数パラメータからの)寸
法とを比較することによって達成される。正しい論理記
憶装置と正しいオフセット数とを決定した後、この要求
がそれぞれのチャンネル番号と、記憶装置番号と、開始
ブロック番号とに配置される。この要求はさらに、開始
ブロック番号からのオフセットと、転送されるべきブロ
ックの数とを有する。これらのパラメータにより、要求
されたデータ・ブロックを呼び出すために、物理的記憶
装置のアドレス指定が可能になる。
【0067】
【発明の効果】要約をすれば、1組のブロック呼び出し
可能物理的記憶装置を有する冗長アレイ記憶装置は、初
期設定工程の期間内に構成される。物理的記憶装置のお
のおのは、チャンネル番号と、記憶装置番号と、開始ブ
ロック番号と、オフセット数と、おとび転送されるべき
ブロックの数とを使って呼び出し可能な、1個または複
数個の論理記憶装置を有するとして独立に定められる。
それから、論理ボリュームが、1個または複数個の論理
記憶装置として独立に定められる。論理ボリュームのお
のおのは、独立に定めることが可能な深さ特性を有す
る。それから、冗長群が、1個または複数個の論理ボリ
ュームとして独立に定められる。冗長群のおのおのは、
独立に定めることが可能な冗長レベルを有する。冗長レ
ベルは、ゼロ、1(例えば、XORパリティ、またはリ
ード・ソロモン・コードのようなエラー訂正コード)、
または2(例えば、XORパリティ・プラス、例えば、
リード・ソロモン・エラー訂正コード)であることがで
きる。(または、冗長群は1個または複数個の論理記憶
装置として定められ、および論理ボリュームは多数個の
冗長群として定められる。)
可能物理的記憶装置を有する冗長アレイ記憶装置は、初
期設定工程の期間内に構成される。物理的記憶装置のお
のおのは、チャンネル番号と、記憶装置番号と、開始ブ
ロック番号と、オフセット数と、おとび転送されるべき
ブロックの数とを使って呼び出し可能な、1個または複
数個の論理記憶装置を有するとして独立に定められる。
それから、論理ボリュームが、1個または複数個の論理
記憶装置として独立に定められる。論理ボリュームのお
のおのは、独立に定めることが可能な深さ特性を有す
る。それから、冗長群が、1個または複数個の論理ボリ
ュームとして独立に定められる。冗長群のおのおのは、
独立に定めることが可能な冗長レベルを有する。冗長レ
ベルは、ゼロ、1(例えば、XORパリティ、またはリ
ード・ソロモン・コードのようなエラー訂正コード)、
または2(例えば、XORパリティ・プラス、例えば、
リード・ソロモン・エラー訂正コード)であることがで
きる。(または、冗長群は1個または複数個の論理記憶
装置として定められ、および論理ボリュームは多数個の
冗長群として定められる。)
【0068】論理ボリュームは、ボリューム番号と、初
期ブロック番号と、転送されるべきブロックの数とによ
って、ホストCPU1により呼び出される。CPU1は
また、読み出し動作または書き込み動作を指定する。C
PU1は選定された制御装置3,3′に呼び出し要求を
送り、そしてそれから、指定されたボリューム番号と、
初期ブロック番号と、転送されるべきブロックの数と
を、対応するチャンネル番号と、記憶装置番号と、開始
ブロック番号と、オフセット数と、転送されるべきブロ
ックの数とに翻訳する。
期ブロック番号と、転送されるべきブロックの数とによ
って、ホストCPU1により呼び出される。CPU1は
また、読み出し動作または書き込み動作を指定する。C
PU1は選定された制御装置3,3′に呼び出し要求を
送り、そしてそれから、指定されたボリューム番号と、
初期ブロック番号と、転送されるべきブロックの数と
を、対応するチャンネル番号と、記憶装置番号と、開始
ブロック番号と、オフセット数と、転送されるべきブロ
ックの数とに翻訳する。
【0069】本発明の記憶装置呼び出しの論理構成と方
法を用いて、同じ物理的記憶装置により、異なるRAI
Dアーキテクチャを同時に支援することができる。した
がって、例えば、図2Dに示された12個の論理ディス
クは、(1)5個の論理ディスクと4ブロックの深さと
を有し、およびRAID3モードで動作する論理ボリュ
ーム#0と、(2)6個の論理ディスクと1ブロックの
深さとを有し、およびRAID5モードで動作する論理
ボリューム#1(オン・ライン・トランザクション処
理)に構成することができる。
法を用いて、同じ物理的記憶装置により、異なるRAI
Dアーキテクチャを同時に支援することができる。した
がって、例えば、図2Dに示された12個の論理ディス
クは、(1)5個の論理ディスクと4ブロックの深さと
を有し、およびRAID3モードで動作する論理ボリュ
ーム#0と、(2)6個の論理ディスクと1ブロックの
深さとを有し、およびRAID5モードで動作する論理
ボリューム#1(オン・ライン・トランザクション処
理)に構成することができる。
【0070】したがって、本発明は極めて大きな柔軟性
を有し、および冗長アレイ記憶装置を、RAID1装
置、RAID3装置、RAID4装置、またはRAID
5装置として、またはこれらの構成の任意の組み合わせ
として、構成することができる。したがって、本発明に
おいて、論理ボリュームは、物理的記憶装置に亘ること
(「垂直区分」)と、このような物理的記憶装置の一部
分だけを有すること(「水平区分」)と、および定める
ことが可能な深さおよび冗長性特性とを有することがで
きる。
を有し、および冗長アレイ記憶装置を、RAID1装
置、RAID3装置、RAID4装置、またはRAID
5装置として、またはこれらの構成の任意の組み合わせ
として、構成することができる。したがって、本発明に
おいて、論理ボリュームは、物理的記憶装置に亘ること
(「垂直区分」)と、このような物理的記憶装置の一部
分だけを有すること(「水平区分」)と、および定める
ことが可能な深さおよび冗長性特性とを有することがで
きる。
【0071】本発明の多くの実施例を説明したが、本発
明の範囲内において種々の変更のなしうることが分かる
であろう。したがって、本発明は例示された特定の実施
例に限定されるのではなく、特許請求の範囲によっての
み定められると理解すべきである。
明の範囲内において種々の変更のなしうることが分かる
であろう。したがって、本発明は例示された特定の実施
例に限定されるのではなく、特許請求の範囲によっての
み定められると理解すべきである。
【図1】本発明による一般化されたRAID装置のブロ
ック線図。
ック線図。
【図2】Aは典型的な物理的構成を示したモデルRAI
D装置の図。Bは図2Aの物理的アレイの論理構成を示
し、物理的記憶装置のおのおのが2個の諭理記憶装置と
して構成されている、モデルRAID装置の図。Cは論
理ボリュームが1ブロックの深さを有する、モデルRA
ID装置の図。Dは第1論理ボリュームが4ブロックの
深さを有しおよび第2論理ボリュームが1ブロックの深
さを有する、モデルRAID装置の図。Eは論理ボリュ
ームが1ブロックの深さを有しおよび1レベルの冗長性
を有する、モデルRAID装置の図。Fは論理ボリュー
ムが1ブロックの深さを有しおよび2レベルの冗長性を
有する、モデルRAID装置の図。
D装置の図。Bは図2Aの物理的アレイの論理構成を示
し、物理的記憶装置のおのおのが2個の諭理記憶装置と
して構成されている、モデルRAID装置の図。Cは論
理ボリュームが1ブロックの深さを有する、モデルRA
ID装置の図。Dは第1論理ボリュームが4ブロックの
深さを有しおよび第2論理ボリュームが1ブロックの深
さを有する、モデルRAID装置の図。Eは論理ボリュ
ームが1ブロックの深さを有しおよび1レベルの冗長性
を有する、モデルRAID装置の図。Fは論理ボリュー
ムが1ブロックの深さを有しおよび2レベルの冗長性を
有する、モデルRAID装置の図。
【図3】Aは本発明により冗長群を定める、第1データ
構造の図。Bは本発明により1対の冗長群を定める、第
2データ構造の図。
構造の図。Bは本発明により1対の冗長群を定める、第
2データ構造の図。
1 中央処理装置 3 制御装置 S1−S6 記憶装置
Claims (16)
- 【請求項1】 チャンネル番号と、記憶装置番号と、開
始ブロック番号と、オフセット数とによってアドレス指
定可能なデータの記憶ブロックのための複数個の記憶装
置を有する、構成可能な冗長アレイ記憶装置。 - 【請求項2】 データの記憶ブロックのための複数個の
記憶装置と、前記記憶装置に接続された少なくとも1つ
の制御装置と、前記制御装置に接続された少なくとも1
つの中央処理装置とを有し、かつ、前記中央処理装置が
前記複数個の記憶装置の中に記憶されたブロックのため
の前記制御装置に要求を送信し、およびこのような前記
要求がボリューム番号と、初期ブロック番号と、転送さ
れるべきブロック数とによってこのような前記ブロック
のアドレス指定を行ない、および前記制御装置がこのよ
うな前記要求を翻訳しかつチャンネル番号と、記憶装置
番号と、開始ブロック番号と、オフセット数とによって
前記記憶装置の中のこのような前記ブロックのアドレス
指定を行う、構成可能な冗長アレイ記憶装置。 - 【請求項3】 データの記憶ブロックのための複数個の
記憶装置を有し、少なくとも1つの記憶装置がチャンネ
ル番号と、記憶装置番号と、開始ブロック番号と、オフ
セット数とによってアドレス指定可能な少なくとも1つ
の論理記憶装置として構成される、構成可能な冗長アレ
イ記憶装置。 - 【請求項4】 請求項3において、少なくとも1つの論
理記憶装置が深さ特性を有する論理ボリュームとして構
成される、構成可能な冗長アレイ記憶装置。 - 【請求項5】 請求項4において、少なくとも1つの論
理ボリュームが冗長群として構成される、構成可能な冗
長アレイ記憶装置。 - 【請求項6】 請求項5において、冗長群のおのおのが
少なくとも1つの冗長レベルを有する、構成可能な冗長
アレイ記憶装置。 - 【請求項7】 請求項6において、冗長群のおのおのが
2個の冗長レベルを有する、構成可能な冗長アレイ記憶
装置。 - 【請求項8】 データの記憶ブロックのための少なくと
も1つの冗長群を有し、かつ、冗長群のおのおのが少な
くとも1つの論理ボリュームを有し、かつ、論理ボリュ
ームのおのおのがチャンネル番号と、記憶装置番号と、
開始ブロック番号と、オフセット数とによってアドレス
指定可能である少なくとも1つの論理記憶装置を有し、
かつ、論理記憶装置のおのおのが物理的記憶装置の一部
分を有する、データのこのような前記ブロックを記憶す
るための構成可能な冗長アレイ記憶装置。 - 【請求項9】 チャンネル番号と、記憶装置番号と、開
始ブロック番号と、オフセット数とによってブロックの
アドレス指定を行うことを有する、データの記憶ブロッ
クのための複数個の記憶装置を有する構成可能な冗長ア
レイ記憶装置のアドレス指定のための方法。 - 【請求項10】 (イ) 複数個の記憶装置の中に記憶
されたブロックに対し中央処理装置から制御装置へ、ボ
リューム番号と、初期ブロック番号と、転送されるべき
ブロックの数とによってこのような前記ブロックのアド
レス指定を行なう、要求を送信する段階と、(ロ) 要
求のおのおのを、チャンネル番号と、記憶装置番号と、
開始ブロック番号と、オフセット数とによって定められ
る前記複数個の記憶装置に対するアドレスに翻訳する段
階と、(ハ) 前記翻訳されたアドレスによって少なく
とも1つの記憶装置を呼び出す段階と、を有し、データ
の記憶ブロックのための前記複数個の記憶装置と、前記
記憶装置に接続された少なくとも1つの前記制御装置
と、前記制御装置に接続された少なくとも1つの前記中
央処理装置とを有する構成可能な冗長アレイ記憶装置の
アドレス指定のための方法。 - 【請求項11】 チャンネル番号と、記憶装置番号と、
開始ブロック番号と、オフセット数とによってアドレス
指定可能な少なくとも1つの論理記憶装置を装置の中に
定める段階を有する、データの記憶ブロックのための複
数個の記憶装置を有する冗長アレイ記憶装置を構成する
ための方法。 - 【請求項12】 請求項11において、深さ特性を有し
かつ少なくとも1つの論理記憶装置を備えた少なくとも
1つの論理ボリュームを装置の中に定める段階をさらに
有する、冗長アレイ記憶装置を構成するための方法。 - 【請求項13】 請求項12において、少なくとも1つ
の論理ボリュームを有する少なくとも1つの冗長群を装
置の中に定める段階をさらに有する、冗長アレイ記憶装
置を構成するための方法。 - 【請求項14】 請求項13において、このような前記
冗長群のおのおのが少なくとも1つの冗長レベルを有す
る、冗長アレイ記憶装置を構成するための方法。 - 【請求項15】 請求項14において、このような前記
冗長群のおのおのが少なくとも2個の冗長レベルを有す
る、冗長アレイ記憶装置を構成するための方法。 - 【請求項16】 (イ) チャンネル番号と、記憶装置
番号と、開始ブロック番号と、オフセット数とによって
アドレス指定可能であり、かつ、おのおのが物理的記憶
装置の一部分を有する、少なくとも1つの論理記憶装置
を装置の中に定める段階と、(ロ) 少なくとも1つの
論理記憶装置を有する少なくとも1つの論理ボリューム
を装置の中に定める段階と、(ハ) 少なくとも1つの
論理ボリュームを有する少なくとも1つの冗長群を装置
の中に定める段階と、を有する、データの記憶ブロック
のための物理的記憶装置の冗長アレイ記憶装置を構成す
るための方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US61222090A | 1990-11-09 | 1990-11-09 | |
| US612220 | 1990-11-09 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH05197498A true JPH05197498A (ja) | 1993-08-06 |
| JP3304115B2 JP3304115B2 (ja) | 2002-07-22 |
Family
ID=24452245
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP35115591A Expired - Fee Related JP3304115B2 (ja) | 1990-11-09 | 1991-11-08 | 構成可能な冗長アレイ記憶装置 |
Country Status (6)
| Country | Link |
|---|---|
| US (3) | US5519844A (ja) |
| EP (1) | EP0485110B1 (ja) |
| JP (1) | JP3304115B2 (ja) |
| AU (1) | AU8683991A (ja) |
| CA (1) | CA2054794C (ja) |
| DE (1) | DE69131551T2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6675176B1 (en) | 1998-09-18 | 2004-01-06 | Fujitsu Limited | File management system |
| JP2004145901A (ja) * | 1998-12-22 | 2004-05-20 | Hitachi Ltd | 記憶装置システム |
| JP2007172082A (ja) * | 2005-12-19 | 2007-07-05 | Fujitsu Ltd | 制御装置およびコピー制御方法 |
| US7805564B2 (en) | 1998-12-22 | 2010-09-28 | Hitachi, Ltd. | Display apparatus and its method for displaying connections among a host, a logical unit and a storage system in a virtual storage system |
Families Citing this family (200)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU8683991A (en) * | 1990-11-09 | 1992-05-14 | Array Technology Corporation | Logical partitioning of a redundant array storage system |
| US5499337A (en) * | 1991-09-27 | 1996-03-12 | Emc Corporation | Storage device array architecture with solid-state redundancy unit |
| US5974544A (en) * | 1991-12-17 | 1999-10-26 | Dell Usa, L.P. | Method and controller for defect tracking in a redundant array |
| JP2868141B2 (ja) | 1992-03-16 | 1999-03-10 | 株式会社日立製作所 | ディスクアレイ装置 |
| US5471640A (en) * | 1992-07-06 | 1995-11-28 | Hewlett-Packard | Programmable disk array controller having n counters for n disk drives for stripping data where each counter addresses specific memory location by a count n |
| JP3183719B2 (ja) * | 1992-08-26 | 2001-07-09 | 三菱電機株式会社 | アレイ型記録装置 |
| JP3181398B2 (ja) * | 1992-10-06 | 2001-07-03 | 三菱電機株式会社 | アレイ型記録装置 |
| US5666511A (en) * | 1992-10-08 | 1997-09-09 | Fujitsu Limited | Deadlock suppressing schemes in a raid system |
| US5579474A (en) * | 1992-12-28 | 1996-11-26 | Hitachi, Ltd. | Disk array system and its control method |
| JPH06217250A (ja) * | 1993-01-20 | 1994-08-05 | Sony Corp | Av機器の信号ラインの制御方法 |
| CA2121852A1 (en) * | 1993-04-29 | 1994-10-30 | Larry T. Jost | Disk meshing and flexible storage mapping with enhanced flexible caching |
| US7174352B2 (en) | 1993-06-03 | 2007-02-06 | Network Appliance, Inc. | File system image transfer |
| US6604118B2 (en) | 1998-07-31 | 2003-08-05 | Network Appliance, Inc. | File system image transfer |
| WO1994029795A1 (en) * | 1993-06-04 | 1994-12-22 | Network Appliance Corporation | A method for providing parity in a raid sub-system using a non-volatile memory |
| US5392244A (en) * | 1993-08-19 | 1995-02-21 | Hewlett-Packard Company | Memory systems with data storage redundancy management |
| JP3249868B2 (ja) * | 1993-11-19 | 2002-01-21 | 株式会社日立製作所 | アレイ形式の記憶装置システム |
| DE69533764T2 (de) * | 1994-06-22 | 2005-12-01 | Hewlett-Packard Development Co., L.P., Houston | Verfahren zum Gebrauch von Speicherplatten unterschiedlicher Inhalte in einem Einzelvolumen einer hierarchischen Speicherplattenanordnung |
| US5615352A (en) * | 1994-10-05 | 1997-03-25 | Hewlett-Packard Company | Methods for adding storage disks to a hierarchic disk array while maintaining data availability |
| US5659704A (en) * | 1994-12-02 | 1997-08-19 | Hewlett-Packard Company | Methods and system for reserving storage space for data migration in a redundant hierarchic data storage system by dynamically computing maximum storage space for mirror redundancy |
| US5651133A (en) * | 1995-02-01 | 1997-07-22 | Hewlett-Packard Company | Methods for avoiding over-commitment of virtual capacity in a redundant hierarchic data storage system |
| US5666512A (en) * | 1995-02-10 | 1997-09-09 | Hewlett-Packard Company | Disk array having hot spare resources and methods for using hot spare resources to store user data |
| JP3358687B2 (ja) * | 1995-03-13 | 2002-12-24 | 株式会社日立製作所 | ディスクアレイ装置 |
| JPH08329021A (ja) * | 1995-03-30 | 1996-12-13 | Mitsubishi Electric Corp | クライアントサーバシステム |
| US5678061A (en) * | 1995-07-19 | 1997-10-14 | Lucent Technologies Inc. | Method for employing doubly striped mirroring of data and reassigning data streams scheduled to be supplied by failed disk to respective ones of remaining disks |
| US5875456A (en) * | 1995-08-17 | 1999-02-23 | Nstor Corporation | Storage device array and methods for striping and unstriping data and for adding and removing disks online to/from a raid storage array |
| US5657468A (en) * | 1995-08-17 | 1997-08-12 | Ambex Technologies, Inc. | Method and apparatus for improving performance in a reduntant array of independent disks |
| US5845319A (en) * | 1995-08-23 | 1998-12-01 | Fujitsu Limited | Disk array device which separates local and physical disks using striping and operation mode selection |
| JP3686457B2 (ja) * | 1995-08-31 | 2005-08-24 | 株式会社日立製作所 | ディスクアレイサブシステム |
| US5774641A (en) * | 1995-09-14 | 1998-06-30 | International Business Machines Corporation | Computer storage drive array with command initiation at respective drives |
| US6098128A (en) | 1995-09-18 | 2000-08-01 | Cyberstorage Systems Corporation | Universal storage management system |
| US5893138A (en) * | 1995-10-02 | 1999-04-06 | International Business Machines Corporation | System and method for improving channel hardware performance for an array controller |
| US5812753A (en) * | 1995-10-13 | 1998-09-22 | Eccs, Inc. | Method for initializing or reconstructing data consistency within an array of storage elements |
| US5809224A (en) * | 1995-10-13 | 1998-09-15 | Compaq Computer Corporation | On-line disk array reconfiguration |
| US5822782A (en) * | 1995-10-27 | 1998-10-13 | Symbios, Inc. | Methods and structure to maintain raid configuration information on disks of the array |
| US5727181A (en) * | 1996-02-14 | 1998-03-10 | International Business Machines Corporation | Array management system with volume transform filter |
| US5864738A (en) * | 1996-03-13 | 1999-01-26 | Cray Research, Inc. | Massively parallel processing system using two data paths: one connecting router circuit to the interconnect network and the other connecting router circuit to I/O controller |
| US6233704B1 (en) | 1996-03-13 | 2001-05-15 | Silicon Graphics, Inc. | System and method for fault-tolerant transmission of data within a dual ring network |
| US5748900A (en) * | 1996-03-13 | 1998-05-05 | Cray Research, Inc. | Adaptive congestion control mechanism for modular computer networks |
| US5862313A (en) * | 1996-05-20 | 1999-01-19 | Cray Research, Inc. | Raid system using I/O buffer segment to temporary store striped and parity data and connecting all disk drives via a single time multiplexed network |
| US5805788A (en) * | 1996-05-20 | 1998-09-08 | Cray Research, Inc. | Raid-5 parity generation and data reconstruction |
| US5761534A (en) * | 1996-05-20 | 1998-06-02 | Cray Research, Inc. | System for arbitrating packetized data from the network to the peripheral resources and prioritizing the dispatching of packets onto the network |
| US5893919A (en) * | 1996-09-27 | 1999-04-13 | Storage Computer Corporation | Apparatus and method for storing data with selectable data protection using mirroring and selectable parity inhibition |
| US5926649A (en) * | 1996-10-23 | 1999-07-20 | Industrial Technology Research Institute | Media server for storage and retrieval of voluminous multimedia data |
| JP3344907B2 (ja) * | 1996-11-01 | 2002-11-18 | 富士通株式会社 | Raid装置及び論理ボリュームのアクセス制御方法 |
| US6023584A (en) * | 1997-01-03 | 2000-02-08 | Ncr Corporation | Installation of computer programs using disk mirroring |
| JPH10198526A (ja) * | 1997-01-14 | 1998-07-31 | Fujitsu Ltd | Raid装置及びそのアクセス制御方法 |
| US5948060A (en) * | 1997-01-24 | 1999-09-07 | International Business Machines Corporation | Speeding-up communication rates on links transferring data structures by a method of handing scatter/gather of storage blocks in commanded computer systems |
| US5946707A (en) * | 1997-02-28 | 1999-08-31 | Adaptec, Inc. | Interleaved burst XOR using a single memory pointer |
| US6658526B2 (en) * | 1997-03-12 | 2003-12-02 | Storage Technology Corporation | Network attached virtual data storage subsystem |
| WO1998040810A2 (en) * | 1997-03-12 | 1998-09-17 | Storage Technology Corporation | Network attached virtual tape data storage subsystem |
| US6073209A (en) * | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
| US5911148A (en) * | 1997-05-29 | 1999-06-08 | International Business Machines Corporation | Automated message processing system configured for automated tape device management |
| US5999982A (en) * | 1997-05-29 | 1999-12-07 | International Business Machines Corporation | Automated message processing system having a plurality of expert local facilities responsive to messages routed thereto to perform predetermined actions |
| US6041329A (en) * | 1997-05-29 | 2000-03-21 | International Business Machines Corporation | Automated message processing system configured to automatically manage introduction of removable data storage media into media library |
| US5991894A (en) * | 1997-06-06 | 1999-11-23 | The Chinese University Of Hong Kong | Progressive redundancy transmission |
| US6016552A (en) * | 1997-06-06 | 2000-01-18 | The Chinese University Of Hong Kong | Object striping focusing on data object |
| US6216211B1 (en) | 1997-06-13 | 2001-04-10 | International Business Machines Corporation | Method and apparatus for accessing mirrored logical volumes |
| US5960451A (en) * | 1997-09-16 | 1999-09-28 | Hewlett-Packard Company | System and method for reporting available capacity in a data storage system with variable consumption characteristics |
| US6112257A (en) * | 1997-09-24 | 2000-08-29 | Emc Corporation | Dynamic adjustment of mirror service policy for logical volumes in a disk drive system based on collected statistics |
| US6085303A (en) * | 1997-11-17 | 2000-07-04 | Cray Research, Inc. | Seralized race-free virtual barrier network |
| US5970232A (en) * | 1997-11-17 | 1999-10-19 | Cray Research, Inc. | Router table lookup mechanism |
| US6098119A (en) * | 1998-01-21 | 2000-08-01 | Mylex Corporation | Apparatus and method that automatically scans for and configures previously non-configured disk drives in accordance with a particular raid level based on the needed raid level |
| US6029168A (en) * | 1998-01-23 | 2000-02-22 | Tricord Systems, Inc. | Decentralized file mapping in a striped network file system in a distributed computing environment |
| US6105118A (en) * | 1998-02-02 | 2000-08-15 | International Business Machines Corporation | System and method for selecting which data copy to read in an information handling system |
| US6078990A (en) * | 1998-02-06 | 2000-06-20 | Ncr Corporation | Volume set configuration using a single operational view |
| US6457130B2 (en) | 1998-03-03 | 2002-09-24 | Network Appliance, Inc. | File access control in a multi-protocol file server |
| US6317844B1 (en) | 1998-03-10 | 2001-11-13 | Network Appliance, Inc. | File server storage arrangement |
| US6122685A (en) * | 1998-05-06 | 2000-09-19 | Emc Corporation | System for improving the performance of a disk storage device by reconfiguring a logical volume of data in response to the type of operations being performed |
| US6654881B2 (en) | 1998-06-12 | 2003-11-25 | Microsoft Corporation | Logical volume mount manager |
| BR9911409A (pt) | 1998-06-22 | 2001-09-04 | Colin Constable | Sistema virtual para armazenamento de dados (vds) |
| EP0969371A1 (en) * | 1998-06-30 | 2000-01-05 | Sun Microsystems, Inc. | Verifying configuration of storage devices based upon device indentifiers |
| US6192470B1 (en) | 1998-07-29 | 2001-02-20 | Compaq Computer Corporation | Configuration sizer for selecting system of computer components based on price/performance normalization |
| US6253318B1 (en) * | 1998-07-29 | 2001-06-26 | Compaq Computer Corporation | Method of developing physical requirements for computer configuration |
| US6263382B1 (en) * | 1998-07-29 | 2001-07-17 | Compaq Computer Corporation | Sizer for interactive computer system configuration |
| US7013305B2 (en) | 2001-10-01 | 2006-03-14 | International Business Machines Corporation | Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange |
| GB2341715A (en) * | 1998-09-17 | 2000-03-22 | Springtek Limited | Magnetic disk redundant array |
| US6216174B1 (en) | 1998-09-29 | 2001-04-10 | Silicon Graphics, Inc. | System and method for fast barrier synchronization |
| US6343984B1 (en) | 1998-11-30 | 2002-02-05 | Network Appliance, Inc. | Laminar flow duct cooling system |
| US6230217B1 (en) * | 1998-12-30 | 2001-05-08 | Raytheon Company | Data storage system having a host computer coupled to bank of disk drives through interface comprising plurality of directors, buses, and a PCB connectors |
| US6457139B1 (en) * | 1998-12-30 | 2002-09-24 | Emc Corporation | Method and apparatus for providing a host computer with information relating to the mapping of logical volumes within an intelligent storage system |
| US6363457B1 (en) | 1999-02-08 | 2002-03-26 | International Business Machines Corporation | Method and system for non-disruptive addition and deletion of logical devices |
| US6467023B1 (en) * | 1999-03-23 | 2002-10-15 | Lsi Logic Corporation | Method for logical unit creation with immediate availability in a raid storage environment |
| US6336172B1 (en) | 1999-04-01 | 2002-01-01 | International Business Machines Corporation | Storing and tracking multiple copies of data in a data storage library system |
| US6336173B1 (en) | 1999-04-01 | 2002-01-01 | International Business Machines Corporation | Storing and tracking multiple copies of data in data storage libraries |
| US6275898B1 (en) | 1999-05-13 | 2001-08-14 | Lsi Logic Corporation | Methods and structure for RAID level migration within a logical unit |
| US6463573B1 (en) * | 1999-06-03 | 2002-10-08 | International Business Machines Corporation | Data processor storage systems with dynamic resynchronization of mirrored logical data volumes subsequent to a storage system failure |
| US6519679B2 (en) | 1999-06-11 | 2003-02-11 | Dell Usa, L.P. | Policy based storage configuration |
| US6839782B1 (en) * | 1999-07-30 | 2005-01-04 | Emc Corporation | Computer storage system incorporating on-board EEPROMS containing product data |
| US6467047B1 (en) * | 1999-07-30 | 2002-10-15 | Emc Corporation | Computer storage system controller incorporating control store memory with primary and secondary data and parity areas |
| JP2001043031A (ja) * | 1999-07-30 | 2001-02-16 | Toshiba Corp | 分散パリティ生成機能を備えたディスクアレイ制御装置 |
| US6674720B1 (en) | 1999-09-29 | 2004-01-06 | Silicon Graphics, Inc. | Age-based network arbitration system and method |
| US6629202B1 (en) * | 1999-11-29 | 2003-09-30 | Microsoft Corporation | Volume stacking model |
| US6553387B1 (en) | 1999-11-29 | 2003-04-22 | Microsoft Corporation | Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers |
| US6684231B1 (en) | 1999-11-29 | 2004-01-27 | Microsoft Corporation | Migration of friendly volumes |
| JP4869466B2 (ja) * | 2000-02-24 | 2012-02-08 | 富士通セミコンダクター株式会社 | 記憶装置の制御方法、データ管理システム、記録媒体、及び記憶装置 |
| US6571351B1 (en) * | 2000-04-07 | 2003-05-27 | Omneon Video Networks | Tightly coupled secondary storage system and file system |
| US6804819B1 (en) | 2000-09-18 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method, system, and computer program product for a data propagation platform and applications of same |
| US7386610B1 (en) | 2000-09-18 | 2008-06-10 | Hewlett-Packard Development Company, L.P. | Internet protocol data mirroring |
| US6977927B1 (en) | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
| US6654912B1 (en) * | 2000-10-04 | 2003-11-25 | Network Appliance, Inc. | Recovery of file system data in file servers mirrored file system volumes |
| US7143249B2 (en) * | 2000-10-04 | 2006-11-28 | Network Appliance, Inc. | Resynchronization of mirrored storage devices |
| GB0025226D0 (en) | 2000-10-14 | 2000-11-29 | Ibm | Data storage system and method of storing data |
| US6745310B2 (en) * | 2000-12-01 | 2004-06-01 | Yan Chiew Chow | Real time local and remote management of data files and directories and method of operating the same |
| US6704886B1 (en) | 2001-01-25 | 2004-03-09 | Emc Corporation | Data backup system having independent data restore execution |
| US7558840B1 (en) | 2001-01-25 | 2009-07-07 | Emc Corporation | Data backup system having a flexible restore architecture |
| US6721766B1 (en) | 2001-01-25 | 2004-04-13 | Emc Corporation | Restoring multiple work items simultaneously from backup and data restore |
| US6606690B2 (en) | 2001-02-20 | 2003-08-12 | Hewlett-Packard Development Company, L.P. | System and method for accessing a storage area network as network attached storage |
| JP2004528637A (ja) * | 2001-03-12 | 2004-09-16 | ハネウェル・インターナショナル・インコーポレーテッド | 放射線イベント後にフライト・クリティカル・コンピュータを回復する方法 |
| US6862661B2 (en) | 2001-06-26 | 2005-03-01 | International Business Machines Corporation | Object oriented approach to a redundant array storage system |
| US7146524B2 (en) | 2001-08-03 | 2006-12-05 | Isilon Systems, Inc. | Systems and methods for providing a distributed file system incorporating a virtual hot spare |
| US7685126B2 (en) * | 2001-08-03 | 2010-03-23 | Isilon Systems, Inc. | System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system |
| JP2003256147A (ja) * | 2002-02-28 | 2003-09-10 | Hitachi Ltd | クラスタ型ディスクアレイ装置およびクラスタ型ディスクアレイ装置の運用方法 |
| WO2003050683A1 (en) * | 2001-08-31 | 2003-06-19 | Legend (Beijing) Limited | Method for backing up and recovering data in the hard disk of a computer |
| US20030154271A1 (en) * | 2001-10-05 | 2003-08-14 | Baldwin Duane Mark | Storage area network methods and apparatus with centralized management |
| US7137124B2 (en) | 2001-10-05 | 2006-11-14 | International Business Machines Corporation | Storage area network methods and apparatus for storage device masking |
| US6954824B2 (en) * | 2001-10-15 | 2005-10-11 | International Business Machines Corporation | Method, system, and program for determining a configuration of a logical array including a plurality of storage devices |
| US6993676B2 (en) * | 2002-06-12 | 2006-01-31 | Sun Microsystems, Inc. | Method and apparatus for fast initialization of redundant arrays of storage devices |
| US6961836B2 (en) * | 2002-08-29 | 2005-11-01 | Lsi Logic Corporation | Method and apparatus for mapping storage partitions of storage elements to host systems |
| US7649880B2 (en) | 2002-11-12 | 2010-01-19 | Mark Adams | Systems and methods for deriving storage area commands |
| JP2006506847A (ja) | 2002-11-12 | 2006-02-23 | ゼテーラ・コーポレイシヨン | 通信プロトコル、システムおよび方法 |
| US8005918B2 (en) | 2002-11-12 | 2011-08-23 | Rateze Remote Mgmt. L.L.C. | Data storage devices having IP capable partitions |
| US7170890B2 (en) | 2002-12-16 | 2007-01-30 | Zetera Corporation | Electrical devices with improved communication |
| CN1692356B (zh) | 2002-11-14 | 2014-06-04 | 易斯龙系统公司 | 用于对现存文件重新条带化的方法 |
| US7809693B2 (en) * | 2003-02-10 | 2010-10-05 | Netapp, Inc. | System and method for restoring data on demand for instant volume restoration |
| US20040268079A1 (en) * | 2003-06-24 | 2004-12-30 | International Business Machines Corporation | Method and system for providing a secure rapid restore backup of a raid system |
| US20050010722A1 (en) * | 2003-07-11 | 2005-01-13 | Chih-Wei Chen | Multi-volume disk array management method and system |
| US7908413B2 (en) * | 2003-07-15 | 2011-03-15 | International Business Machines Corporation | Data allocation in a distributed storage system |
| US7237139B2 (en) * | 2003-08-07 | 2007-06-26 | International Business Machines Corporation | Services heuristics for computer adapter placement in logical partitioning operations |
| US7428691B2 (en) * | 2003-11-12 | 2008-09-23 | Norman Ken Ouchi | Data recovery from multiple failed data blocks and storage units |
| US7290087B2 (en) * | 2003-11-26 | 2007-10-30 | International Business Machines Corporation | Adaptive grouping in object raid |
| US7330930B1 (en) * | 2004-03-09 | 2008-02-12 | Adaptec, Inc. | Method and apparatus for balanced disk access load distribution |
| JP2005293363A (ja) * | 2004-04-01 | 2005-10-20 | Toshiba Corp | ディスクアレイコントローラおよび情報処理装置 |
| US7046560B2 (en) * | 2004-09-02 | 2006-05-16 | Micron Technology, Inc. | Reduction of fusible links and associated circuitry on memory dies |
| US7321905B2 (en) * | 2004-09-30 | 2008-01-22 | International Business Machines Corporation | System and method for efficient data recovery in a storage array utilizing multiple parity slopes |
| JP2006107311A (ja) * | 2004-10-08 | 2006-04-20 | Hitachi Ltd | ディスクアレイ装置およびその制御方法 |
| US8131926B2 (en) * | 2004-10-20 | 2012-03-06 | Seagate Technology, Llc | Generic storage container for allocating multiple data formats |
| US8131969B2 (en) * | 2004-10-20 | 2012-03-06 | Seagate Technology Llc | Updating system configuration information |
| US7594075B2 (en) | 2004-10-20 | 2009-09-22 | Seagate Technology Llc | Metadata for a grid based data storage system |
| US8051425B2 (en) | 2004-10-29 | 2011-11-01 | Emc Corporation | Distributed system with asynchronous execution systems and methods |
| US8238350B2 (en) | 2004-10-29 | 2012-08-07 | Emc Corporation | Message batching with checkpoints systems and methods |
| US8055711B2 (en) | 2004-10-29 | 2011-11-08 | Emc Corporation | Non-blocking commit protocol systems and methods |
| US7418621B2 (en) * | 2005-02-24 | 2008-08-26 | Dot Hill Systems Corp. | Redundant storage array method and apparatus |
| US7702850B2 (en) | 2005-03-14 | 2010-04-20 | Thomas Earl Ludwig | Topology independent storage arrays and methods |
| US20060236149A1 (en) * | 2005-04-14 | 2006-10-19 | Dell Products L.P. | System and method for rebuilding a storage disk |
| WO2006116203A1 (en) | 2005-04-25 | 2006-11-02 | Network Appliance, Inc. | System and method for caching network file systems |
| US7689609B2 (en) * | 2005-04-25 | 2010-03-30 | Netapp, Inc. | Architecture for supporting sparse volumes |
| US7620981B2 (en) | 2005-05-26 | 2009-11-17 | Charles William Frank | Virtual devices and virtual bus tunnels, modules and methods |
| US8819092B2 (en) | 2005-08-16 | 2014-08-26 | Rateze Remote Mgmt. L.L.C. | Disaggregated resources and access methods |
| US7743214B2 (en) | 2005-08-16 | 2010-06-22 | Mark Adams | Generating storage system commands |
| US7694072B2 (en) * | 2005-09-22 | 2010-04-06 | Xyratex Technology Limited | System and method for flexible physical-logical mapping raid arrays |
| US9270532B2 (en) | 2005-10-06 | 2016-02-23 | Rateze Remote Mgmt. L.L.C. | Resource command messages and methods |
| US7917474B2 (en) | 2005-10-21 | 2011-03-29 | Isilon Systems, Inc. | Systems and methods for accessing and updating distributed data |
| US7797283B2 (en) | 2005-10-21 | 2010-09-14 | Isilon Systems, Inc. | Systems and methods for maintaining distributed data |
| US7386675B2 (en) * | 2005-10-21 | 2008-06-10 | Isilon Systems, Inc. | Systems and methods for using excitement values to predict future access to resources |
| US7551572B2 (en) * | 2005-10-21 | 2009-06-23 | Isilon Systems, Inc. | Systems and methods for providing variable protection |
| US7346720B2 (en) * | 2005-10-21 | 2008-03-18 | Isilon Systems, Inc. | Systems and methods for managing concurrent access requests to a shared resource |
| US7788303B2 (en) * | 2005-10-21 | 2010-08-31 | Isilon Systems, Inc. | Systems and methods for distributed system scanning |
| US7848261B2 (en) | 2006-02-17 | 2010-12-07 | Isilon Systems, Inc. | Systems and methods for providing a quiescing protocol |
| US7756898B2 (en) | 2006-03-31 | 2010-07-13 | Isilon Systems, Inc. | Systems and methods for notifying listeners of events |
| US7924881B2 (en) | 2006-04-10 | 2011-04-12 | Rateze Remote Mgmt. L.L.C. | Datagram identifier management |
| US8539056B2 (en) | 2006-08-02 | 2013-09-17 | Emc Corporation | Systems and methods for configuring multiple network interfaces |
| US7752402B2 (en) | 2006-08-18 | 2010-07-06 | Isilon Systems, Inc. | Systems and methods for allowing incremental journaling |
| US7882071B2 (en) | 2006-08-18 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for a snapshot of data |
| US7899800B2 (en) | 2006-08-18 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
| US7590652B2 (en) | 2006-08-18 | 2009-09-15 | Isilon Systems, Inc. | Systems and methods of reverse lookup |
| US7680836B2 (en) * | 2006-08-18 | 2010-03-16 | Isilon Systems, Inc. | Systems and methods for a snapshot of data |
| US7953704B2 (en) | 2006-08-18 | 2011-05-31 | Emc Corporation | Systems and methods for a snapshot of data |
| US7680842B2 (en) | 2006-08-18 | 2010-03-16 | Isilon Systems, Inc. | Systems and methods for a snapshot of data |
| US7676691B2 (en) | 2006-08-18 | 2010-03-09 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
| US7822932B2 (en) | 2006-08-18 | 2010-10-26 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
| US7747584B1 (en) * | 2006-08-22 | 2010-06-29 | Netapp, Inc. | System and method for enabling de-duplication in a storage system architecture |
| US7610507B2 (en) * | 2006-09-08 | 2009-10-27 | Agere Systems Inc. | High-speed redundant disk controller methods and systems |
| US8286029B2 (en) | 2006-12-21 | 2012-10-09 | Emc Corporation | Systems and methods for managing unavailable storage devices |
| US7593938B2 (en) | 2006-12-22 | 2009-09-22 | Isilon Systems, Inc. | Systems and methods of directory entry encodings |
| US7509448B2 (en) | 2007-01-05 | 2009-03-24 | Isilon Systems, Inc. | Systems and methods for managing semantic locks |
| US7779048B2 (en) | 2007-04-13 | 2010-08-17 | Isilon Systems, Inc. | Systems and methods of providing possible value ranges |
| US7900015B2 (en) | 2007-04-13 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods of quota accounting |
| US8966080B2 (en) | 2007-04-13 | 2015-02-24 | Emc Corporation | Systems and methods of managing resource utilization on a threaded computer system |
| US8285758B1 (en) | 2007-06-30 | 2012-10-09 | Emc Corporation | Tiering storage between multiple classes of storage on the same container file system |
| US7966289B2 (en) | 2007-08-21 | 2011-06-21 | Emc Corporation | Systems and methods for reading objects in a file system |
| US7949692B2 (en) | 2007-08-21 | 2011-05-24 | Emc Corporation | Systems and methods for portals into snapshot data |
| US7882068B2 (en) | 2007-08-21 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for adaptive copy on write |
| US7870345B2 (en) | 2008-03-27 | 2011-01-11 | Isilon Systems, Inc. | Systems and methods for managing stalled storage devices |
| US7984324B2 (en) | 2008-03-27 | 2011-07-19 | Emc Corporation | Systems and methods for managing stalled storage devices |
| US7953709B2 (en) | 2008-03-27 | 2011-05-31 | Emc Corporation | Systems and methods for a read only mode for a portion of a storage system |
| US7949636B2 (en) | 2008-03-27 | 2011-05-24 | Emc Corporation | Systems and methods for a read only mode for a portion of a storage system |
| US8151048B1 (en) * | 2008-03-31 | 2012-04-03 | Emc Corporation | Managing storage pool provisioning |
| US7958304B1 (en) * | 2008-04-30 | 2011-06-07 | Network Appliance, Inc. | Dynamically adapting the fault tolerance and performance characteristics of a raid-based storage system by merging and splitting raid groups |
| ES2380137T3 (es) | 2008-08-12 | 2012-05-08 | Strato Ag | Sistema de almacenamiento de datos y procedimiento para el funcionamiento del mismo |
| US8341349B2 (en) * | 2008-10-31 | 2012-12-25 | Lsi Corporation | System and method for loose coupling between raid volumes and drive groups |
| US7945822B1 (en) * | 2009-04-27 | 2011-05-17 | Netapp, Inc. | Storing data to multi-chip low-latency random read memory device using non-aligned striping |
| US8082392B2 (en) * | 2009-04-28 | 2011-12-20 | Lsi Corporation | Managing storage array operations that cause loss of access to mirrored data |
| US8527749B2 (en) * | 2009-11-11 | 2013-09-03 | International Business Machines Corporation | User device, computer program product and computer system for system for secure network storage |
| US8775868B2 (en) | 2010-09-28 | 2014-07-08 | Pure Storage, Inc. | Adaptive RAID for an SSD environment |
| JP5776436B2 (ja) * | 2011-08-22 | 2015-09-09 | 富士通株式会社 | ストレージシステム、ストレージ制御装置およびストレージ制御方法 |
| US9665621B1 (en) * | 2013-03-14 | 2017-05-30 | EMC IP Holding Company LLC | Accelerated query execution within a storage array |
| US9672106B2 (en) | 2014-12-30 | 2017-06-06 | Nutanix, Inc. | Architecture for implementing erasure coding |
| US10567009B2 (en) | 2016-12-06 | 2020-02-18 | Nutanix, Inc. | Dynamic erasure coding |
| US11762564B2 (en) * | 2020-10-19 | 2023-09-19 | EMC IP Holding Company LLC | System and method for detecting corruption of a deduplicated cloud object |
| CN121354611B (zh) * | 2025-10-20 | 2026-03-13 | 翼华科技(北京)股份有限公司 | 存储单元选型方法、装置、电子设备和计算机存储介质 |
Family Cites Families (39)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3893178A (en) * | 1973-12-19 | 1975-07-01 | Information Storage Systems | Synchronization of multiple disc drives |
| US4092732A (en) * | 1977-05-31 | 1978-05-30 | International Business Machines Corporation | System for recovering data stored in failed memory unit |
| US4183084A (en) * | 1977-06-06 | 1980-01-08 | Digital Equipment Corporation | Secondary storage facility with serial transfer of control messages |
| US4467421A (en) * | 1979-10-18 | 1984-08-21 | Storage Technology Corporation | Virtual storage system and method |
| US4562576A (en) * | 1982-08-14 | 1985-12-31 | International Computers Limited | Data storage apparatus |
| US4607346A (en) * | 1983-03-28 | 1986-08-19 | International Business Machines Corporation | Apparatus and method for placing data on a partitioned direct access storage device |
| FR2561428B1 (fr) * | 1984-03-16 | 1986-09-12 | Bull Sa | Procede d'enregistrement dans une memoire a disques et systeme de memoire a disques |
| US4667326A (en) * | 1984-12-20 | 1987-05-19 | Advanced Micro Devices, Inc. | Method and apparatus for error detection and correction in systems comprising floppy and/or hard disk drives |
| US4754397A (en) * | 1985-02-15 | 1988-06-28 | Tandem Computers Incorporated | Fault tolerant modular subsystems for computers |
| JPS61264599A (ja) * | 1985-05-16 | 1986-11-22 | Fujitsu Ltd | 半導体記憶装置 |
| US4667362A (en) * | 1985-07-08 | 1987-05-26 | Presentation Systems, Inc. | Scraper for carpet seaming irons |
| US4722085A (en) * | 1986-02-03 | 1988-01-26 | Unisys Corp. | High capacity disk storage system having unusually high fault tolerance level and bandpass |
| US4761785B1 (en) * | 1986-06-12 | 1996-03-12 | Ibm | Parity spreading to enhance storage access |
| US4819159A (en) * | 1986-08-29 | 1989-04-04 | Tolerant Systems, Inc. | Distributed multiprocess transaction processing system and method |
| US4775978A (en) * | 1987-01-12 | 1988-10-04 | Magnetic Peripherals Inc. | Data error correction system |
| US4942579A (en) * | 1987-06-02 | 1990-07-17 | Cab-Tek, Inc. | High-speed, high-capacity, fault-tolerant error-correcting storage system |
| US4870643A (en) * | 1987-11-06 | 1989-09-26 | Micropolis Corporation | Parallel drive array storage system |
| 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 |
| US4899342A (en) * | 1988-02-01 | 1990-02-06 | Thinking Machines Corporation | Method and apparatus for operating multi-unit array of memories |
| US4993030A (en) * | 1988-04-22 | 1991-02-12 | Amdahl Corporation | File system for a plurality of storage classes |
| US4989206A (en) * | 1988-06-28 | 1991-01-29 | Storage Technology Corporation | Disk drive memory |
| US4914656A (en) * | 1988-06-28 | 1990-04-03 | Storage Technology Corporation | Disk drive memory |
| GB8816413D0 (en) * | 1988-07-09 | 1988-08-17 | Int Computers Ltd | Data processing system |
| AU630635B2 (en) * | 1988-11-14 | 1992-11-05 | Emc Corporation | Arrayed disk drive system and method |
| US5148432A (en) * | 1988-11-14 | 1992-09-15 | Array Technology Corporation | Arrayed disk drive system and method |
| US5249279A (en) * | 1989-11-03 | 1993-09-28 | Compaq Computer Corporation | Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands |
| CA2029179A1 (en) * | 1989-11-03 | 1991-05-04 | Stephen M. Schultz | Method for data distribution in a disk array |
| US5140592A (en) * | 1990-03-02 | 1992-08-18 | Sf2 Corporation | Disk array system |
| US5134619A (en) * | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
| US5166939A (en) * | 1990-03-02 | 1992-11-24 | Micro Technology, Inc. | Data storage apparatus and method |
| US5088081A (en) * | 1990-03-28 | 1992-02-11 | Prime Computer, Inc. | Method and apparatus for improved disk access |
| US5283875A (en) * | 1990-04-13 | 1994-02-01 | Digital Equipment Corporation | Method and apparatus for optimizing prefetch caching by reverse ordering of logical blocks |
| US5124987A (en) * | 1990-04-16 | 1992-06-23 | Storage Technology Corporation | Logical track write scheduling system for a parallel disk drive array data storage subsystem |
| US5130992A (en) * | 1990-04-16 | 1992-07-14 | International Business Machines Corporaiton | File-based redundant parity protection in a parallel computing system |
| US5155845A (en) * | 1990-06-15 | 1992-10-13 | Storage Technology Corporation | Data storage system for providing redundant copies of data on different disk drives |
| US5193184A (en) * | 1990-06-18 | 1993-03-09 | Storage Technology Corporation | Deleted data file space release system for a dynamically mapped virtual data storage subsystem |
| US5210866A (en) * | 1990-09-12 | 1993-05-11 | Storage Technology Corporation | Incremental disk backup system for a dynamically mapped data storage subsystem |
| US5287453A (en) * | 1990-09-18 | 1994-02-15 | Bull Hn Information Systems, Inc. | Fast remote file access facility for distributing file access requests in a closely coupled computer system |
| AU8683991A (en) * | 1990-11-09 | 1992-05-14 | Array Technology Corporation | Logical partitioning of a redundant array storage system |
-
1991
- 1991-10-30 AU AU86839/91A patent/AU8683991A/en not_active Abandoned
- 1991-10-30 DE DE69131551T patent/DE69131551T2/de not_active Expired - Fee Related
- 1991-10-30 EP EP91310034A patent/EP0485110B1/en not_active Expired - Lifetime
- 1991-11-01 CA CA002054794A patent/CA2054794C/en not_active Expired - Fee Related
- 1991-11-08 JP JP35115591A patent/JP3304115B2/ja not_active Expired - Fee Related
-
1994
- 1994-03-21 US US08/215,013 patent/US5519844A/en not_active Expired - Lifetime
-
1996
- 1996-04-17 US US08/635,205 patent/US5708769A/en not_active Expired - Lifetime
-
1998
- 1998-01-08 US US09/004,671 patent/US6154854A/en not_active Expired - Fee Related
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6675176B1 (en) | 1998-09-18 | 2004-01-06 | Fujitsu Limited | File management system |
| JP2004145901A (ja) * | 1998-12-22 | 2004-05-20 | Hitachi Ltd | 記憶装置システム |
| US7805564B2 (en) | 1998-12-22 | 2010-09-28 | Hitachi, Ltd. | Display apparatus and its method for displaying connections among a host, a logical unit and a storage system in a virtual storage system |
| JP2010231807A (ja) * | 1998-12-22 | 2010-10-14 | Hitachi Ltd | 記憶装置システム |
| US7937527B2 (en) | 1998-12-22 | 2011-05-03 | Hitachi, Ltd. | Storage system for sending an access request from a host to a storage subsystem |
| US8051244B2 (en) | 1998-12-22 | 2011-11-01 | Hitachi, Ltd. | Storage system for sending an access request from a host to a storage subsystem |
| US8176248B2 (en) | 1998-12-22 | 2012-05-08 | Hitachi, Ltd. | Method and system of collection performance data for storage network |
| US8375168B2 (en) | 1998-12-22 | 2013-02-12 | Hitachi, Ltd. | Method and system of collection performance data for storage network |
| JP2007172082A (ja) * | 2005-12-19 | 2007-07-05 | Fujitsu Ltd | 制御装置およびコピー制御方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| AU8683991A (en) | 1992-05-14 |
| JP3304115B2 (ja) | 2002-07-22 |
| DE69131551D1 (de) | 1999-09-30 |
| EP0485110B1 (en) | 1999-08-25 |
| US5519844A (en) | 1996-05-21 |
| US6154854A (en) | 2000-11-28 |
| DE69131551T2 (de) | 2000-02-17 |
| US5708769A (en) | 1998-01-13 |
| EP0485110A3 (en) | 1993-01-13 |
| CA2054794A1 (en) | 1992-05-10 |
| EP0485110A2 (en) | 1992-05-13 |
| CA2054794C (en) | 2001-04-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3304115B2 (ja) | 構成可能な冗長アレイ記憶装置 | |
| CA2042872C (en) | Method and means for accessing dasd arrays with tuned data transfer rate and concurrency | |
| US5303244A (en) | Fault tolerant disk drive matrix | |
| JP2769443B2 (ja) | 記憶サブシステム及び関連する装置/方法 | |
| US6289471B1 (en) | Storage device array architecture with solid-state redundancy unit | |
| US5546535A (en) | Multiple controller sharing in a redundant storage array | |
| US5072378A (en) | Direct access storage device with independently stored parity | |
| JP3129732B2 (ja) | コピーバックキャッシュを有する記憶装置アレイ | |
| US5315602A (en) | Optimized stripe detection for redundant arrays of disk drives | |
| US5375128A (en) | Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders | |
| US5301297A (en) | Method and means for managing RAID 5 DASD arrays having RAID DASD arrays as logical devices thereof | |
| US5258984A (en) | Method and means for distributed sparing in DASD arrays | |
| JP3995672B2 (ja) | 改良型raidメモリ・システム | |
| EP0482819A2 (en) | On-line reconstruction of a failed redundant array system | |
| JPH04310137A (ja) | データの修復方法およびシステム | |
| JPH0769873B2 (ja) | コンピユータのためのメモリ装置及びメモリ構成方法 | |
| US5737741A (en) | Disk array with parity data storage on the radially inner part of each disk | |
| JP2857289B2 (ja) | ディスクアレイ装置 | |
| JPH0744331A (ja) | ディスクアレイ装置およびその制御方法 | |
| JPH0816327A (ja) | ディスクアレイ装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |