JPH10511193A - 並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステム - Google Patents
並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステムInfo
- Publication number
- JPH10511193A JPH10511193A JP3507656A JP50765691A JPH10511193A JP H10511193 A JPH10511193 A JP H10511193A JP 3507656 A JP3507656 A JP 3507656A JP 50765691 A JP50765691 A JP 50765691A JP H10511193 A JPH10511193 A JP H10511193A
- Authority
- JP
- Japan
- Prior art keywords
- data
- disk drive
- redundant
- stream
- disk
- 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
- 238000013500 data storage Methods 0.000 title abstract description 102
- 238000000034 method Methods 0.000 claims abstract description 87
- 230000008569 process Effects 0.000 claims abstract description 31
- 230000007246 mechanism Effects 0.000 claims description 212
- 230000004044 response Effects 0.000 claims description 55
- 230000008859 change Effects 0.000 claims description 26
- 238000012937 correction Methods 0.000 claims description 17
- 230000004048 modification Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 5
- SHXWCVYOXRDMCX-UHFFFAOYSA-N 3,4-methylenedioxymethamphetamine Chemical compound CNC(C)CC1=CC=C2OCOC2=C1 SHXWCVYOXRDMCX-UHFFFAOYSA-N 0.000 claims 2
- 241000110847 Kochia Species 0.000 claims 2
- 230000008278 dynamic mechanism Effects 0.000 claims 1
- 230000006870 function Effects 0.000 abstract description 45
- 238000013507 mapping Methods 0.000 abstract description 28
- 239000000203 mixture Substances 0.000 abstract 1
- 238000012546 transfer Methods 0.000 description 44
- 238000007726 management method Methods 0.000 description 35
- 238000012545 processing Methods 0.000 description 20
- 239000000872 buffer Substances 0.000 description 11
- 239000002699 waste material Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 239000013307 optical fiber Substances 0.000 description 10
- 238000005192 partition Methods 0.000 description 8
- 238000013144 data compression Methods 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000008672 reprogramming Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
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; CALCULATING OR 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/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/2002—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 interconnections or communication control functionality are redundant
- G06F11/2007—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 interconnections or communication control functionality are redundant using redundant communication media
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/2002—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 interconnections or communication control functionality are redundant
- G06F11/2007—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 interconnections or communication control functionality are redundant using redundant communication media
- G06F11/201—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 interconnections or communication control functionality are redundant using redundant communication media between storage system components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/2089—Redundant storage control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0673—Single storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Table Devices Or Equipment (AREA)
- Automatic Analysis And Handling Materials Therefor (AREA)
Abstract
(57)【要約】
並列のデイスク駆動機構アレイのデータ記憶サブシステムが仮想データ記憶装置と物理的データ記憶装置の間のマップ操作を行い、これらの装置へのデータ書込みをスケジュールする。データ記憶サブシステムは従来形の大なるフォームファクタのデイスク駆動記憶装置として機能し、その場合に冗長グループの1つのアレイを用い、各冗長グループはN+M個のデイスク駆動機構を包含する。以前に空にされた論理トラックへ修飾された仮想トラック例を書込み以前の仮想トラックインスタンスの位置に包含されるデータを無効であるとマークすることにより、冗長グループにおける冗長データの更新を無くすることにより性能の改良が得られる。有効な仮想トラックと無効の仮想トラックの混合を包含する論理シリンダは、すべての有効な仮想トラックを以前に空にされた論理シリンダへバックグラウンド過程として書込むことにより、空にされる。
Description
【発明の詳細な説明】
並列デイスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込み
スケジューリングのシステム
技術分野
本発明は効率的なデータ記憶管理システムを含んでいて論理データ記憶装置に
仮想データ記憶装置をダイナミックにマップしかつこれらの装置へのデータ書込
みをスケジュールする低価格、高性能、高信頼性の並列デイスク駆動機構アレイ
式データ記憶サブシステムに関する。
背景技術
コンピュータシステムの分野においては、記憶しているデータに対する変更を
効率的に処理することのできる低価格、高性能、高信頼性のメモリーを提供する
ことが課題となっている。このことはデイスク駆動機構式メモリーシステムの場
合に特に難しい問題となっている。市販されているこうしたデイスク駆動機構の
うちで代表的なのはIBM3380Kデイスク駆動機構等の14インチフォーム
ファクター形装置であり、この装置はデユアルアクチュエータ型であって、スピ
ンドル毎に2つの部分に分割されている。このIBM3380Kデイスク駆動機
構のデータ記憶容量は3.6GBであり、この装置も2つの部分に分割されてお
り、各部分が1つのアクチュエータを備え、約1.9GBのデータを記憶するこ
とができるようになっている。デイスク駆動機構に記憶された最も頻繁に使用さ
れるデータに対するアクセスを改善するために、IBM3990モデル3記憶制
御器等のキャッシュされたDASD制御器を用いてこう
したデイスク駆動機構を複数個ホストプロセッサと相互接続させる。デイスク駆
動機構に記憶されたデータレコードに対する変更は代表的にはキャシュメモリー
において行ない、そして変更された各データレコードをデイスク駆動機構上のそ
の指定記憶場所に再び書込む。対応のホストプロセッサは代表的には、単一のデ
イスク駆動機構へデータファイル全体を書込むことによってデータファイルをデ
イスク駆動機構式メモリーに記憶する。これらの典型的なデイスク駆動機構式メ
モリーシステムにおいては、対応ホストプロセッサが使用するデータ記憶アドレ
スを、デイスク駆動機構式メモリー上の物理アドレスに対して固定マップする。
これによって、デイスク記憶制御器によって行われるデータ記憶管理が簡素化さ
れる。
ホストプロセッサで制御するメモリーマッピングに代わるものが、仮想記憶シ
ステムを主題とする米国特許第4,467,421号に開示されている。この仮
想記憶システムは対応のホストプロセッサからデータファイルを受ける。特定デ
ータファイルの範囲は将来のメモリースペース需要を見込んでユーザー指定され
ず、またホストプロセッサによって割り振られることもない。データファイルは
仮想記憶システムのキャッシュメモリーに記憶され、そのサイズが決められ、そ
してデータファイルは圧縮もされる。そうして仮想記憶システムはユーザー指定
のデータセットをデイスク駆動機構等の磁気媒体に記憶するのに便利なサイズの
ブロックに分割する。これらのブロックは、仮想記憶システムの制御プロセッサ
によって決められたデイスク駆動機構におけるデータ記憶場所に割当てられる。
データを記憶する大フォームファクター形デイスク駆動機構に代わるのが、多
数の小フォームファクター形デイスク駆動機構を並列アレイで相互接続して使用
することである。こうした機構としては、Micropolisの並列駆動機構
アレイモデル1804SCS
I(1989年9月26日交付の米国特許第4,870,643号に開示)があ
り、この機構は4個の並列な、同期化したデイスク駆動機構と1個の冗長パリテ
イデイスク駆動機構とを使用するものである。またこの機構はデータの信頼性を
高めるために、そのパリテイデイスク駆動駆動によるパリテイ保護を利用してい
る。4個のデータデイスク駆動機構のうち1個が故障してもパリテイデイスク駆
動機構に記憶されているパリテイビットの使用によって機能回復できる。互いに
他と接続されると、それらデータデイスク駆動機構は「論理デイスク駆動機構」
を形成し、この「論理デイスク駆動機構」は大フォームファクター形デイスク駆
動機構の特性をエミュレートするために仮想デイスク駆動機構としてデータ記憶
システムによって使用されるものである。このアーキテクチュアでは、単一デー
タデイスク駆動機能のデータ転送速度に対し、並列接続されたデータデイスク駆
動機構の個数が乗ぜられて高いデータ転送速度を得る。しかしながら、データの
読出し/書込みにはパリテイグループにおけるすべてのデイスク駆動機構をアク
セスする必要であり、独立のアクチュエータの個数が少なすぎる。データ転送頻
度の低い場合、システム性能を左右するのはデータアクセス時間であり、アクチ
ュエータ個数が単一であれば、そのシステムはデータ転送速度が高いがデータア
クセス時間が長くなる。このアーキテクチュアはまたデータファイルの変更すべ
てに対しパリテイデイスクのパリテイデータを更新しなければならないという難
点をもつ。
同様のシステムを開示するのが米国特許第4,722,085号であり、この
特許で開示しているのは大容量デイスク駆動機構式メモリーである。このデイス
ク駆動機構式メモリーは比較的小さい、同期動作形デイスクサブシステムを複数
個使用して、通常ならざる大きさの故障許容力と極めて広いデータ転送帯域幅と
をもった大容
量デイスク駆動機構として機能する。またエラーチェックとエラー補正とを行え
るようにデータオーガナイザーが32ビットの各データ語に7個のエラーチェッ
クビットを追加する。こうして生じた39ビットの語を39個のデイスク駆動機
構へ1ビット/駆動機構の割合で書込まれる。その39個のデイスク駆動機構の
どれか1つが故障しても、記憶されている39ビット語の残る38ビットを用い
て、メモリーから各データ語を読出す際に逐語ベースで32ビットのデータ語を
再構成し、こうして故障許容力を得る。しかしながら、この米国特許第4,72
2,085号に開示のデイスク駆動機構式メモリーシステムの制約は、その並列
デイスク駆動機構アレイアーキテクチュアが緊密結合されたデイスクアクチュエ
ータを使用していることである。この機構はデータ転送帯域幅が広いがメモリー
の、2.75GBに対する論理アクチュエータ位置が1つしかない。このことは
このデイスク駆動機構式メモリーシステムの、メモリーに対するランダムアクセ
ス性能に悪影響を及ぼすが、これはその単一論理アクチュエータを通じてしかど
のメモリーもアクセスできないからである。
また別のデイスク駆動機構アレイアーキテクチュアが1988年6月1〜3日
開催のACMSIGMOD会議議事録に収載したDavid A.Patter
son他の論文「低価格デイスクの冗長アレイについて(A Case for
Redundant Arrays of Inexepensive Di
sks (RAID)」に記載されている。このRAID論文では5種類のデイ
スクアレイ構成について論じている。第2、第3レベルのRAIDでは冗長グル
ープ内の複数デイスク駆動機構における緊密結合されたアクチュエータを用いて
、単一デイスク駆動機構へのデータ書込みよりむしろ冗長グループ内のすべての
デイスク駆動機構を横切っ
てデータ転送を広げる。この並列なデータ転送は、データ転送帯域幅を増大する
が、データの読出し/書込みのためには冗長グループ内のすべてのデイスク駆動
機構へ同期アクセスする必要がある。また第2レベルのRAIDシステムの例と
しては、上記米国特許第4,722,085号に開示のものがあり、一方第3レ
ベルのRAIDシステムの例が米国特許第4,870,643号に開示されてい
る。第4レベルのRAIDシステムでは上記の問題を回避するためにパリテイグ
ループの複数デイスク駆動機構における非緊密結合されたアクチュエータを用い
そしてパリテイグループのすべてのデイスク駆動機構を横切ってデータブロック
を分配するよりむしろ1個のデイスク駆動機構における単一セクターにデータブ
ロックを書込む。また第5レベルのRAIDシステムは、第4レベルのRAID
システムの変形であり、このシステムでは専用パリテイデイスク駆動機構を使用
するよりむしろパリテイグループ内のすべてのデイスク駆動機構を横切ってパリ
テイデータを分配する。
第4、第5レベルのRAIDシステムでの大きな難点は、パリテイグループに
データを書込む毎にそのパリテイグループのパリテイを更新しなけれなならない
ことである。単一のパリテイビットの代わりにReed−Solomonコード
用等の多数のチェックコードを使用する場合、チェクビット更新の性能インパク
トは増倍する。かかる多チェックビット形RAIDシステムの性能は低くまた既
存の大フォームファクター形DASD製品とは競合できない。既存のシステムで
は単一パリテイビットだけを維持することによって惹起する性能劣化をより小さ
くするために多数のチェックビットによって得ることのできる更なるデータ保全
性を犠牲にしている。
解決策
上記従来技術の短所を解決しかつ当該分野における技術的向上を達成するため
に、本発明では、極めて多くの小フォームファクター形デイスク駆動機構を用い
て、大フォームファクター形デイスク駆動機構のフォーマットと能力とをエミュ
レートする低価格、高性能、高信頼性のデイスク駆動機構式メモリーを実現する
並列デイスク駆動機構アレイ式データ記憶管理サブシステム用論理トラック書込
みスケジューリングシステムを提供する。本システムはデータ冗長グループにお
けるパリテイを更新しないことで従来技術のパリテイ更新の問題を回避するもの
である。パリテイを更新しない代わりに、新規あるいは変更したデータをすべて
空き論理トラックに書込みかつ旧データを廃データとしてそれらにタグ付けを行
う。旧データによって論理トラックに残される「穴」は、すでに空きにした論理
トラックに正しいデータを収集することによって空き論理トラックを生じさせる
背景空きスペース収集処理によって除去される。
上記並列デイスク駆動機構アレイ式データ記憶サブシステムにおいてはその複
数デイスク駆動機構を複数の可変サイズの冗長グループに構成し、各グループを
(N+M)個の並列接続したデイスク駆動機構で形成してその中にデータを記憶
するようにしている。論理デイスク駆動機構とも称する各冗長グループを多数の
論理シリンダーに分割し、各シリンダーにi本の論理トラクを含める。1個の物
理デイスク駆動機構の1本のスリンダーに含まれるi本の物理トラックの各々に
1本の論理トラックを割り当てて上記構成を得る。各論理トラックは冗長グルー
プの各デイスク駆動機構から1本の物理トラックが来るので(N+M)本の物理
トラックで構成する。上記(N+M)本の物理デイスク駆動機構は、論理トラッ
ク1本に物理トラックN本の単位で、1単位毎に1個のセグメントの割合でN個
のデータセグメントを記憶し、かつ冗長グループにおける論理トラック1本に物
理トラックM本の単位で、1単位毎に1個のセグメントの割合でM個の冗長セグ
メントを記憶するのに使用する。冗長グループにおけるN+M個のデイスク駆動
機構は非同期スピンドルと非緊密結合アクチュエータとを有する。デイスク駆動
機構へのデータ転送は、すべてのデイスク駆動機構が独立して動作するので、独
立した読出しおよび書込みで行われる。更に、連続した論理シリンダーに対する
M個の冗長セグメントは、専用冗長デイスク駆動機構を使用するよりむしろ冗長
グループのすべてのデイスク駆動機構を横切って分配される。この冗長セグメン
トの分配によって、冗長グループにおける各アクチュエータを使用して、デイス
ク駆動機構に記憶されているデータセグメントのいくつかにアクセスすることが
できる。冗長セグメントに対して専用駆動機構を設けた場合、それらのデイスク
駆動機構は冗長セグメントがそれらのデイスクに対して読出しまたは書込みされ
なければ非活動状態になる。しかしながら、冗長を分配すれば、冗長グループの
アクチュエータはすべてデータアクセスに利用できる。更に、R個の全体的に切
替え自在のバックアップ用デイスク駆動機構のプールをデータ記憶サブシステム
において維持して動作時に故障したいずれかの冗長グループのデイスク駆動機構
の代わりに代替デイスク駆動機構を自動的に動作投入する。このR個のバックア
ップデイスク駆動機構のプールは低コストで高い信頼性を保証するものである。
物理デイスク駆動機構は各々、動作時の故障を検出できるように構成されてお
り、その故障検出によって論理トラック毎にM個の冗長セグメントを多ビットエ
ラー補正のために使用できる。故障した物理デイスク駆動機構の同定により、論
理トラック上のエラーのビット位置に関する情報が得られ、また冗長データがエ
ラー補正用の
情報をもたらす。冗長グループの故障デイスク駆動機構が同定されるとバックア
ップのデイスク駆動機構の共用プールからのバックアップデイスク駆動機構がそ
の故障デイスク駆動機構の代わりに自動的に動作投入される。制御回路は、デー
タの残存するN−1本の物理トラックと、各論理トラックの残存セグメントを含
む対応のM本の物理トラックとを使用して、故障したデイスク駆動機構の各物理
トラックに記憶されたデータを再構成する。冗長セグメントの故障ではデータ最
構成が不要であるが冗長情報の再生を必要とする。その再構成されたデータはこ
の場合代替デイスク駆動機構に書込まれる。バックアップデイスク駆動機構を使
用すれば、M+M個の並列デイスク駆動機構からなるアーキテクチュアのシステ
ム信頼性が増大し、またバックアップデイスク駆動機構の共用プールを使用すれ
ば、より高い信頼性をもたらすコストが最小限になる。
本並列デイスク駆動機構アレイ式データ記憶サブシステムは、仮想データ記憶
装置と物理データ記憶装置との間でダイナミックにマップすることによって高い
データ記憶・検索性能をもたらすデータ記憶管理システムと含む。上記並列デイ
スク駆動機構アレイ式データ記憶サブシステムを構成するのは3つの抽象層、す
なわち仮想層、論理層および物理層である。先ず、仮想層は従来の大フォームフ
ァクター形デイスク駆動機構式メモリーとして機能する。また論理層はN+M個
の物理デイスク駆動機構を各々が含んでいる複数の冗長グループにグループ化さ
れた記憶装置のアレイとして機能する。更に、物理層の機能は複数の個別小フォ
ームファクター形デイスク駆動機構のそれである。このデータ記憶管理システム
はこれらの抽象層の間でデータをダイナミックにマップしかつ物理装置の実際の
スペースの割当てと管理とを制御する。またこれらのデータ記憶管理機能は、並
列デイスク駆動機構アレイ式データ記憶サブシステムの
動作を、このサブシステムの仮想イメージのみを認識するホストプロセッサに対
して透過的(見えるように)行われる。
このシステムの性能は、揮発部分と不揮発部分を両方もつキャッシュメモリー
と、「バックエンド」データステージングおよびデータステージング解除処理と
を用いることによって高められる。ホストプロセッサから受けたデータはデータ
記憶サブシステムの冗長グループにすでに記憶されているデータの変形としてキ
ャッシュメモリーに記憶される。冗長グループに記憶されたデータはいずれも変
形されない。仮想トラックは冗長グループからキャッシュメモリーに対しステー
ジングされる。SYするとホストプロセッサが仮想トラックにおけるデータレコ
ートのいくつか、あるいは恐らくすべてを変形する。次に、最低使用頻度のアル
ゴリズム等のキャッシュ交換アルゴリズムで決定されて、変形仮想トラックが冗
長グループへとステージング解除される。こうして選択されると、仮想トラック
は1本もしくはそれ以上の論理トラックの1本もしくはそれ以上の物理トラック
に記憶すべきいくつかの物理セクターに分割される(区分される)。完全な物理
トラックは1本もしくはそれ以上の仮想トラックからの物理セクターを含むこと
がある。各物理トラックはN−1本のその他の物理トラックと組み合わさって論
理トラックのN個のデータセグメントを形成する。
元の不変更データを廃データとしてそれらに単純にタグ付けを行う。明らかに
、データを変更すると、冗長グループは廃棄データの冗長グループをますます多
く含む。論理シリンダーにおける残存仮想トラックは背景「フリースペース収集
」処理でキャッシュメモリーへ読出される。次にこれらの仮想トラックはすでに
空きになっている論理シリンダーに書込まれ、「収集された」論理シリンダーに
は空きのタグ付けが行われる。こうして冗長データ生成、書込み、
フレースペース収集がいずれも即時解答処理よりむしろ背景において行われる。
この機構によって既存のデイスクアレイ式システムのパリテイ更新の問題が回避
されるとともに、これらのオーバヘッドタスクを背景処理へ転送することによっ
てデータ記憶サブシステムの応答時間とアクセス速度との関係が改善される。
図面の簡単な説明
図1は並列デイスク駆動機構アレイ式データ記憶サブシステムのアーキテクチ
ュアのブロック図、
図2は上記データ記憶サブシステムのクラスタ制御器のブロック図、
図3はデイスク駆動機構管理回路のブロック図、
図4はデイスク駆動機構管理回路制御回路のブロック図、
図5はデイスク駆動機構管理回路のデイスク制御電子回路のブロック図、
図6、図7はそれぞれ、データ読出し、書込み動作を行う動作段階を示すフロ
ーチャート
図8はデータ記憶サブシステムに使用する代表的なフリースペースデイレクト
リの図、
図9はフリースペース収集処理のフローチャート、である。
発明を実施するための最良の形態
本発明のデータ記憶サブシステムは単一の大フォームファクター形デイスク駆
動機構に代わって複数の小フォームファクター形デイスク駆動機構を用いて、大
フォームファクター形デイスク駆動機構のフォーマットと能力とをエミュレート
する低価格、高性能、高信頼性のデイスク駆動機構式メモリーを実現する。本シ
ステムはパリ
テイを更新しないことによって従来技術のパリテイ更新の問題を回避するもので
ある。パリテイを更新しない代わりに、新規あるいは変更したデータをすべて空
き論理トラックに書込みかつ旧データを廃データとしてそれらにタグ付けを行う
。旧データによって論理トラックに残される「穴」は、すでに空きにした論理ト
ラックに正しいデータを収集することによって空きの論理トラックを生じさせる
背景空きスペース収集処理によって除去される。
上記並列デイスク駆動機構アレイ式データ記憶サブシステムにおいてはその複
数デイスク駆動機構を複数の可変サイズの冗長グループに構成し、各グループを
(N+M)個の並列接続したデイスク駆動機構で形成してその中にデータを記憶
するようにしている。論理デイスク駆動機構とも称する各冗長グループを多数の
論理シリンダーに分割し、各シリンダーにi本の論理トラックを含める。1個の
物理デイスク駆動機構の1本のシリンダーに含まれるi本の物理トラックの各々
に1本の論理トラックを割り当てて上記構成を得る。各論理トラックは冗長グル
ープの各デイスク駆動機構から1本の物理トラックが来るので(N+M)本の物
理トラックで構成する。上記(N+M)本の物理デイスク駆動機構は、論理トラ
ック1本に物理トラックN本の単位で、1単位毎に1個のセグメントの割合でN
個のデータセグメントを記憶し、かつ冗長グループにおける論理トラック1本に
物理トラックM本の単位で、1単位毎に1個のセグメントの割合でM個の冗長セ
グメントを記憶するのに使用する。冗長グループにおけるN+M個のデイスク駆
動機構は非同期スピンドルと非緊密結合アクチュエータとを有する。デイスク駆
動機構へのデータ転送は、すべてのデイスク駆動機構が独立して動作するので、
独立した読出しおよび書込みで行われる。更に、連続した論理シリンダーに対す
るM個の冗長セグメントは、専用冗長デイスク駆動機
構を使用するよりむしろ冗長グループのすべてのデイスク駆動機構を横切って分
配される。この冗長セグメントの分配によって、冗長グループにおける各アクチ
ュエータを使用して、デイスク駆動機構に記憶されているデータセグメントのい
くつかにアクセスするできる。冗長セグメントに対して専用駆動機構を設けた場
合、それらのデイスク駆動機構は冗長セグメントがそれらのデイスクに対して読
出しまたは書込みされなければ非活動状態になる。しかしながら、冗長を分配す
れば、冗長グループのアクチュエータはすべてデータアクセスに利用できる。更
に、R個の全体的に切替え自在のバックアップデイスク駆動機構のプールをデー
タ記憶サブシステムにおいて維持して動作時に故障したいずれかの冗長グループ
のデイスク駆動機構の代わりに代替デイスク駆動機構を自動的に動作投入する。
このR個のバックアップデイスク駆動機構のプールは低コストで高い信頼性を保
証するものである。
物理デイスク駆動機構は各々、動作時の故障を検出できるように構成されてお
り、その故障検出によって論理トラック毎にM個の冗長セグメントを多ビットエ
ラー補正のために使用できる。故障した物理デイスク駆動機構の同定により、論
理トラック上のエラーのビット位置に関する情報が得られ、また冗長データがエ
ラー補正用の情報をもたらす。冗長グループの故障デイスク駆動機構が同定され
るとバックアップのデイスク駆動機構の共用プールからのバックアップデイスク
駆動機構がその故障デイスク駆動機構の代わりに自動的に動作投入される。制御
回路は、データの残存するN−1本の物理トラックと、各論理トラックの残存セ
グメントを含む対応のM本の物理トラックとを使用して、故障したデイスク駆動
機構の各物理トラックに記憶されたデータを再構成する。冗長セグメントの故障
ではデータ最構成が不要であるが冗長情報の再生を必要とする。そ
の再構成されたデータはこの場合代替デイスク駆動機構に書込まれる。バックア
ップデイスク駆動機構を使用すれば、N+M個の並列デイスク駆動機構からなる
アーキテクチュアのシステム信頼性が増大し、またバックアップデイスク駆動機
構の共用プールを使用すれば、より高い信頼性をもたらすコストが最小限になる
。
本並列デイスク駆動機構アレイ式データ記憶サブシステムは、仮想データ記憶
装置と物理データ記憶装置との間でダイナミックにマップすることによって向上
したデータ記憶・検索性能をもたらすデータ記憶管理システムと含む。上記並列
デイスク駆動機構アレイ式データ記憶サブシステムを構成するのは3つの抽象層
、すなわち仮想層、論理層および物理層である。先ず、仮想層は従来の大フォー
ムファクター形デイスク駆動機構式メモリーとして機能する。また論理層はN+
M個の物理デイスク駆動機構を各々が含んでいる複数の冗長グループにグループ
化された記憶装置のアレイとして機能する。更に、物理層の機能は複数の個別小
フォームファクター形デイスク駆動機構のそれである。このデータ記憶管理シス
テムはこれらの抽象層の間でデータをダイナミックにマップしかつ物理装置の実
際のスペースの割当てと管理とを制御する。またこれらのデータ記憶管理機能は
、並列デイスク駆動機構アレイ式データ記憶サブシステムの動作を、このサブシ
ステムの仮想イメージのみを認識するホストプロセッサに対して透過的(見える
ように)に行われる。
このシステムの性能は、揮発部分と不揮発部分を両方もつキャッシュメモリー
と、「バックエンド」データステージングおよびデータステージング解除処理と
を用いることによって高められる。ホストプロセッサから受けたデータはデータ
記憶サブシステムの冗長グループにすでに記憶されているデータの変形としてキ
ャッシュメモリーに記憶される。冗長グループに記憶されたデータはいずれも変
形されない。仮想トラックは冗長グループからキャッシュメモリーへとステージ
ングされる。するとホストプロセッサが仮想トラックにおけるデータレコートの
いくつか、あるいは恐らくすべてを変形する。次に、最低使用頻度のアルゴリズ
ム等のキャッシュ交換アルゴリズムで決定されて、変形仮想トラックが冗長グル
ープに対しステージング解除される。こうして選択されると、仮想トラックは1
本もしくはそれ以上の論理トラックの1本もしくはそれ以上の物理トラックに記
憶すべきいくつかの物理セクターに分割される(区分される)。完全な物理トラ
ックは1本もしくはそれ以上の仮想トラックからの物理セクターを含むことがあ
る。各物理トラックはN−1本のその他の物理トラックと組み合わさって論理ト
ラックのN個のデータセグメントを形成する。
元の不変更データを廃データとしてそれらに単純にタグ付けを行う。明らかに
、データを変更すると、冗長グループは廃棄データの冗長グループをますます多
く含む。論理シリンダーにおける残存仮想トラックは背景「フリースペース収集
」処理でキャッシュメモリーへ読出される。次にこれらの仮想トラックはすでに
空きになっている論理シリンダーに書込まれ、「収集された」論理シリンダーに
は空きのタグ付けが行われる。こうして冗長データ生成、書込み、フリースペー
ス収集がいずれも即時解答処理よりむしろ背景において行われる。この機構によ
って既存のデイスクアレイ式システムのパリテイ更新の問題が回避されるととも
に、これらのオーバヘッドタスクを背景処理へ転送することによってデータ記憶
サブシステムの応答時間とアクセス速度との関係が改善される。
データ記憶サブシステムのアーキテクチュア
図1は本並列デイスク駆動機構アレイ式データ記憶サブシステム100のアー
キテクチュアのブロック図である。このデータ記憶サ
ブシステム100は対応のホストプロセッサ11、12には、それらの対応記憶
制御器付き大フォームファクター形デイスク駆動機構の集合のように認識される
が、これはこのデータ記憶サブシステム100のアーキテクチュアがその対応ホ
ストプロセッサ11、12に対して透過的であるためである。本データ記憶サブ
システム100は複数のデイスク駆動機構サブセット103−1〜103−iに
設けた複数のデイスク駆動機構(例えば、122−1〜125−r)を含む。こ
れらのデイスク駆動機構122−1〜125−rは、冗長情報を記憶するための
デイスク駆動機構を設けかつバックアップのデイスク駆動機構を設けても、対応
のバックアップデイスク駆動機構を備える代表的な14インチフォームファクタ
ー形デイスク駆動機構に比べ非常に低価格である。これらの複数デイスク駆動機
構122−1〜125−rは代表的には、5−1/4インチフォームファクター
形の工業規格品ハードデイスク駆動機構である。
図1に示すアーキテクチュアは、ホストプロセッサ11、12に対応するバッ
クエンドデータ記憶容量をもたらすデータ記憶サブシステム100に、対応の複
数データチャンネル21、22〜31、32を介して相互接続されたそれらの複
数ホストプロセッサ11、12のアーキテクチュアである。この基本的構成はデ
ータ処理の技術分野では公知のものである。このデータ記憶サブシステム100
はデイスク駆動機構103−1〜103−iからなるサブセットとそれらの対応
の駆動機構管理回路102−1〜102−iとを、データ記憶サブシステム10
0を複数のホストプロセッサ11、12と相互接続させるデータチャンネル21
−22、31−32と相互接続させる制御装置101を含む。
上記制御装置101は代表的には、冗長用クラスタ制御器2を2個111、1
12を含む。そのうちクラスタ制御器111において
は、多経路記憶デイレクター110−0が制御装置101に含まれるクラスタ制
御器111にデータチャンネル21、31を相互接続させるハードウエアインタ
フェースとなっている。この点で、上記多経路記憶デイレクター110−0は対
応のデータチャンネル21、31へのハードウエアインタフェースとなり、また
いずれかのホストプロセッサ、例えばホストプロセッサ11からの付属データチ
ャンネル、例えば21、を制御装置101内の選択されたクラスタ制御器111
へ相互接続させる多重機能をもつ。クラスタ制御器111そのものは、複数の光
ファイバーバッックエンドチャンネル104に対するインタフェースとして機能
する1対の記憶経路201−0、201−1をもつ。更に、クラスタ制御器11
1はデータ圧縮機能とともに、選択したデータチャンネル21とキャシュメモリ
ー113との間、またそのキャッシュメモリー113と、接続された光ファイバ
ーバックエンドチャンネル104との間のデータ転送をクラスタ制御器111に
指令させるデータ経路指定機能をもつ。制御装置101は主要なデータ記憶サブ
システム機能、例えば、データ冗長グループの生成と調整、故障デイスク駆動機
構に対するデータの再構成、故障デイスク駆動機構の代わりの予備デイスク駆動
機能の動作投入、データ冗長の発生、論理駆動機構スペースの管理、仮想駆動機
構〜論理駆動機構のマッピング等の機能をもつ。これらのサブシステム機能につ
いて以下に詳述する。
デイスク駆動機構管理回路102−1はデイスク駆動機構サブセット103−
1に含まれる複数の工業規格品デイスク駆動機構122−1〜125−rを複数
の光ファイバーバックエンドチャンネル104と相互接続させる。このデイスク
駆動機構102−1は制御・駆動回路121に対するデータ経路126と光ファ
イバーバックエンドチャンネル104を相互接続させるハードウエアインタフェ
ースとなる入/出力回路120を含む。制御・駆動回路121は上記入/出力回
路120から線路126上のデータを受け、デイスク駆動機構サブセット103
−1内の対応工業規格品デイスク駆動機構による要求に応じて上記受信信号のフ
ォームとフォーマットとを変換するものである。更に、この制御・駆動回路12
1はデイスク駆動機構サブセット103−1と制御装置101との間で信号を転
送するための制御信号インタフェースとなる。
デイスク駆動機構サブセット103−1のデイスク駆動機構へ書込まれるデー
タは対応のホストプロセッサ11からデータチャンネル21経由で制御装置10
1のクラスタ制御器111、112へ送られるデータからなる。このデータは例
えば、キャッシュメモリー113のデータを記憶するクラスタ制御器111へ書
込まれる。このクラスタ制御器111はキャシュメモリー113のデータのN本
の物理トラックを記憶し、次にエラー補正用のM個の冗長セグメントを発生する
。またクラスタ制御器111がこの時、受信データを記憶する冗長グループを形
成するためのデイスク駆動機構サブセット(122−1〜122−n+m)を選
択する。クラスタ制御器111はまた、選択された冗長グループにおける、N+
M本の物理トラックからなる空きの論理トラックを選択する。データのN本の物
理トラックは各々、選択されたデータ冗長グループにおけるN個のデイスク駆動
機構の1つに書込まれる。更なるM個のデイスク駆動機構は冗長グループにおい
て、M個の冗長セグメントを記憶するのに用いられる。これらM個の冗長セグメ
ントは、N個のデイスク駆動機構に記憶されたN本の物理トラックの保全性を検
査しかつデータのN本の物理トラックのうち1本もしくはそれ以上を、それらの
物理トラックが、それを記憶しているデイスク駆動機構の故障により失われた場
合にそれらトラックを再構成するの使用できるエラー
補正文字やデータを含む。
このように、データ記憶サブシステム100は複数のより小さいフォームファ
クターのデイスク駆動機構を用いて1個もしくはそれ以上の大フォームファクタ
ー形デイスク駆動機構(例えば、IBM3380Kタイプのデイスク駆動機構)
をエミュレートする一方で、複数の小フォームファクター形デイスク駆動機構を
横切ってデータを書き込むことによって高い信頼性を得ることができるものであ
る。信頼性の向上はまた、故障したデイスク駆動機構に代わって相互接続可能な
R個のバックアップデイスク駆動機構(125−1〜125r)のプールを設け
ることによっても可能である。データの再構成はM個の冗長セグメントを使用し
て行われるので、冗長セグメントに記憶された冗長情報に組み合わさった残存機
能(論理)デイスク駆動機構に記憶されたデータを制御装置101内の制御ソフ
トウエアによって用いられて、冗長グループ内の複数デイスク駆動機構(122
−1〜122−n+m)の1つもしくはそれ以上が故障した時に失われたデータ
を再構成することができる。この機構により、デイスクシャドウ機構によって得
られる信頼性と同様な信頼性をかかる機構全体にわたって著しく低いコストで得
ることができる。
デイスク駆動機構
デイスク駆動機構サブセット103−1におけるデイスク駆動機構122−1
〜125−rはその各々を、1個のデイスク駆動機構とその周辺の制御・インタ
フェース回路とからなるデイスクサブシステムと見做すことができる。デイスク
駆動機構は、代表的にはパーソナルコンピュータ(パソコン)に使用されている
種類の工業規格品デイスク駆動機構からなる。そのデイスク駆動機構に組み合わ
さった制御用プロセッサはデイスク駆動機構全体を制御する役割をもちかつ、各
デイスク駆動機構122−1〜125−rを制御・駆
動回路121に接続する各種直列データチャンネルで送られるすべての情報を監
視する。それらのチャンネルを通じてデイスク駆動機構へ送られたデータは対応
の直列/並列変換回路へ対応の直列データチャンネルを介して接続された対応の
インタフェースバッファーに記憶される。工業規格品デイスク駆動機構の必要と
する電気インタフェースを低レベルのものとするために、各デイスク駆動機構に
は更にデイスク制御器も設けられている。上記工業規格品デイスク駆動機構はE
SDIインタフェースを有し、このインタフェースを上記制御・駆動回路121
に接続させねばならない。デイスク制御器はこの機能をもたらすものである。デ
イスク制御器はデータの直列化と直列化解除、CRC/ECCの発生と検査と補
正、およびNRZデータ符合化を行う。ヘッド選択信号、その他の種類の制御信
号等のアドレス指定情報が上記制御・駆動回路121によって工業規格品デイス
ク駆動機構122−1へ与えられる。この通信経路は診断と制御のためにも設け
られている。例えば、制御・駆動回路121はデイスク駆動機構が待機状態にな
ると工業規格品デイスク駆動機構に給電することができる。こうして、工業規格
品デイスク駆動機構が、制御・駆動回路121によって選択されるまでアイドル
状態にとどまる。
制御装置
図2はクラスタ制御器111を詳細に示すブロック図である。多経路記憶デイ
レクター110は複数のチャンネルインタフエース201−0〜201−7を含
み、その各々が対応対のデータチャンネル21、31を成端している。対応のチ
ャンネルインタフェース装置201−0が受けた制御信号、データ信号はそれぞ
れ、対応の制御バス、データバス206−C、206−Dまたは207−C、2
07−Dのいずれかを通じて記憶経路200−0または記憶経路2
00−1のいずれかへ出力される。したがって、図2に示すクラスタ制御器11
1の構造から理解されるように、その制御器は著しく対称的になっている。記憶
経路200−0は記憶経路200−1と同一であるので、それらの片方のみを以
下に説明する。多経路記憶デイレクター110は2セットのデータバス、制御バ
ス206−Dと206−C、207−Dと207−Cをもちいて各チャンネルイ
ンタフェース201−1〜201−7を両記憶経路200−0、200−1に相
互接続させて、対応ホストプロセッサ11からの対応データチャンネル21をど
ちらかの記憶経路200−0または200−1を経て複数の光ファイバーバック
エンドチャンネル104へ切替えることができるようにしている。記憶経路20
0−0内には記憶経路200−0の動作を調整するプロセッサ204−0が含ま
れている。更には、光ファイバーバックエンドチャンネル104の光ファイバー
信号フォーマットと、記憶経路200−0に含まれる金属導体との間の変換を行
うために光学装置インタフェース205−0が設けられる。チャンネルインタフ
ェース制御器202−2はプロセッサ204−0の制御下で動作してキャッシュ
メモリー113に対するデータの流れと、チャンネルインタフェースのうち、現
時点で記憶経路200−0と対話しているものとを制御する。チャンネルインタ
フェース制御器202−0は受けたデータに対してCRCバイトを発生、検査す
る巡回冗長検査(CRC)発生器/チェッカーを含む。またこのチャンネルイン
タフェース制御回路202−0は更に、データチャンネル21のデータ送信速度
とキャッシュメモリー113のデータ転送容量との速度ミスマッチを補償するバ
ッファーを含んでいる。対応のチャンネルインタフェース回路201からチャン
ネルインタフェース制御回路202−0が受けたデータはチャンネルデータ圧縮
回路203−0経由でキャッシュメモリ
ー113へ送られる。そのチャンネルデータ圧縮回路203−0はホストプロセ
ッサ11からのデータ書込み時に制御装置101に対してチャンネルデータを圧
縮するのに必要なハードウエアとマイクロコードとを提供するものである。また
同回路203−0はホストプロセッサ11によるデータ読出し動作時に制御装置
101に対して必要な圧縮解除も行う。
図2に示すアーキテクチュアから理解されるように、デイスク駆動機構サブセ
ット103におけるホストプロセッサ11と冗長グループとの間のデータ転送は
すべてキャッシュメモリー113を経由して行われる。またキャッシュメモリー
113の制御は制御装置101内でプロセッサ204−0によって行われる。そ
のプロセッサ204−0のもたらす機能としては、キャッシュデイレクトリーそ
の他のキャッシュデータ構造の初期化、キャッシュデイレクトリーのサーチと管
理、キャッシュスペースの管理、キャッシュ性能向上アルゴリズムおよびその他
のキャッシュ制御機能である。加えて、プロセッサ204−0はデイスク駆動機
構サブセット103のデイスク駆動機構から冗長グループを生成し、それらのデ
イスク駆動機構の状態のレコードを維持する。またプロセッサ204−0はキャ
ッシュメモリー113内に、冗長グループにおけるN個のデータデイスクを横切
って冗長データを発生させ、M個のセグメントのその冗長データを冗長グループ
のMこの冗長デイスクに書込むことも行う。プロセッサ204−0における機能
ソフトウエアはまた仮想デイスク駆動機構から論理デイスク駆動機構へ、また論
理デイスク駆動機構から物理デイスク駆動機構へのマッピングを管理する。この
マッピングを示すテーブルはプロセッサ204−0の上記機能ソフトウエアによ
って更新、維持、バックアップ、また場合によっては回復される。プロセッサ2
04−0はまた、光ファイバーバッック
エンドチャンネル104の管理、スケジューリングとともにフリースペース収集
機能ももつ。これらの機能の多くはデータ処理の分野においては公知であり、そ
の故にこのでは詳述しない。
デイスク駆動機構管理回路
図3はデイスク駆動機構管理回路102−1の詳細ブロック図である。図にお
いて、入力/出力回路120が複数の光ファイバーチャンネル104を、その入
力/出力回路120を制御・駆動回路121を相互接続させる多数のデータバス
、制御バスに接続させている。上記制御・駆動回路121は制御装置101への
状態・コマンドインタフェースを監視、制御するコマンド・状態回路301から
なる。上記コマンド・状態回路301はまたデイスク駆動機構管理回路102に
おける他の回路やデイスク駆動機構サブセットにおける各種デイスク駆動機構か
らデータを収集して制御装置101へ送る。制御・駆動回路121は更に、デイ
スク駆動機構サブセット103−1に使用されている工業規格品デイスク駆動機
構の各々に1個という割合で複数の駆動電子回路303を含む。上記駆動電子回
路303はESDIインタフェース経由での対応工業規格品駆動機構に対するデ
ータ転送を制御する。また駆動電子回路303は直列チャンネルを通じてフレー
ムを送受することができ、また構成素子としてマイクロコントローラ、トラック
バッファー、状態・制御レジスター、工業規格品駆動インタフェースを含む。駆
動電子回路303は対応のデータバス304経由で入力/出力回路120からデ
ータを、また制御リード305経由で制御信号を、それぞれ受ける。上記制御・
駆動回路121はまた、複数のサブシステム回路302−1〜302−jも含み
、それら回路は各々複数の駆動電子回路303を制御するものである。上記サブ
システム回路302は各駆動電子回路に対して要求、エラー、スピンアップ線路
を制御する。代
表的には、サブシステム回路302は32個の駆動電子回路303とインタフェ
ースする。またサブシステム回路302は環境センス情報を収集してコマンド・
状態回路301経由で制御装置101へ送る。こうしてデイスク駆動機構管理回
路102−1における制御・駆動回路121はデイスク駆動機構サブセットおよ
び制御装置101における工業規格品デイスク駆動機構どうしの間におけるデー
タ、制御信号インタフェース・送信機能をもつ。
コマンド・状態回路
コマンド・状態回路301は図4に更に詳細に示す。この回路は以下の3つの
機能をもつ。すなわち、各種サブシステム回路302からの状態収集機能、制御
装置101への状態報告機能、およびデイスク駆動機構管理回路102−1の診
断機能である。上記コマンド・状態回路301はプロセッサ402とその対応ク
ロック403とによる制御を受ける。また上記プロセッサ402はポート404
、405をそれぞれ経由してアドレス、データバスと通信する。プロセッサと、
コマンド・状態回路301におけるバスおよびその他の回路との間の通信は、ア
ービターとして作用してコマンド・状態回路301の内部バスへのアクセスを調
整する双方向ポート407によって制御される。同様に、データ・アドレス仲裁
論理回路410、412はコマンド・状態回路301の内部データバスへのイン
タフェース回路401のアクセスを調整する。例えば、入力/出力回路120か
ら受けたデータはインタフェース回路401によって受けられ、このインタフェ
ース回路401は自体とデータ・アドレス仲裁論理回路410、412との間に
接続されたアドレスバス、データバスを経由してメモリー内411の上記データ
を記憶する。これらの仲裁論理回路はコマンド・状態回路301およびインタフ
ェース回路401の内部データバスからのメモリー411へのアクセス
を調整する。同様に、プロセッサ402はコマンド・状態回路301の内部デー
タバスと対応のデータ・アドレス仲裁論理回路410、412とを経由してメモ
リー411に記憶されたデータにアクセスできる。プロセッサ401によって検
索されたこのデータは次にアドレスバス、データバスを経由して出力して、アド
レスポート、データポート404、405をそれぞれ経由してサブシステム回路
302へ送ることができる。
上記コマンド・状態回路301は割込み処理回路408含む。リセットを除く
、デイスク駆動機構管理回路102−1におけるすべての割込みは割込み処理回
路408を通じて送られる。また割込み処理回路408は特定クラスのすべての
割込みを収集し、それらの割込みはプロセッサ402における割込みソフトウエ
アによって読出される。また割込みソフトウエアハ割込み処理回路408におけ
るメモリーマップされたスペースを読み出して、生じた割込みの内容を示すビッ
トパターンを判定する。
駆動電子回路
駆動電子回路303は入力/出力回路120とデイスク駆動機構122−1等
の工業規格品デイスク駆動機構とを相互接続させる直列データリンク304どう
しの間のインタフェースとして機能する。図5は駆動電子回路303を更に詳細
に示す。上記直列データリンク304はマルチプレクサ501、502をそれぞ
れ介して駆動電子回路303の内部回路に結合されている8本の出データリンク
と8本の入りデータリンクとからなる。
受信回路503は出データリンクを監視し、入力/出力回路120から受けた
情報を、フレーム指示解除回路505によって使用すべく並列フォーマットに変
換する。このフレーム指示解除回路505は受けたフレームにおける指定アドレ
スフィールドが駆動電子回
路のプレプログラム化選択アドレスと相関関係を有するか否かを検査するもので
ある。それらアドレスが同じであれば、上記フレーム指示解除回路505は、送
りつつある情報がデータであるかコマンドであるかを判定し、2つのDMAポイ
ンターのうち片方をデータ記憶に、またもう一方をコマンド記憶に使用してその
情報をトラックバッファー507に記憶する。そのトラックバッファー507は
対応の工業規格品デイスク駆動機構122−1へ送る1物理トラック全体の情報
を記憶することができる。上記フレーム指示解除回路505は1物理トラックの
情報の転送は完了すると割込みを発生する。フレーム指定解除回路505の発生
させた割込みはプロセッサ513へ送られ、このプロセッサ505がトラックバ
ッファー507に記憶されているコマンドあるいはデータを解釈し、相応に動作
する。プロセッサ513は、そのコマンドがデータ転送コマンドであると判定す
ると、制御レジスタ512をデータ転送のために初期化する。またプロセッサ5
13はESDI制御回路509を作動させ、するとこの回路は対応の工業規格品
デイスク駆動機構122−1と、駆動電子回路303−1の内部回路との間の物
理インタフェースとなる。プロセッサ513は更にデイスクデータ制御回路50
8も作動させ、この回路508は工業規格品デイスク駆動機構をマイクロプロセ
ッサで制御されたシステムと相互接続させる。デイスクデータ制御回路508は
トラックバッファー507からESDI制御回路507へのデータ転送を行うも
のである。したがって、データ経路はトラックバッファー507からデイスク制
御回路508を経て工業規格品デイスク駆動機構122−1に到っている。ES
DI制御回路509は駆動電子回路303−1とデイスク駆動機構122−1と
の間の電気インタフェースとなるだけのものである。
デイスク駆動機構122−1から入力/出力回路120へのデー
タ転送も同様に行われる。データはESDI制御回路509を通じてデイスク駆
動機構122−1のデータをアドレス指定することによって制御装置101から
読出したデータに対する要求に応答してプロセッサ513によって読出される。
デイスク駆動機構122−1から読み出されたデータはESDい制御回路509
とデイスク駆動機構制御回路508とを経由してトラックバッファー507へ送
られ、このバッファー5−7においてそのデータは、そのバッファーに1物理ト
ラック全体のデータあるいはその有意部分が記憶されるまで記憶されたままとな
る。フレーム指定回路506がトラックバッファー507から物理トラックを検
索し、その物理トラックをフォーマットするとともにフレーム指定し、かつそれ
を送信回路504へ送る。上記送信回路504はマルチプレクサ502経由で8
本の入りデータリンクを通じて入力/出力回路120へフレームを順次送る。
デイスク駆動機構の誤動作
制御装置101はそれがアドレス指定しつつある冗長グループ内の個々のデイ
スク駆動機構が誤動作したか否かを判定する。また不良デイスク駆動機構を検出
した制御装置101は対応の制御信号リード上をデイスク駆動機構管理回路10
2−1へ制御メッセージを送ってデイスク駆動機構が誤動作したことを示す。予
備のデイスク駆動機構の必要を制御装置101が検出すると、その故障したデイ
スク駆動機構が使用から外され、予備デイスク駆動機構125−1が、制御装置
101の要求に応じてR個のデイスク駆動機構(125−1〜125−r)の予
備プールから動作投入される。これは、不良デイスク駆動機構を含んでいた冗長
グループの構成定義を再書込みすることによって行われる。冗長グループ内の新
しく選択されたデイスク駆動機構125−1がクラスタ制御器111、112両
者に送られた制御信号によって同定される。これによって、クラスタ制御器11
1、112の各々に記憶されたシステムマッピング情報が確実に更新された状態
に保持される。
冗長グループ(122−1〜122−n+m)に新しいデイスク駆動機構(1
25−1)が追加されると、その追加デイスク駆動機構は検査され、その動作に
異常のないことが判明すると、システムマッピングテーブルの故障デイスク駆動
機構に代わる。予備デイスク駆動機構(125−1)を要求した制御装置101
は残るN−1個の正常なデータデイスク駆動機構と、M個の冗長デイスク駆動機
構から得られる冗長情報とを用いてその新しいデイスク駆動機構(125−1)
に対するデータを再構成する。そのデイスクで再構成が完了する前は、ホストプ
ロセッサ11、12はデータをまだ得ることができるが、単一デイスクからそれ
を読出すよりむしろそのデータをオンラインで再構成しなければならない。この
データ再構成動作が完了すると、再構成されたセグメントが交換デイスク駆動機
構(125−1)に書込まれ、冗長グループが再びフルに利用できるようになる
。
データ記憶サブシステム100のこのダイナミックに再構成できる属性によっ
て、そのシステムが極めて頑強にすることができる。更には、クラスタ制御器1
11、112とデイスク駆動機構(122−1)との間の通信路をダイナミック
に構成することができるので、アーキテクチュアを極めて柔軟性のあるものにす
ることができる、同じ物理デイスク駆動機構サブセット(103−1によれば、
ユーザーはデータ記憶容量の大きいまた周期的な修理間隔がより短くてよいデイ
スク駆動機構式メモリーを得ることができ、あるいは、各冗長グループに含まれ
る有効デイスク駆動機構の個数を変えれば、そのデータ記憶容量が上記よりも低
くまた修理間隔もより長いデイ
スク駆動機構を得ることもできる。更には、デイスク駆動機構は、システムに接
続した時に新しい予備デイスク駆動機構123を検出し、それによって、記憶ま
たは信頼性の要求の変化につれて、デイスク駆動機構式メモリー制御ソフトウエ
アを再プログラム化することなく、デイスク駆動機構を成長させることができる
。
仮想デイスク駆動機構から論理デイスク駆動機構へのダイナミックマッピング
データ転送動作について言えば、すべてのデータ転送はキャッシュメモリー1
13を通じて行われる。したがって、フロントエンドまたはチャンネル転送動作
はバックエンドまたはデイスク駆動機構転送動作から完全に独立している。この
システムにおけるステージング動作はその他のキャッシュされたデイスクサブシ
ステムにおけるステージングと同様であるがステージング解除転送は、バルク転
送のためにグループで収集される。更に、このデータ記憶サブシステム100は
フリースペース収集、マッピングテーブルバックアップ、エラー回復を背景処理
として同時を行う。フロントエンドとバックエンドが完全に分離しているので、
データ記憶サブシステム100が前のカウントキイデータデイスクサブシステム
の厳しいプロセッサタイミング依存性がない。このサブシステムはしたがって更
に知能的なスケジューリングおよびデータ転送制御によって性能を向上させるの
にその処理資源を自由に供することができる。
上記並列デイスク駆動機構アレイ式データ記憶サブシステム100は3つの抽
象層、すなわち、仮想層、論理層および物理層で構成されている。仮想層は従来
の大フォームファクター形デイスク駆動機構式メモリーとして機能する。また論
理層は複数の冗長グルーブ(例えば、122−1、122−n+m)にグループ
化された記憶装置アレイとして機能し、各冗長グループは各論理トラックに対し
N本の物理トラックのデータとM本の物理トラックの冗長情報を記憶するための
N+M個のデイスク駆動機構を含んでいる。物理層は複数の個別小フォームファ
クター形デイスク駆動機構として機能する。データ記憶サブシステムは上記抽象
層どうしの間でデータをマッピングするとともに物理デバイスにおける実際のス
ペースの割り付けと管理とを制御するものである。これらのデータ記憶管理機能
は、並列デイスク駆動機構アレイ式データ記憶サブシステム100の動作をホス
トプロセッサ(11、12)に対して透過的になるように行われる。
冗長グループはN+M個のデイスク駆動機構で構成される。この冗長グループ
は論理ボリユームまたは論理デイスク駆動機構(論理素子)とも称される。各論
理デイスク駆動機構においては、複数の論理トラックがあり、その各々が、同一
物理トラックアドレスをもつ冗長グループ内のすべての物理トラックのセットで
ある。それらの論理トラックはまた論理シリンダーに組織化され、その各々が、
共通論理アクチュエーターでアクセスできる冗長グループ内のすベての論理トラ
ックの集合である。並列デイスク駆動機構アレイ式データ記憶サブシステム10
0はホストプロセッサには大フォームファクター形デイスク駆動機構の集合であ
るように見え、その各々が仮想トラックと称される、所定サイズの所定本数のト
ラックを含んでいる。したがって、ホストプロセッサ11がデータチャンネル2
1経由でデータ記憶サブシステム100へ送る場合、そのデータは仮想トラック
の個別レコードの形で送られる。並列デイスク駆動機構アレイ式データ記憶サブ
システム100の動作をホストプロセッサ11に対して透過的にするには、受け
たデータがそのデータ記憶サブシステム100でエミュレートされる大フォーム
ファクター形デイスク駆動機構におけるトラックの容量を反映する仮想トラック
インスタンスの形で実際の物理デイスク駆動機構(122−1〜122−n+m
)に記憶される。仮想トラックインスタンスが1つの物理トラックから次の物理
トラックへとはみ出すおそれがあるが、仮想トラックインスタンスは1つの論理
シリンダーから別の論理シリンダーへはみ出すことができない。これはメモリー
スペースの管理を簡素化するために行われる。
仮想トラックがホストプロセッサ11によって変更されると、その仮想トラッ
クの更新インスタンスはデータ記憶サブシステム100内のその元位置には再書
込みされず、新しい論理シリンダーへ書込まれかつその仮想トラックの先行イン
スタンスが廃インスタンスとしてマークされる。したがって、時間の経過ととも
に、論理シリンダーはフリースペースとして既知の廃データの「穴」を施される
。全体的にフリーの論理シリンダーを生成する場合、依然として有効でありかつ
論理シリンダーにおいて、断片化されたフリースペースどうしの間に位置する仮
想トラックをデータ記憶サブシステム100内でその位置を変える。またデータ
転送活動を均等に分布させるには、各仮想デイスク駆動機構のトラックをデータ
記憶サブシステム100における論理デイスク駆動機構どうしの間でできるだけ
均等に分布させる。更には、必要であれば、整数個の物理デイスク駆動機構(物
理素子)セクターに合わせるために仮想トラックインスタンスを水増しする。こ
れによって各仮想トラックインスタンスが確実に物理デイスク駆動機構のセクタ
ー境界で開始する。
マッピングテーブル
データ記憶サブシステム内ではすべてのデータの位置を正確に記録する必要が
あるが、これはホストプロセッサ11、12から受けたデータが仮想スペースに
おけるそのアドレスから、サブシステムにおける物理場所へとダイナミックにマ
ップされるからである。ま
たデータ記憶サブシステム100における各仮想トラックの現時点のインスタン
スの位置を呼戻すために仮想トラックデイレクトリが維持される。この仮想トラ
ックデイレクトリは対応ホストプロセッサ11がアドレス指定できる各仮想トラ
ックに対するエントリからなる。このエントリは仮想トラックインスタンスがそ
こから開始する論理セクターアドレスを含む。また仮想トラックデイレクトリは
仮想トラックインスタンスをセクター単位で示すデータも含む。仮想トラックデ
イレクトリはデイスク駆動機構に新しい仮想トラックインスタンスが書込まれる
毎に更新される。
記憶制御器はフリースペースデイレクトリ(図8)も含むが、これは論理デイ
スク駆動機構によって順序付けされた、データ記憶サブシステム100内の全論
理シリンダーのリストである。各論理デイスク駆動機構は論理デイスク駆動機構
用フリースペースリストと称されるリストに登録されており、各リストエントリ
は論理シリンダーをもち、かつその論理シリンダーが現在含むフリースペースの
量を示す。このフリースペースデイレクトリは各論理シリンダーに対する位置的
エントリを含む。また各エントリはその論理デイスク駆動機構に対する二重リン
クされたフリースペースリストの前方、後方ポインターの両方と、論理シリンダ
ーに含まれるフリーセクターの個数とを含む。上記ポインターは各々、その論理
デイスク駆動機構のフリースペースリストにおける別のエントリを示すかゼロで
あるかのいずれかである。フリースペースの収集は、データ記憶サブシステム1
00において行われる背景処理である。またこのフリースペース収集処理では論
理シリンダーデイレクトリが利用されるが、このデイレクトリはその論理シリン
ダーの内容を示す各論理シリンダーの第1セクターに含まれるリストである。そ
の論理シリンダーデイレクトリは論理シリンダー内に含まれる各仮想トラックイ
ンスタンスに対するエントリを含む。各仮想トラックインスタンスのエントリは
仮想トラックインスタンスの識別子と、仮想トラックインスタンスが開始する論
理シリンダー内の相対セクターの識別子とを含む。このデイレクトリと仮想トラ
ックデイレクトリとから、フリースペース収集処理で、その論理シリンダーにお
いて現在有効であって従って新しいデータを書込むために論理シリンダーを利用
できるようにするため別の場所に移さなければならない仮想トラックインスタン
スが何々であるかを判定することができる。
データ移動/複写動作
データファイル移動/複写動作によれば、仮想トラックデイレクトリにおける
基準ポインターの元のセットと同じ物理記憶場所と指示する新しいセットのポイ
ンターを発生させるだけで、選ばれたデータファイルの第2インスタンスを瞬時
に移動もしくは生成することができる。このように、同一物理メモリースペース
を指示する新しいセットのポインターを発生させるだけで、データファイルを移
動/複写することができる。
本装置はデータファイルをキャッシュメモリー113へダウンロードしてその
データファイルを新しい物理記憶場所に書込むために時間を失うことなく瞬時的
にオリジナルデータファイルを移動するものである。プログラムで、別の仮想ア
ドレスにあるデータファイルに簡単にアクセスするためには、上記機構を用いれ
ば大いなる時間的長所が得られる。オリジナルデータレコードの物理コピーは後
で、必要に応じて背景処理として第2記憶場所へ書込むことができる。あるいは
、プログラムのうち、データファイルにアクセスできるものが方法の如何を問わ
ずデータの書込みあるいはそのデータファイルの変更を行えるものであれば、オ
リジナルデータファイルの一部の変更したコピーが新しい物理記憶場所へ書込ま
れ、また対応
のアドレスポインターが、データファイルのその再書込みされた部分の新しい場
所を反映すべく変えられる。
このように、新しいセットのメモリーポインターを簡単に作成することによっ
てデータファイルを瞬時に移動/複写することができ、またデータファイルの実
際の物理複写を背景処理としてあるいは、データファイルの各仮想トラックを、
プログラムのうち、そのデータファイルにアクセスできるものによって変更した
場合に必要に応じて漸次に行うことができる。
仮想トラックデイレクトリソースとターゲットフラッグ
仮想トラックデイレクトリ(VTD)の各エントリは複写/移動機能に対応し
た2つのフラッグを含む。すなわち、「ソース」フラグはその仮想トラックアド
レスにおける仮想トラックインスタンスが複写または移動の起点であった場合に
常に立てられる。上記エントリによって指示された仮想トラックインスタンスは
必ずしもソースではなく、仮想トラックインスタンスはその仮想アドレスを含む
。ソースフラッグが立てられていれば、その仮想アドレスの複写テーブルに少な
くとも1つのエントリがある。「ターゲット」フラッグが立てられるのは仮想ト
ラックインスタンスに、複写先または移動先であったデータが含まれる時である
。ターゲットフラッグが立てられた場合、ポインター指示された仮想トラックイ
ンスタンスにおける仮想トラックはVTDエントリの仮想アドレスではない。
複写テーブル
複写テーブルのフォーマットをここではグラフィックで示す。好適な実施は、
各論理デイスク駆動機構に対する別々の複写テーブルを用いて、各論理デイスク
駆動機構に複写テーブルの始端と末端とが対応するようにすることである。しか
しながら、テーブルはサブシステム全体の単一テーブルと全く同じほど容易に実
施できる。ま
たテーブルの順序付けはソースが論理アドレスの昇順で行われる。
テーブルは各ソースがターゲットのリンクされたリストの始端であるソースの
単一リンクされたリストである。ソースエントリは下記を含む。
論理アドレス(VTDエントリ複写)
仮想アドレス
次ソースポインター(リスト内の最終ソースの場合NULL)
ターゲットポインター
またターゲットエントリは下記を含む。
仮想アドレス
次ターゲットポインター(リスト内最終ターゲットの場合はNULL)
カウントフィールド更新フラッグ
マッピングテーブル故障対応ソフトウエア技法
上記より明らかなように、マッピングテーブルが失われると悲惨なことになる
。というのはデータ記憶サブシステム100におけるデータの記憶場所が、正確
なマッピングテーブルがなければ不明になり、したがってデータが失われてしま
うからである。またそうし
たマッピングテーブル喪失がいかにも悲惨であるため、マッピングテーブルのバ
ックアップはマッピングテーブル喪失のインパクトが最小限になるように行わな
ければならない。更に、マッピングテーブルは大きくかつ連続的に変えられるた
め、マッピングテーブルの全体として正確な不揮発バックアップコピーは維持す
るのが困難である。マッピングテーブルのバックアップは1対の交互ファジイイ
メージコピーと1対の対応した制御ジャーナルとによって行う。マッピングテー
ブルの一次または現コピーはキャッシュメモリー113に記憶され、その一方バ
ックアップファジイイメージコピーのほうは冗長グループのデイスク駆動機構1
22に記憶される。制御ジャーナルはキャッシュメモリー113の不揮発部分に
保持される。テーブルまたはファイルのイメージコピーは従来、ファイル全体の
完全な順次組織化したコピーを意味した。したがって、ファイルに加えた変更は
イメージコピーを作成している間遅延させる必要がある。この遅延の必要を排除
するために、ファジイイメージコピーを変わりに使用することができる。ファジ
イイメージコピーはテーブルあるいはコピーしつつあるファイルに対して変更が
施されているおそれのある間に作成するイメージコピーである。ファジイイメー
ジコピーを価値あるものにするには、そのイメージコピーを作成していた間にフ
ァイルに加えた変更のファイルも不揮発メモリーに記憶させる。こうして、ファ
ジイイメージコピーを作成すれば、その変更ジャーナルを用いてファジイイメー
ジコピーを更新して完全なイメージコピーにすることができる。これによって、
最新の変更が終わった時点でのファイルの正しいイオメージが作成される。2つ
の交互のメモリー領域が必要になるが、これはファジイイメージコピーを変更ジ
ャーナルによって更新している時に、第2メモリー領域が、ジャーナル変更更新
処理において生じるメモリー変更を記憶
するためである。したがって、マッピングテーブルをバックアップする場合、キ
ャッシュメモリー113からジャーナルを読出して、冗長グループのデイスク駆
動機構に記憶されたマッピングテーブルのファジイイメージコピーを更新するの
に使用する。将来のメモリー保護機構として、データ記憶サブシステム100は
自己定義型になっている。各仮想トラックインスタンスは仮想デイスク駆動機構
識別子と、仮想トラックインスタンス内にすべて書込まれた仮想シリンダーとヘ
ッド番号とを含む。
データ読出し動作
図6はデータ記憶サブシステム100の制御装置101内のプロセッサ204
が、デイスク駆動機構サブセット103のデータ冗長グループ122−1〜12
2−n+mからデータを読出すのに行う動作のフローチャートである。データ記
憶サブシステム100はいずれのサイズの読出しでも支援するものである。しか
しながら、論理層が支援するのは仮想トラックインスタンスの読出しだけである
。読出し動作を行うには、読出し対象のデータを含む仮想トラックインスタンス
ガ論理層からキャッシュメモリー113へステージングされる。するとデータレ
コードはそのキャッシュメモリー113から転送され、その読出し動作を完了さ
せるべく何らかのクリーンアップが行われる。図6においてステップ601では
、制御装置101が仮想トラックからレコードを読出す準備を行う。またステッ
プ602では、制御装置101が、キャッシュメモリー113において仮想トラ
ックを確実に位置付けるためにキャッシュデイレクトリサーチサブルーチンへ分
岐するが、これはその仮想トラックを記憶する冗長グループを構成する複数のデ
イスク駆動機構(122−1〜122−n+m)へコピーが記憶されていること
に加えて、その仮想トラックがすでにキャッシュメモリー113へステージング
さ
れて、そこに記憶されている可能性があるためである。ステップ603では、制
御装置101がキャッシュメモリー113のハッシュテーブルデイレクトリを走
査して要求された仮想トラックがキャッシュメモリー113の中に位置するか否
かを判定する。仮想トラックがキャッシュメモリー113内に位置すれば、ステ
ップ604において制御が主読出し動作ルーチンへ戻され、そしてステップ60
5〜616を構成するキャッシュステージングサブルーチンが終了させられる。
ここで説明の便宜上、すでに要求された仮想トラックがキャッシュメモリー1
13の中に位置しないと仮定する。処理はステップ605へ進み、このステップ
においては制御装置101が仮想→論理マッピングテーブルにおいて仮想トラッ
クのアドレスを探索する。またステップ606において、論理マップ位置を使用
して冗長グループにおける1個もしくはそれ以上の物理デイスク駆動機構へ論理
デイスク駆動機構をマップする。ステップ607では、制御装置101が1つも
しくはそれ以上の物理読出し動作をスケジューリングして同定された物理デイス
ク駆動機構122−1〜122−n+mのうち適宜のものから仮想トラックイン
スタンスを検索する。ステップ608において、制御装置101はそれらの動作
からエラーをクリヤーする。またステップ609においては、すべての読出しが
完了しているか否かの判定が行われるが、これは冗長グループのN+M個のデイ
スク駆動機構のうち1個以上に、その要求された仮想トラックインスタンスが記
憶されている可能性があるためである。読出しがまだすべて完了していなければ
、処理はステップ614へ進み、このステップにおいて制御装置101は、冗長
グループのN+M個のデイスク駆動機構の1つによる読出し動作が次に完了する
を待つ。ステップ615においては、次の読出しデイスク駆動機構
がその動作を完了しており、完了したばかりの読出し動作に何らかのエラーがあ
るか否かの判定が行われる。エラーがある場合、ステップ616において、エラ
ーが標識され、制御がステップ609の起点に戻され、このステップにおいてす
べての読出しが完了しているか否かの判定が行われる。ここで読出しがすべて完
了しており、かつ仮想トラックインスタンスのすべての部分が冗長グループから
検索されていれば、処理がステップ610へ進み、このステップにおいて、完了
してしまっている読出しに何らかのエラーがあるか否かの判定が行われる。エラ
ーが検出された場合、ステップ611においてそれらのエラーを固定できるか否
かの判定が行われる。エラー補正方法の1つはReed−Solomonエラー
検出/補正コードを用いて、直接に読出しできないデータを再生成することであ
る。またエラーからの回復ができない場合は、仮想トラックインスタンスを読出
しできないことを制御装置101に対して示すフラッグを立てる。またエラーを
固定できる場合、ステップ612において、同定されたエラーを補正して、処理
がステップ604の主ルーチンへ戻るが、このステップでは冗長グループからキ
ャッシュメモリー113への仮想トラックインスタンスの読出しがすでに首尾よ
く完了している。
ステップ617においては、制御装置101が、現在それを記憶しているステ
ージされた仮想トラックインスタンスから、要求されたデータレコードを転送す
る。そのステージされた仮想トラックからの関心レコードがすでに、その情報の
要求元であるホストプロセッサ11へすでに転送されていると、ステップ618
において制御装置101が、冗長グループからキャッシュメモリー113へ仮想
トラックインスタンスをステージするのに必要な装置をすべてアイドル状態にす
るのに必要な管理タスクを実行することによって読出
し動作をクリーンアップし、制御がステップ619において、要求された次の動
作を行うために戻る。
データ書込み動作
図7はデータ書込み動作を行うためにデータ記憶サブシステム100がとる動
作ステップのフローチャートを示す。そのデータ記憶サブシステム100はいか
なるサイズの書込みでも支援するが、やはり、論理層が支援するのは仮想トラッ
クインスタンスの書込みだけである。したがって、書込み動作を行う場合、再書
込みすべきデータレコードを含む仮想トラックが論理層からキャッシュメモリー
113へステージされる。書込み動作が完了すると、仮想トラックの廃インスタ
ンスの位置がフリースペースとして標識される。そして、変更されたデータレコ
ードが仮想トラックへ転送され、またこの更新された仮想トラックインスタンス
が、データレコード変更が起きたキャッシュメモリー113から論理層へと書込
まれるようスケジュールされる。そして、その転送と書込みとが完了すると書込
み動作がクリーンアップされる。
ステッブ701においては、制御装置101は書込み動作をセットアップし、
またステップ702では、前記読出し動作の場合と同じように、制御装置101
が、データの転送先である仮想トラックをキャッシュメモリー113の中に確実
に位置付けるためにキャッシュデイレクトリサーチサブルーチンへ分岐する。キ
ャッシュメモリー113においてデータ更新がすべて行われるので、そのデータ
の書込み先である仮想トラックを、それがキャッシュメモリー113の中にすで
に常駐していなければ、それが記憶されている冗長グループからキャッシュメモ
リー113へと転送しなければならない。要求された仮想トラックインスタンス
の、キャッシュメモリー113への転送が、前記のデータ読出し動作に関して述
べかつ図6に示
したステップ603〜616におけると同様に、書込み動作のために行われる。
ステップ703では、制御装置101は有効として冗長グループに記憶されて
いる仮想トラックインスタンスを標識して、その仮想トラックインスタンスが記
憶されている論理記憶場所へのアクセスが、その仮想トラックの読出しあるいは
書込みを行おうとしている別のホストプロセッサ12に応答して行われないよう
にする。キャッシュメモリー113内のその仮想トラックへ変更したレコードデ
ータを書込むことになるので、冗長グループに常駐する仮想トラックの複写は今
度は不正確になり、ホストプロセッサ11、12によるアクセスから除外されな
ければならない。ステップ704において、制御装置101はホストプロセッサ
11から受けた変更レコードデータを、冗長グループからキャッシュメモリー1
13へと検索された仮想トラックへ転送して、その変更レコードデータを、冗長
グループから検索したオリジナル仮想トラックに併合する。この併合が完了しか
つここで仮想トラックが、ホストプロセッサ11から受けた変更レコードデータ
で更新されると、制御装置101は、データ記憶サブシステム100内のどこか
に位置する冗長グループへ書込むべく、その更新された仮想トラックインスタン
スをスケジュールしなければならない。
このスケジューリングを行うのは、ステップ706〜711を構成するサブル
ーチンである。ステップ706では、制御装置101が、更新された仮想トラッ
クインスタンスが、可用な空き論理シリンダーに合うか否かを判定する。その仮
想トラックインスタンスが空き論理シリンダーに合わないと、ステップ707で
、その現在空いている論理シリンダーは閉じられかつ物理層および、データ記憶
サブシステム100内の最も自由な論理デイスク駆動機構または冗
長グループから選ばれた別の論理シリンダーへ書込まれる。ステップ708では
、最も自由な論理デイスク駆動機構からの自由論理シリンダーの選択が行われる
。これによって、ホストプロセッサ11から受けたデータファイルはデータ記憶
サブシステム100内の複数冗長グループを横切って確実に均等分布されて、あ
る冗長グループのオーバロードやその他の冗長グループのアンダーロードを回避
することができる。自由論理シリンダーが現在空いている論理シリンダーあるい
は新しく選ばれる論理シリンダーのいずれかとして利用できれば、ステップ70
9においては、制御装置101によって、更新された仮想トラックインスタンス
が論理シリンダーへ書込まれ、またステップ710では仮想トラックの新しい記
憶場所が仮想→論理マップに入れられてホストプロセッサ11、12によってそ
の仮想トラックが利用できるようになる。ステップ711においては、制御が主
ルーチンに戻り、このルーチンではステップ712において制御装置101が残
存管理タスクをクリーンアップして書込み動作を完了させ、ホストプロセッサ1
1からの更なる読出しあるいは書込み動作のためにステップ712の可用状態に
戻る。
フリースペース収集
キャッシュメモリー113内のデータは、変更されると、デイスク駆動機構サ
ブセット103内のデイスク駆動機構におけるそれまでのその記憶場所へ再び書
込むことができない。これは冗長グループに対する該当論理トラックに関する冗
長情報がその変更によって無効化されるためである。したがって、仮想トラック
を更新すると、そのトラックをデータ記憶サブシステム100内の新しい記憶場
所へ書込まねばならず、それまでの記憶場所におけるデータをフリースペースと
して標識しなければならない。したがって、各冗長グループにおいては、論理シ
リンダーが、廃インスタンスとして標識さ
れた仮想トラックインスタンスの形で廃データの「穴」だらけとなる。ステージ
ング会場するために論理シリンダーを完全に空にする場合、部分的に有効なシリ
ンダーにおける有効データをキャッシュメモリーに読出し、そして新しいすでに
空になっている論理シリンダーに書込まなければならない。この処理はフリース
ペース収集と称する。このフリースペース収集機能は制御装置101によって行
われる。制御装置101はどれだけのフリースペースの含むかに応じて収集すべ
き論理シリンダーを選択する。フリースペースの判定は図8に示すようにフリー
スペースデイレクトリに基づいて行われる。図8はデータ記憶サブシステム10
0における不使用メモリーの可用性を示している。図8に示すテーブルはデータ
記憶サブシステム100に含まれるすべての論理デイスク駆動機構とそこに含ま
れる各論理シリンダーのIDのリストである。このチャートにおけるエントリが
その特定論理シリンダーにおける自由論理セクターの個数を示す。メモリー内に
は書込みカーソルが維持され、またこの書込みカーソルが、対応のホストプロセ
ッサ11、12による変更の後キャッシュメモリー113からデータをステージ
ング解除する時あるいはフリースペース収集処理の一部として制御装置101の
書込み対象となる可用の空の論理シリンダーを示す。更に、フリースペース収集
カーソルが維持されるるが、このカーソルはフリースペース収集処理の一部とし
てクリヤーされつつある現在の論理シリンダーを指示するものである。したがっ
て、制御装置101は図8に示す次のフリースペースデイレクトリをバッックエ
ンド処理として見直して、論理デイスク駆動機構におけるどの論理シリンダーが
フリースペース収集から最も利益を得るかを判定することができる。制御装置1
01は選ばれた論理シリンダーからキャッシュメモリー113へすべての有効デ
ータを読出すことによってフリースペース
収集処理を始動する。こうして論理シリンダーが完全に空きとしてリストされる
が、これはそのシリンダーの中のすべての仮想トラックインスタンスが廃インス
タンスとして収集されるからである。フリースペース収集のため、あるいは対応
ホストプロセッサ11、12からデータが、論理シリンダー全体がいっぱいにな
るまで受けられると追加論理シリンダーが収集される。論理シリンダー全体がい
っぱいになると、新しいすでに空になっている論理シリンダーが選ばれる。
図9はフリースペース収集処理を行うためにプロセッサ204がとる動作ステ
ップのフローチャートを示している。このフリースペース収集処理では各仮想ト
ラックインスタンスが有効データを含んでいるか廃データを含んでいるかを判定
しなければならないのでこの処理ではソースフラッグとターゲットフラッグとを
使用しなければならない。更に、このフリースペース収集処理では複写テーブル
にリストされた移動/複写カウントフィールド調整動作を行う。プロセッサ20
4が図8のテーブルにリストしている空き論理セクターの個数に基づいて、収集
のために論理シリンダーを選択するとステップ901において基本処理が開始さ
れる。プロセッサ204は各仮想トラックデイレクトリのエントリを検査してソ
ースフラッグが立っているか判定する。ソースフラッグが立っている場合、ステ
ップ902においてプロセッサ204がソースリストを走査して論理シリンダー
デイレクトリの中に論理アドレスを発見する。アドレスが見つからなければ、そ
の仮想トラックインスタンスは廃インスタンスであり、もはや不要である(無効
である)。このデータはその記憶場所を変えられない。
またアドレスが見つかった場合、ステップ904において、プロセッサ204
は仮想トラックデイレクトリエントリの論理アドレス
と論理シリンダーデイレクトリの論理アドレスを比較する。整合していなければ
、ソースを更新されてどこかに存在している。プロセッサ204はステップ90
6において仮想トラックインスタンスの記述子を更新してソースの仮想アドレス
を除去する。ステップ905または906のいずれかが完了すると、プロセッサ
204はこのソースのターゲットリストにおけるすべてのターゲットに対するス
テップ907において仮想トラックインスタンスの記述子を更新してその仮想ア
ドレスを含み、そして複写テーブルから更新カウントフィールドのフラッグが立
つ。更には、プロセッサ204あはその仮想トラックインスタンスに対する論理
シリンダーデイレクトリエントリを生成する。最後に、プロセッサ204はター
ゲットに対する仮想トラックデイレクトリエントリを更新して新しい記憶場所を
指示してターゲットフラッグをクリヤーする。ステップ908において、プロセ
ッサ204はこのソースとそのすべてのターゲットを複写テーブルから除去する
。またプロセッサ204は同一の仮想アドレスでソースに対する複写テーブルを
走査し、ソースフラッグをクリヤーする。ここで変更点を仮想トラックと複写テ
ーブルとにジャーナルする。
本発明の特定実施例を以上に説明してきたが、当該技術関係者には理解される
通り、本発明はこの特定実施例以外の、請求の範囲を逸脱することのない実施が
可能である。
【手続補正書】特許法第184条の8
【提出日】1992年4月9日
【補正内容】
補正書の翻訳文
明細書
この並列なデータ転送は、データ転送帯域幅を増大するが、データの読出し/
書込みのためには冗長グループ内のすべてのデイスク駆動機構へ同期アクセスす
る必要がある。また第2レベルのRAIDシステムの例としては、上記米国特許
第4,722,085号に開示のものがあり、一方第3レベルのRAIDシステ
ムの例が米国特許第4,870,643号に開示されている。第4レベルのRA
IDシステムでは上記の問題を回避するためにパリテイグループの複数デイスク
駆動機構における非緊密結合されたアクチュエータを用いそしてパリテイグルー
プのすべてのデイスク駆動機構を横切ってデータブロックを分配するよりむしろ
1個のデイスク駆動機構における単一セクターにデータブロックを書込む。また
第5レベルのRAIDシステムは、第4レベルのRAIDシステムの変形であり
、このシステムでは専用パリテイデイスク駆動機構を使用するよりむしろパリテ
イグループ内のすべてのデイスク駆動機構を横切ってパリテイデータを分配する
。
第4、第5レベルのRAIDシステムでの大きな難点は、パリテイグループに
データを書込む毎にそのパリテイグループのパリテイを更新しなけれなならない
ことである。デイスクアレイシステムにおいては、データ記録がパリテイグルー
プにおけるn個のデータデイスクから読み取られ修飾される毎に、パリテイセグ
メントを再生させるために残余のn−1個のデータデイスク上の対応するデータ
記録が読み取られねばならぬ。ひとたび新しいパリテイが演算されると、n+1
個のセグメントがパリテイグループにおけるn+1個
のデイスク駆動機構へすべて再書込みされねばならぬ。第4および第5のレベル
のRAIDシステムは1日のデータ、1日のパリテイ、および新しいデータの排
他的オア論理処理を行いパリテイセグメントを再生させ、それによりn+1回の
読取りおよび書込みを2回の同時的な読取りおよび書込みへ減少させる。単一の
パリテイビットの代わりにReed−Solomonコード用等の多数のチェッ
クコードを使用する場合、チェクビット更新の性能インパクトは増倍する。かか
る多チェックビット形RAIDシステムの性能は低くまた既存の大フォームファ
クター形DASD製品とは競合できない。既存のシステムでは単一パリテイビッ
トだけを維持することによって惹起する性能劣化をより小さくするために多数の
チェックビットによって得ることのできる更なるデータ保全性を犠牲にしている
。
解決策
上記従来技術の短所を解決しかつ当該分野における技術的向上を達成するため
に、本発明では、極めて多くの小フォームファクター形デイスク駆動機構を用い
て、大フォームファクター形デイスク駆動機構のフォーマットと能力とをエミュ
レートする低価格、高性能、高信頼性のデイスク駆動機構式メモリーを実現する
並列デイスク駆動機構アレイ式データ記憶管理サブシステム用論理トラック書込
みスケジューリングシステムを提供する。本システムはデータ冗長グループにお
けるパリテイを更新しないことで従来技術のパリテイ更新の問題を回避するもの
である。パリテイを更新しない代わりに、新規あるいは変更したデータをすべて
空き論理トラックに書込みかつ旧データを廃データとしてそれらにタグ付けを行
う。旧データによって論理トラックに残される「穴」は、すでに空きにした論理
トラックに正しいデータを収集することによって空き論理トラックを生じさせる
背景空きスペース収集処理によって除去される。修飾されたデータを空きのトラ
ックに書込むことにより、読取りおよび書込みの回数は第4および第5のレベル
のRAIDシステムに比較して半分にされ、新しいパリテイセグメントの発生は
、データが受理されつつあるときに行われ、それにより、パリテイ再生に比較し
て必要な処理時間が、より小になる。
上記並列デイスク駆動機構アレイ式データ記憶サブシステムにおいてはその複
数デイスク駆動機構を複数の可変サイズの冗長グループに構成し、各グループを
(N+M)個の並列接続したデイスク駆動機構で形成してその中にデータを記憶
するようにしている。論理デイスク駆動機構とも称する各冗長グループを多数の
論理シリンダーに分割し、各シリンダーにi本の論理トラクを含める。1個の物
理デイスク駆動機構の1本のスリンダーに含まれるi本の物理トラ
ックの各々に1本の論理トラックを割り当てて上記構成を得る。各論理トラック
は冗長グループの各デイスク駆動機構から1本の物理トラックが来るので(N+
M)本の物理トラックで構成する。上記(N+M)本の物理デイスク駆動機構は
、論理トラック1本に物理トラックN本の単位で、1単位毎に1個のセグメント
の割合でN個のデータセグメントを記憶し、かつ冗長グループにおける論理トラ
ック1本に物理トラックM本の単位で、1単位毎に1個のセグメントの割合でM
個の冗長セグメントを記憶するのに使用する。冗長グループにおけるN+M個の
デイスク駆動機構は非同期スピンドルと非緊密結合アクチュエータとを有する。
デイスク駆動機構へのデータ転送は、すべてのデイスク駆動機構が独立して動作
するので、独立した読出しおよび書込みで行われる。更に、連続した論理シリン
ダーに対するM個の冗長セグメントは、専用冗長デイスク駆動機構を使用するよ
りむしろ冗長グループのすべてのデイスク駆動機構を横切って分配される。この
冗長セグメントの分配によって、冗長グループにおける各アクチュエータはデイ
スク駆動機構上に記憶されているデータセグメントのいくつかをアクセスのに用
いられる。冗長セグメントに対して専用駆動機構を設けた場合、それらのデイス
ク駆動機構は冗長セグメントがそれらのデイスクに対して読出しまたは書込みさ
れなければ非活動状態になる。しかしながら、冗長を分配すれば、冗長グループ
のアクチュエータはすべてデータアクセスに利用できる。更に、R個の全体的に
切替え自在のバックアップ用デイスク駆動機構のプールをデータ記憶サブシステ
ムにおいて維持して動作時に故障したいずれかの冗長グループのデイスク駆動機
構の代わりに代替デイスク駆動機構を自動的に動作投入する。このR個のバック
アップデイスク駆動機構のプールは低コストで高い信頼性を保証するものである
。
物理デイスク駆動機構は各々、動作時の故障を検出できるように構成されてお
り、その故障検出によって論理トラック毎にM個の冗長セグメントを多ビットエ
ラー補正のために使用できる。故障した物理デイスク駆動機構の同定により、論
理トラック上のエラーのビット位置に関する情報が得られ、また冗長データがエ
ラー補正用の情報をもたらす。冗長グループの故障デイスク駆動機構が同定され
るとバックアップのデイスク駆動機構の共用プールからのバックアップデイスク
駆動機構がその故障デイスク駆動機構の代わりに自動的に動作投入される。
次にこれらの仮想トラックはすでに空きになっている論理シリンダーに書込ま
れ、「収集された」論理シリンダーには空きのタグ付けが行われる。こうして冗
長データ生成、書込み、フリースペース収集がいずれも即時解答処理よりむしろ
背景において行われる。この機構によって既存のデイスクアレイ式システムのパ
リテイ更新の問題が回避されるとともに、これらのオーバヘッドタスクを背景処
理へ転送することによってデータ記憶サブシステムの応答時間とアクセス速度と
の関係が改善される。
データ記憶サブシステムのアーキテクチュア
図1は本並列デイスク駆動機構アレイ式データ記憶サブシステム100のアー
キテクチュアのブロック図である。このデータ記憶サブシステム100は対応の
ホストプロセッサ11、12には、それらの対応記憶制御器付き大フォームファ
クター形デイスク駆動機構の集合のように認識されるが、これはこのデータ記憶
サブシステム100のアーキテクチュアがその対応ホストプロセッサ11、12
に対して透過的であるためである。本データ記憶サブシステム100は複数のデ
イスク駆動機構サブセット103−1〜103−iに設けた複数のデイスク駆動
機構(例えば、122−1〜125−r)を含む。これらのデイスク駆動機構1
22−1〜125−rは、冗長情報を記憶するためのデイスク駆動機構を設けか
つバックアップのデイスク駆動機構を設けても、対応のバックアップデイスク駆
動機構を備える代表的な14インチフォームファクター形デイスク駆動機構に比
べ非常に低価格である。これらの複数デイスク駆動機構122−1〜125−r
は代表的には、5−1/4インチフォームファクター形の工業規格品ハードデイ
スク駆動機構である。
図1に示すアーキテクチュアは、ホストプロセッサ11、12に対応するバッ
クエンドデータ記憶容量をもたらすデータ記憶サブシ
ステム100に、対応の複数データチャンネル21、22〜31、32を介して
相互接続されたそれらの複数ホストプロセッサ11、12のアーキテクチュアで
ある。この基本的構成はデータ処理の技術分野では公知のものである。このデー
タ記憶サブシステム100はデイスク駆動機構103−1〜103−iからなる
サブセットとそれらの対応の駆動機構管理回路102−1〜102−iとを、デ
ータ記憶サブシステム100を複数のホストプロセッサ11、12と相互接続さ
せるデータチャンネル21−22、31−32と相互接続させる制御装置101
を含む。
上記制御装置101は代表的には、冗長用クラスタ制御器2を2個111、1
12を含む。そのうちクラスタ制御器111においては、多経路記憶デイレクタ
ー110−0が制御装置101に含まれるクラスタ制御器111にデータチャン
ネル21、31を相互接続させるハードウエアインタフェースとなっている。こ
の点で、上記多経路記憶デイレクター110−0は対応のデータチャンネル21
、31へのハードウエアインタフェースとなり、またいずれかのホストプロセッ
サ、例えばホストプロセッサ11からの付属データチャンネル、例えば21、を
制御装置101内の選択されたクラスタ制御器111へ相互接続させる多重機能
をもつ。クラスタ制御器111そのものは、複数の光ファイバーバッックエンド
チャンネル104に対するインタフェースとして機能する1対の記憶経路200
−0、200−1をもつ。更に、クラスタ制御器111はデータ圧縮機能ととも
に、選択したデータチャンネル21とキャシュメモリー113との間、またその
キャッシュメモリー113と、接続された光ファイバーバックエンドチャンネル
104との間のデータ転送をクラスタ制御器111に指令させるデータ経路指定
機能をもつ。制御装置101は主要なデータ記憶サブシステム機能、例えぼ、デ
ー
タ冗長グループの生成と調整、故障デイスク駆動機構に対するデータの再構成、
故障デイスク駆動機構の代わりの予備デイスク駆動機能の動作投入、データ冗長
の発生、論理駆動機構スペースの管理、仮想駆動機構〜論理駆動機構のマッピン
グ等の機能をもつ。
またクラスタ制御器111がこの時、受信データを記憶する冗長グループを形
成するためのデイスク駆動機構サブセット(122−1〜122−n+m)を選
択する。クラスタ制御器111はまた、選択された冗長グループにおける、N+
M本の物理トラックからなる空きの論理トラックを選択する。データのN本の物
理トラックは各々、選択されたデータ冗長グループにおけるN個のデイスク駆動
機構の1つに書込まれる。更なるM個のデイスク駆動機構は冗長グループにおい
て、M個の冗長セグメントを記憶するのに用いられる。これらM個の冗長セグメ
ントは、N個のデイスク駆動機構に記憶されたN本の物理トラックの保全性を検
査しかつデータのN本の物理トラックのうち1本もしくはそれ以上を、それらの
物理トラックが、それを記憶しているデイスク駆動機構の故障により失われた場
合にそれらトラックを再構成するの使用できるエラー補正文字やデータを含む。
このように、データ記憶サブシステム100は複数のより小さいフォームファ
クターのデイスク駆動機構を用いて1個もしくはそれ以上の大フォームファクタ
ー形デイスク駆動機構(例えば、IBM3380Kタイプのデイスク駆動機構)
をエミュレートする一方で、複数の小フォームファクター形デイスク駆動機構を
横切ってデータを書き込むことによって高い信頼性を得ることができるものであ
る。信頼性の向上はまた、故障したデイスク駆動機構に代わって相互接続可能な
R個のバックアップデイスク駆動機構(125−1〜125r)のプールを設け
ることによっても可能である。データの再構成はM個の冗長セグメントを使用し
て行われるので、冗長セグメントに記憶された冗長情報に組み合わさった残存機
能(論理)デイスク駆動機構に記憶されたデータを制御装置101内の制御ソフ
トウエアによって用いられて、冗長グループ内の複数デイスク駆動機構
(122−1〜122−n+m)の1つもしくはそれ以上が故障した時に失われ
たデータを再構成することができる。この機構により、デイスクシャドウ機構に
よって得られる信頼性と同様な信頼性をかかる機構全体にわたって著しく低いコ
ストで得ることができる。
更には、デイスク駆動機構は、システムに接続した時に新しい予備デイスク駆
動機構123を検出し、それによって、記憶または信頼性の要求の変化につれて
、デイスク駆動機構式メモリー制御ソフトウエアを再プログラム化することなく
、デイスク駆動機構を成長させることができる。
仮想デイスク駆動機構から論理デイスク駆動機構へのダイナミックマッピング
データ転送動作について言えば、すべてのデータ転送はキャッシュメモリー1
13を通じて行われる。したがって、フロントエンドまたはチャンネル転送動作
はバックエンドまたはデイスク駆動機構転送動作から完全に独立している。この
システムにおけるステージング動作はその他のキャッシュされたデイスクサブシ
ステムにおけるステージングと同様であるがステージング解除転送は、バルク転
送のためにグループで収集される。更に、このデータ記憶サブシステム100は
フリースペース収集、マッピングテーブルバックアップ、エラー回復を背景処理
として同時を行う。フロントエンドとバックエンドが完全に分離しているので、
データ記憶サブシステム100が前のカウントキイデータデイスクサブシステム
の厳しいプロセッサタイミング依存性がない。このサブシステムはしたがって更
に知能的なスケジューリングおよびデータ転送制御によって性能を向上させるの
にその処理資源を自由に供することができる。
上記並列デイスク駆動機構アレイ式データ記憶サブシステム100は3つの抽
象層、すなわち、仮想層、論理層および物理層で構成されている。仮想層は従来
の大フォームファクター形デイスク駆動機構式メモリーとして機能する。また論
理層は複数の冗長グループ(例えば、122−1、122−n+m)にグループ
化された記憶装置アレイとして機能し、各冗長グループは各論理トラックに対し
N本の物理トラックのデータとM本の物理トラックの冗長情報を記憶するための
N+M個のデイスク駆動機構を含んでいる。
自由論理シリンダーが現在空いている論理シリンダーあるいは新しく選ばれる
論理シリンダーのいずれかとして利用できれば、ステップ709においては、制
御装置101によって、更新された仮想トラックインスタンスが論理シリンダー
へ書込まれ、またステップ710では仮想トラックの新しい記憶場所が仮想→論
理マップに入れられてホストプロセッサ11、12によってその仮想トラックが
利用できるようになる。ステップ711においては、制御が主ルーチンに戻り、
このルーチンではステップ712において制御装置101が残存管理タスクをク
リーンアップして書込み動作を完了させ、ホストプロセッサ11からの更なる読
出しあるいは書込み動作のためにステップ712の可用状態に戻る。
フリースペース収集
キャッシュメモリー113内のデータは、変更されると、デイスク駆動機構サ
ブセット103内のデイスク駆動機構におけるそれまでのその記憶場所へ再び書
込むことができない。これは冗長グループに対する該当論理トラックに関する冗
長情報がその変更によって無効化されるためである。したがって、仮想トラック
を更新すると、そのトラックをデータ記憶サブシステム100内の新しい記憶場
所へ書込まねばならず、それまでの記憶場所におけるデータをフリースペースと
して標識しなければならない。したがって、各冗長グループにおいては、論理シ
リンダーが、廃インスタンスとして標識された仮想トラックインスタンスの形で
廃データの「穴」だらけとなる。ステージング解除のために完全に空きの論理シ
リンダーを作成するために、部分的に有効なシリンダーにおける有効データをキ
ャッシュメモリーに読出し、そして新しいすでに空になっている論理シリンダー
に書込まなければならない。この処理はフリースペース収集と称する。このフリ
ースペース収集機能は制御装置101によ
って行われる。制御装置101はどれだけのフリースペースの含むかに応じて収
集すべき論理シリンダーを選択する。フリースペースの判定は図8に示すように
フリースペースデイレクトリに基づいて行われる。
請求の範囲
1.少なくとも1つの協働するデータプロセッサに対してデータ記録を記憶す
るデイスクメモリーシステムであって、
そのサブセットが、各々が少なくとも2つのデイスク駆動機構からなる少なく
とも2つの冗長グループに分けて形成した複数のデイスク駆動機構、
該協働するデータプロセッサからデータ記録の流れを受けると、それに応答し
て上記冗長グループの1つにおける第1の利用可能のメモリースペースを選択し
てそこに上記の受信データ記録の流れを記憶する手段、
上記の選択した冗長グループにおける上記の選択した第1の利用可能のメモリ
ースペースに、上記の受信データ記録の流れとこの流れに関連する冗長データと
を書込む手段、
データ記録書込み手段であって、該選択された冗長グループにおける該第1の
利用可能の記憶スペースに記憶された該データ記録の1つへの修飾を、該協働す
るデータプロセッサからひきつづき受理することに応答して、該修飾されたデー
タ記録を、該受理されたデータ記録の残余および該第1の利用可能の記憶スペー
スに書込まれた該受理されたデータ記録の流れに関連する該冗長データは除外し
て、該冗長グループの1つにおける第2の利用可能の記憶スペースヘ書込み、そ
の場合に該書込み手段によりひきつづき受理されるデータ記録の流れとともに該
修飾されたデータ記録を包含させるもの、および、
上記の最初に受けたデータレコードを記憶するのに用いた上記メモリースペー
スを可用メモリースペースに変換する手段、を具備するデイスクメモリーシステ
ム。
2.更に、上記少なくとも2つのデイスク駆動機構の1つにおける対応の特定
メモリーアドレスが可用メモリースペースを含んでいない、上記少なくとも2つ
のデイスク駆動機構の少なくとも1つにおける特定アドレスに可用メモリースペ
ースを含む上記冗長グループの1つに応答して、対応のメモリーアドレスに可用
メモリースペースを含まない、上記少なくとも2つのデイスク駆動機構の1つか
らデータレコードを除去して上記少なくとも2つのデイスク駆動機構のすべてに
おける上記特定メモリーアドレスにおいてメモリースペースが得られるようにす
る手段を含む、請求の範囲1に記載のデイスクメモリーシステム。
3.更に、上記データレコード除去手段に応答して、上記対応データプロセッ
サから受けた少なくとも1つのデータレコードと上記除去されたデータレコード
を組み合わせてデータレコードの併合ストリームを形成する手段と、
上記データレコードの併合ストリームの連続部分を上記冗長グループの1つに
おける上記少なくとも2つのデイスク駆動機構のうち対応するものに書込む手段
とを含んでいる、請求の範囲2に記載のデイスクメモリーシステム。
4.更に、上記冗長グループが共用するバックアップデイスク駆動機構として
上記複数のデイスク駆動機構のうち少なくとも1つを確保する手段と、
上記冗長グループの1つにおける上記すくなくとも2つのデイスク駆動機構の
うち故障したものを同定する手段と、
上記の同定された故障デイスク駆動機構の代わりに上記バックアップデイスク
駆動機構の1つを切換え自在に動作投入する手段手段とを含む、請求の範囲1に
記載のデイスクメモリーシステム。
5.更に、上記同定された故障デイスク駆動機構に書込まれてい
る上記データレコードストリームを、上記対応冗長グループを用いて再構成する
手段と、
上記1つバックアップデイスク駆動機構に上記再構成したデータレコードスト
リームを書込む手段とを含む、請求の範囲4に記載のデイスクメモリーシステム
。
6.上記再構成手段が、
上記対応冗長データと、上記冗長グループにおける残存デイスク駆動機構に書
込まれているデータレコードとを用いて、上記同定された故障デイスク駆動機構
に書込まれている上記データレコードストリームを生成する手段を含んでいる、
請求の範囲5に記載のデイスクメモリーシステム。
7.更に、上記受けた各データレコードストリームと、上記選ばれた冗長グル
ープにおける上記少なくとも2つのデイスク駆動機構のうち、上記受けたデータ
レコードストリームを記憶している1つの同一性との対応性を示すデータを維持
する手段を含む、請求の範囲1に記載のデイスクメモリーシステム。
8.上記データレコードストリーム生成手段が、
マルチビットエラーコードを生成して上記受けたデータレコードストリームの
少なくとも2つの冗長セグメントを形成する手段を含んでいる、請求の範囲6に
記載のデイスクメモリーシステム。
13.上記冗長グループがn+m個(n、mは両方とも正の整数であり、n〉
1、m≧)のデイスク駆動機構を含み、上記書込み手段が
選ばれた冗長グループにおける上記n個のデイスク駆動機構のうち連続したも
のにおける上記対応のデータプロセッサから受けた各データレコードストリーム
を記憶する手段と、
上記選ばれた冗長グループにおけるn個すべてのデイスク駆動機
構にデータレコードストリームを記憶する上記記憶手段に応答して、上記n個の
デイスク駆動機構に記憶されている上記データレコードに対してmセグメントの
データ冗長情報を生成する手段と、
上記選ばれた冗長グループの上記m個のデイスク駆動機構へ上記mセグメント
の冗長データを書込む手段とを含む、請求の範囲1に記載のデイスクメモリーシ
ステム。
14.各冗長グループがn+m個(n、mは両方とも正の整数であり、n>1
、m≧)のデイスク駆動機構からなり、上記書込み手段が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶する手段と、
上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生
成する手段と、
上記冗長グループのうち選ばれた1つに上記受けたnストリームのデータレコ
ードと上記m個の冗長セグメントとを、上記選ばれた冗長グループにおける上記
n+m個のデイスク駆動機構のうち対応の1つに上記のデータレコードを1スト
リームおよび上記冗長セグメントを1個という割合で、書込む手段とを含む、請
求の範囲1に記載のデイスクメモリーシステム。
15.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1
、m≧)のデイスク駆動機構からなり、上記書込み手段が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶する手段と、
上記受けたnストリームのデータレコードを用いてm個の冗長セ
グメントを生成する手段と、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構の各々に
対し同一相対アドレスにおいてアドレス指定可能な可用メモリースペースを選び
、上記受けたnストリームのデータレコードと、上記m個の生成した冗長セグメ
ントとを記憶する手段と、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受
けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記
n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ
コードストリームと各冗長セグメントをという割合で、書込む手段とを含む、請
求の範囲1に記載のデイスクメモリーシステム。
16.各冗長グループがn+m個(n、mは両方とも正の整数であり、n>1
、m≧)のデイスク駆動機構からなり、また上記デイスク駆動機構が各々、同様
の多数の物理トラックを含んで論理トラックという物理トラックの複数セットを
形成しており、各論理トラックが上記n+m個のデイスク駆動機構の各々におけ
る同一相対アドレスに1つの物理トラックを有していてそこにデータレコードス
トリームを記憶するようになっており、上記書込み手段が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶する手段と、
上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生
成する手段と、
上記n+m個のデイスク駆動機構の各々に対し同一相対アドレスにおいてアド
レス指定可能な可用物理トラックをもった、上記冗長セグメントのうちの1つに
おける上記論理トラックの1つを選択する手段と、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受
けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記
n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ
コードストリームと各冗長セグメントをという割合で、書込む手段とを含む、請
求の範囲1に記載のデイスクメモリーシステム。
17.上記変更データ書込み手段が、上記対応データプロセッサから、上記n
+m個のデイスク駆動機構のうち上記選ばれた論理トラック上にある1つにおけ
る上記選ばれた物理トラックに記憶された、上記データレコードに対する変更を
後で受けた時、それに応答して、上記n+m個のデイスク駆動機構のうち、上記
選ばれた論理トラック上の1つにおける上記選ばれた物理トラックを除く、上記
冗長グループの1つにおける可用論理トラックに上記変更データレコードを書込
むようになっており、また
上記変換手段が上記選ばれた冗長グループにおける上記n+m個のデイスク駆
動機構のうち、上記最初の受けたデータレコードを記憶するのに用いられる上記
の1つにおける上記相対アドレスにおいてアドレス指定可能な上記選ばれた物理
トラックを可用物理トラックに変換するようになっている、請求の範囲16に記
載のデイスクメモリーシステム。
18.更に、論理トラックの残存デイスク駆動機構における対応物理トラック
が可用メモリースペースを含んでいない、上記論理トラックにおけるn+m個の
デイスク駆動機構のうちの少なくとも1つにおいて可用メモリースペースを含む
、上記冗長グループにおける上記物理トラックセットの1つに応答して、対応の
メモリーアドレスに可用メモリースペースを含まない、上記セットにおける上記
論理トラックの上記残存物理トラックからデータレコードを除去し
て上記特定メモリーアドレスにおける上記n+m個のデイスク駆動機構における
上記すべての物理トラックにおいてメモリースペースが得られるようにする手段
を含む、請求の範囲17に記載のデイスクメモリーシステム。
19.少なくとも2つの冗長グループに分けて構成された複数のデイスク駆動
機構を有しており、各冗長グループが少なくとも2つのデイスク駆動機構からな
るデイスクメモリーシステムにおける、少なくとも1つの協働するデータプロセ
ッサに対してデータ記録を記憶する方法であって、
該協働するデータプロセッサからデータ記録の流れを受けると、これに応答し
て上記冗長グループの1つにおける利用可能のメモリースペースを選択してそこ
に上記受けたデータ記録の流れを記憶する段階、
上記受けたデータ記録の流れと、この受けたデータ記録の流れに組み合わされ
た冗長データとを、上記選ばれた冗長グループにおける上記選ばれた利用可能の
メモリースペースに書込む段階、
該協働するデータプロセッサから、上記冗長グループの1つに記憶された上記
データ記録の1つに対する修飾を後で受けると、それに応答して上記冗長グルー
プの1つにおける利用可能のメモリースペースに上記の変更されたデータ記録を
書込む段階、そして、
上記の最初に受けたデータ記録を記憶するのに用いた上記メモリースペースを
利用可能のメモリースペースに変換する段階、を具備する方法。
20.更に、上記少なくとも2つのデイスク駆動機構の1つにおける対応の特
定メモリーアドレスが可用メモリースペースを含んでいない、上記少なくとも2
つのデイスク駆動機構の少なくとも1つにおける特定アドレスに可用メモリース
ペースを含む上記冗長グル
ープの1つに応答して、対応のメモリーアドレスに可用メモリースペースを含ま
ない、上記少なくとも2つのデイスク駆動機構の1つからデータレコードを除去
して上記少なくとも2つのデイスク駆動機構のすべてにおける上記特定メモリー
アドレスにおいてメモリースペースが得られるようにする段階を含む、請求の範
囲19に記載の方法。
21.更に、上記データレコード除去手段に応答して、上記対応データプロセ
ッサから受けた少なくとも1つのデータレコードと上記除去されたデータレコー
ドを組み合わせてデータレコードの併合ストリームを形成し、
上記データレコードの併合ストリームの連続部分を上記冗長グループの1つに
おける上記少なくとも2つのデイスク駆動機構のうち対応するものに書込む、各
段階を含んでいる、請求の範囲20に記載の方法。
22.更に、上記冗長グループが共用するバックアップデイスク駆動機構とし
て上記複数のデイスク駆動機構のうち少なくとも1つを確保し、
上記冗長グループの1つにおける上記少なくとも2つのデイスク駆動機構のう
ち故障したものを同定し、
上記の同定された故障デイスク駆動機構の代わりに上記バックアップデイスク
駆動機構の1つを切換え自在に動作投入する、各段階を含む、請求の範囲19に
記載の方法。
23.更に、上記同定された故障デイスク駆動機構に書込まれている上記デー
タレコードストリームを、上記対応冗長グループを用いて再構成し、
上記1つバックアップデイスク駆動機構に上記再構成したデータレコードスト
リームを書込む、各段階を含む、請求の範囲22に記
載の方法。
24.上記再構成段階が、
上記対応冗長データと、上記冗長グループにおける残存デイスク駆動機構に書
き込まれてるデータレコードとを用いて、上記同定された故障デイスク駆動機構
に書込まれている上記データレコードストリームを生成する段階を含んでいる、
請求の範囲23に記載の方法。
25.更に、上記受けた各データレコードストリームと、上記選ばれた冗長グ
ループにおける上記少なくとも2つのデイスク駆動機構のうち、上記受けたデー
タレコードストリームを記憶している1つの同一性との対応性を示すデータを維
持する段階を含む、請求の範囲19に記載の方法。
31.上記冗長グループがn+m個(n、mは両方とも正の整数であり、n〉
1、m≧)のデイスク駆動機構を含み、上記書込み段階が
選ばれた冗長グループにおける上記n個のデイスク駆動機構のうち連続したも
のにおける上記対応のデータプロセッサから受けた各データレコードストリーム
を記憶し、
上記選ばれた冗長グループにおけるn個すべてのデイスク駆動機構にデータレ
コードストリームを記憶する上記記憶手段に応答して、上記n個のデイスク駆動
機構に記憶されている上記データレコードに対してmセグメントのデータ冗長情
報を生成し、
上記選ばれた冗長グループの上記m個のデイスク駆動機構へ上記mセグメント
の冗長データを書込む、各段階を含む、請求の範囲19に記載の方法。
32.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1
、m≧)のデイスク駆動機構からなり、上記書込み段
階が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶し、
上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生
成し、
上記冗長グループのうち選ばれた1つに上記受けたnストリームのデータレコ
ードと上記m個の冗長セグメントとを、上記選ばれた冗長グループにおける上記
n+m個のデイスク駆動機構のうち対応の1つに上記のデータレコードを1スト
リームおよび上記冗長セグメントを1個という割合で、書込む、各段階を含む、
請求の範囲19に記載の方法。
33.各冗長グループがn+m個(n、mは両方とも正の整数であり、n>1
、m≧)のデイスク駆動機構からなり、上記書込み段階が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶し、
上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生
成し、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構の各々に
対し同一相対アドレスにおいてアドレス指定可能な可用メモリースペースを選び
、上記受けたnストリームのデータレコードと、上記m個の生成した冗長セグメ
ントとを記憶し、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受
けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記
n+m個のデイスク駆動機構のそれぞれ
における上記相対アドレスに各データレコードストリームと各冗長セグメントを
という割合で、書込む、各段階を含む、請求の範囲19に記載の方法。
34.各冗長グループがn+m個(n、mは両方とも正の整数であり、n>1
、m≧)のデイスク駆動機構からなり、また上記デイスク駆動機構が各々、同様
の多数の物理トラックを含んで論理トラックという物理トラックの複数セットを
形成しており、各論理トラックが上記n+m個のデイスク駆動機構の各々におけ
る同一相対アドレスに1つの物理トラックを有していてそこにデータレコードス
トリームを記憶するようになっており、上記書込み段階が
上記対応のデータプロセッサからnストリームのデータレコードを受けると、
それに応答してその受けたnストリームのデータレコードを記憶し、
上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生
成し、
上記n+m個のデイスク駆動機構の各々に対し同一相対アドレスにおいてアド
レス指定可能な可用物理トラックをもった、上記冗長セグメントのうちの1つに
おける上記論理トラックの1つを選択し、
上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受
けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記
n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ
コードストリームと各冗長セグメントをという割合で、書込む、各段階を含む、
請求の範囲19に記載の方法。
35.上記変更データ書込み段階では、上記対応データブロセッサから、上記
n+m個のデイスク駆動機構のうち上記選ばれた論理トラック上にある1つにお
ける上記選ばれた物理トラックに記憶さ
れた、上記データレコードに対する変更を後で受けた時、それに応答して、上記
n+m個のデイスク駆動機構のうち、上記選ばれた論理トラック上の1つにおけ
る上記選ばれた物理トラックを除く、上記冗長グループの1つにおける可用論理
トラックに上記変更データレコードを書込み、また
上記変換段階では、上記選ばれた冗長グループにおける上記n+m個のデイス
ク駆動機構のうち、上記最初の受けたデータレコードを記憶するのに用いられる
上記の1つにおける上記相対アドレスにおいてアドレス指定可能な上記選ばれた
物理トラックを可用物理トラックに変換する、請求の範囲34に記載の方法。
36.更に、論理トラックの残存デイスク駆動機構における対応物理トラック
が可用メモリースペースを含んでいない、上記論理トラックにおけるn+m個の
デイスク駆動機構のうちの少なくとも1つにおいて可用メモリースペースを含む
、上記冗長グループにおける上記物理トラックセットの1つに応答して、対応の
メモリーアドレスに可用メモリースペースを含まない、上記セットにおける上記
論理トラックの上記残存物理トラックからデータレコードを除去して上記特定メ
モリーアドレスにおける上記n+m個のデイスク駆動機構における上記すべての
物理トラックにおいてメモリースペースが得られるようにする段階を含む、請求
の範囲35に記載の方法。
【手続補正書】
【提出日】1997年9月9日
【補正内容】
(1) 明細書第6頁第8行(平成4年10月16日付の特許法第184条の8の規定
による補正書の翻訳文第3頁第8行)「を提供する。」の次へ改行して下記を加
入する。
『本発明においては、少なくとも1つの協働するデータプロセッサ用のデータ
記録を記憶するデイスク記憶のシステムであって、
サブセットが少なくとも2つのデイスク駆動装置から各々が構成される少なく
とも2つの冗長グループに形成される複数のデイスク駆動装置、
該協働するデータプロセッサからデータ記録の流れを受理したときそれに応答
し該冗長グループの1つにおける第1の利用可能な記憶の空間を選択しそこに該
受理したデータ記録の流れを記憶する手段、
該選択された冗長グループにおける該選択した第1の利用可能な記憶の空間に
、該受理したデータ記録の流れとこの流れに関連する冗長データとを書込む手段
、
該協働するデータプロセッサからの該冗長グループの1つに記憶される該デー
タ記録の1つに対する補正のその後の受理に応答し、該受理されたデータ記録の
残余および該第1の利用可能な記憶の空間に書込まれた該受理されたデータ記録
の流れに関連する該冗長データを除き、該補正されたデータ記録を、該冗長グル
ープの1つにおける第2の利用可能の記憶スペースへ書込み、この書込みは該書
込み手段によりその後に受理されるデータ記録の流れとともに該補正されたデー
タ記録を包含させることにより行う、データ記録書込み手段、および、
該最初に受理したデータ記録を記憶するために用いた該記憶の空間を利用可能
な記憶の空間へ変換する手段、を具備することを特徴とするデイスク記憶のシス
テム、が提供される。
また本発明においては、少なくとも2つの冗長グループに分けて構成された複
数のデイスク駆動装置を有し、各冗長グループが少なくとも2つのデイスク駆動
装置からなるデイスク記憶のシステムにおける、少なくとも1つの協働するデー
タプロセッサについてデータ記録を記憶する方法であって、該協働するデータプ
ロセッサからデータ記録の流れを受理すると、これに応答して該冗長グループの
1つにおける利用可能な記憶の空間を選択しそこに該受理したデータ記録の流れ
を記憶する段階、該受理したデータ記録の流れと、受理したデータ記録の流れに
組合わされた冗長データを、該選ばれた冗長グループにおける上記選ばれた利用
可能の記憶の空間に書込む段階、該協働するデータプロセッサから、該冗長グル
ープの1つに記憶された該データ記録の1つに対する修飾を後で受けると、それ
に応答して該冗長グループの1つにおける利用可能の記憶の空間に該変更された
データ記録を書込む段階、そして、
該最初に受理したデータ記録を記憶するために用いられた該記憶の空間を利用
可能な記憶の空間へ変換する段階、を具備するデータ記録を記憶する方法、が提
供される。』
同第30頁第2行「に記憶される。」の次へ下記を加入する。
『仮想トラックインスタンスは、仮想トラックのイメージ、または選択された
仮想トラックの物理的実現形態、と解釈されることが可能である。』
(2) 請求の範囲を添付書類のとおりに補正する。
請求の範囲
1.少なくとも1つの協働するデータプロセッサ用のデータ記録を記憶するデ
イスク記憶のシステムであって、
サブセットが少なくとも2つのデイスク駆動装置から各々が構成される少なく
とも2つの冗長グループに形成される複数のデイスク駆動装置、
該協働するデータプロセッサからデータ記録の流れを受理したときそれに応答
し該冗長グループの1つにおける第1の利用可能な記憶の空間を選択しそこに該
受理したデータ記録の流れを記憶する手段、
該選択された冗長グループにおける該選択した第1の利用可能な記憶の空間に
、該受理したデータ記録の流れとこの流れに関連する冗長データとを書込む手段
、
該協働するデータプロセッサからの該冗長グループの1つに記憶される該デー
タ記録の1つに対する補正のその後の受理に応答し、該受理されたデータ記録の
残余および該第1の利用可能な記憶の空間に書込まれた該受理されたデータ記録
の流れに関連する該冗長データを除き、該補正されたデータ記録を、該冗長グル
ープの1つにおける第2の利用可能の記憶スペースへ書込み、この書込みは該書
込み手段によりその後に受理されるデータ記録の流れとともに該補正されたデー
タ記録を包含させることにより行う、データ記録書込み手段、および、
該最初に受理したデータ記録を記憶するために用いた該記憶の空間を利用可能
な記憶の空間へ変換する手段、を具備することを特徴とするデイスク記憶のシス
テム。
2.該少なくとも2つのデイスク駆動装置の1つにおける対応の特定の記憶装
置アドレスが利用可能な記憶の空間を含んでいない、上記少なくとも2つのデイ
スク駆動装置の少なくとも1つにおける特定アドレスに利用可能な記憶の空間を
含む上記冗長グループの1つに応答して、対応の記憶装置のアドレスに利用可能
な記憶の空間を含まない、上記少なくとも2つのデイスク駆動装置の1つからデ
ータ記録を除去して上記少なくとも2つのデイスク駆動装置のすべてにおける上
記特定記憶装置アドレスにおいて記憶の空間が得られるようにする手段をさらに
具備する、請求の範囲1記載のデイスク記憶のシステム。
3.該データ記録除去手段に応答し、該対応データプロセッサから受理した少
なくとも1つのデータ記録と該除去されたデータ記録を組み合わせてデータ記録
の併合した流れを形成させる手段と、
該データ記録の併合した流れの連続部分を該冗長グループの1つにおける該少
なくとも2つのデイスク駆動装置のうち対応するものに書込む手段とをさらに具
備する、請求の範囲2記載のデイスク記憶のシステム。
4.該冗長グループにより共用されるバックアップデイスク駆動装置として該
複数のデイスク駆動装置のうち少なくとも1つを保持する手段と、
該冗長グループの1つにおける該少なくとも2つのデイスク駆動装置のうち故
障したものを識別する手段と、
該識別された故障デイスク駆動装置の代わりに該バックアップデイスク駆動装
置の1つを切換え可能に接続する手段とをさらに具備する、請求の範囲1記載の
デイスク記憶のシステム。
5.該識別された故障デイスク駆動装置に書込まれている該データ記録の流れ
を、該対応冗長グループを用いて再構成する手段と、
該1つのバックアップデイスク駆動装置に該再構成されたデータ記録の流れを
書込む手段とをさらに包含する、請求の範囲4記載のデイスク記憶のシステム。
6.該再構成手段は、該対応冗長データと、上記冗長グループにおける残存デ
イスク駆動装置に書込まれているデータ記録とを用いて、該識別された故障デイ
スク駆動装置に書込まれている該データ記録の流れを発生させる手段を包含する
、請求の範囲5記載のデイスク記憶のシステム。
7.該受理したデータ記録の流れが記憶されている該選択された冗長グループ
における、該受理したデータ記録の流れの各々と、該少なくとも2つのデイスク
駆動装置の1つの同定との対応を表わすデータを維持する手段をさらに具備する
、請求の範囲1記載のデイスク記憶のシステム。
8.該データ記録の流れの発生手段が、
マルチビット誤りコードを生成して上記受けたデータ記録の流れの少なくとも
2つの冗長区分を形成する手段を含んでいる、請求の範囲6記載のデイスク記憶
のシステム。
9.該冗長グループが、n,mはいずれも正の整数、nは1より大、mは1に
等しいかそれより大、であるときn+m個のデイスク駆動装置を含み、該書込み
手段(101〜103)が、
選ばれた冗長グループにおける該n個のデイスク駆動装置のうち連続したもの
における該協働するデータプロセッサから受理した各データ記録の流れを記憶す
る手段と、
該選ばれた冗長グループにおけるn個すべてのデイスク駆動装置にデータ記録
の流れを記憶する該記憶手段に応答し、該n個のデイスク駆動装置に記憶されて
いる該データ記録に対しm区分のデータ冗長情報を発生させる手段と、
該選択された冗長グループの該m個のデイスク駆動装置へ該m区分の冗長デー
タを書込む手段とを含む、請求の範囲1に記載のデイスク記憶のシステム。
10.各冗長グループが、n,mはいずれも正の整数、nは1より大、mは1に
等しいかそれより大、であるときn+m個のデイスク駆動装置からなり、該書込
み手段が、
該対応のデータプロセッサからn個の流れのデータ記録を受理すると、それに
応答し受理したn個の流れのデータ記録を記憶する手段と、
該受理したn個の流れのデータ記録を用いてm個の冗長の区分を発生させる手
段と、
該受理したn個の流れのデータ記録と該m個の冗長の区分を該冗長グループの
うち選択された1つに、該選択された冗長グループにおける該第1の利用可能な
空間における該n+m個のデイスク駆動装置の対応する1つの上に、1つは該デ
ータ記録を1つの流れ、1つは該冗長の区分、として書込む手段とを含む、請求
の範囲1に記載のデイスク記憶のシステム。
11.各冗長グループがn,mはいずれも正の整数、nは1より大、mは1に等
しいかそれより大であるときn+m個のデイスク駆動装置からなり、該書込み手
段が
該対応のデータプロセッサからn個の流れのデータ記録を受理すると、それに
応答し受理したn個の流れのデータ記録を記憶する手段と、
上記受けたn個の流れのデータ記録を用いてm個の冗長区分を生成する手段と
、
該選択された冗長グループにおける該n+m個のデイスク駆動装置の各々に対
し同一相対アドレスにおいてアドレス指定可能な、利用可能な記憶スペースを選
び、該受理したn個の流れのデータ記録と、該m個の生成した冗長区分とを記憶
する手段と、
該選択された冗長グループにおける該n+m個のデイスク駆動装置に該受理し
たn個の流れのデータ記録と該n+m個の冗長区分とを、該n+m個のデイスク
駆動装置のそれぞれにおける該相対アドレスに各データ記録の流れと各冗長区分
をという割合で、書込む手段とを含む、請求の範囲1に記載のデイスク記憶のシ
ステム。
12.各冗長グループが、n,mはいずれも正の整数、nは1より大、mは1に
等しいかそれより大であるときn+m個のデイスク駆動装置からなり、また上記
デイスク駆動装置が各々、同様の多数の物理トラックを含んで論理トラックとい
う物理トラックの複数の組を形成し、各論理トラックが該n+m個のデイスク駆
動装置の各々における同一相対アドレスに1つの物理トラックを有しそこにデー
タ記録の流れを記憶するようになっており、該書込み手段が
該対応のデータプロセッサからn個の流れのデータ記録を受理すると、それに
応答し受理したn個の流れのデータ記録を記憶する手段と、
該受理したn個の流れのデータ記録を用いてm個の冗長区分を発生させる手段
と、
該n+m個のデイスク駆動装置の各々に対し同一相対アドレスにおいてアドレ
ス指定可能な、利用可能な物理トラックをもつ該冗長区分のうちの1つにおける
該論理トラックの1つを選択する手段と、
該選ばれた冗長グループにおける該n+m個のデイスク駆動装置に該受理した
n個の流れのデータ記録と該n+m個の冗長区分とを、該n+m個のデイスク駆
動装置のそれぞれにおける該相対アドレスに各データ記録の流れと各冗長区分を
という割合で、書込む手段とを含む、請求の範囲1に記載のデイスク記憶のシス
テム。
13.該変更データ書込み手段は、該対応データプロセッサから、該n+m個の
デイスク駆動装置のうち該選ばれた論理トラック上の1つにおける該選ばれた物
理トラックに記憶された、該データ記録に対する変更を後で受けたとき、それに
応答して、該n+m個のデイスク駆動装置のうち、該選ばれた論理トラック上の
1つにおける該選ばれた物理トラックを除く、該冗長グループの1つにおける利
用可能な論理トラックに該変更データ記録を書込むようになっており、また
該変換手段が該選ばれた冗長グループにおける該n+m個のデイスク駆動装置
のうち、該最初の受理したデータ記録を記憶するのに用いられる該1つにおける
該相対アドレスにおいてアドレス指定可能な該選ばれた物理トラックを利用可能
な物理トラックへ変換するようになっている、請求の範囲12に記載のデイスク記
憶のシステム。
14.論理トラックの残存デイスク駆動装置における対応物理トラックが利用可
能な記憶の空間を含んでいない、該論理トラックにおけるn+m個のデイスク駆
動装置の少なくとも1つにおいて利用可能な記憶の空間を含む、該冗長グループ
における該物理トラックの組の1つに応答して、対応の記憶装置アドレスに利用
可能な記憶の空間を含まない、該組における該論理トラックの該残存物理トラッ
クからデータ記録を除去して該特定の記憶装置アドレスにおける該n+m個のデ
イスク駆動装置における該すべての物理トラックにおいて記憶の空間が得られる
ようにする手段をさらに具備する、請求の範囲13に記載のデイスク記憶のシステ
ム。
15.少なくとも2つの冗長グループに分けて構成された複数のデイスク駆動装
置を有し、各冗長グループが少なくとも2つのデイスク駆動装置からなるデイス
ク記憶のシステムにおける、少なくとも1つの協働するデータプロセッサについ
てデータ記録を記憶する方法であって、
該協働するデータプロセッサからデータ記録の流れを受理すると、これに応答
して該冗長グループの1つにおける利用可能な記憶の空間を選択しそこに該受理
したデータ記録の流れを記憶する段階、
該受理したデータ記録の流れと、受理したデータ記録の流れに組合わされた冗
長データを、該選ばれた冗長グループにおける上記選ばれた利用可能の記憶の空
間に書込む段階、
該協働するデータプロセッサから、該冗長グループの1つに記憶された該デー
タ記録の1つに対する修飾を後で受けると、それに応答して該冗長グループの1
つにおける利用可能の記憶の空間に該変更されたデータ記録を書込む段階、そし
て、
該最初に受理したデータ記録を記憶するために用いられた該記憶の空間を利用
可能な記憶の空間へ変換する段階、を具備するデータ記録を記憶する方法。
16.該少なくとも2つのデイスク駆動装置の1つにおける対応の特定の記憶装
置のアドレスが利用可能な記憶の空間を含んでいない、該少なくとも2つのデイ
スク駆動装置の少なくとも1つにおける特定アドレスに利用可能な記憶の空間を
含む該冗長グループの1つに応答して、対応のメモリーアドレスに利用可能な記
録の空間を含まない、該少なくとも2つのデイスク駆動装置の1つからデータ記
録を除去して該少なくとも2つのデイスク駆動装置のすべてにおける該特定メモ
リーアドレスにおいて記憶の空間が得られるようにする段階をさらに具備する、
請求の範囲15記載の方法。
17.該データ記録除去手段に応答して、該対応データプロセッサから受けた少
なくとも1つのデータ記録と該除去されたデータ記録を組み合わせてデータ記録
の併合の流れを形成し、
該データ記録の併合の流れの連続部分を該冗長グループの1つにおける該少な
くとも2つのデイスク駆動装置のうち対応するものに書込む、各段階をさらに具
備する、請求の範囲16記載の方法。
18.該冗長グループが共用するバックアップデイスク駆動装置として上記複数
のデイスク駆動装置のうち少なくとも1つを確保し、
該冗長グループの1つにおける該少なくとも2つのデイスク駆動装置のうち故
障したものを同定し、
該同定された故障デイスク駆動装置の代わりに該バックアップデイスク駆動装
置の1つを切換え自在に動作投入する、各段階をさらに具備する、請求の範囲15
記載の方法。
19.該同定された故障デイスク駆動装置に書込まれている該データ記録の流れ
を、該対応冗長グループを用いて再構成し、
該1つのバックアップデイスク駆動機構に該再構成されたデータ記録の流れを
書込む、各段階をさらに具備する、請求の範囲18記載の方法。
20.該再構成段階は、
該対応冗長データと、該冗長グループにおける残存デイスク駆動装置に書込ま
れているデータ記録とを用いて、上記同定された故障デイスク駆動装置に書込ま
れている該データ記録の流れを生成する段階を具備する、請求の範囲19記載の方
法。
21.該受けた各データ記録の流れと、該選ばれた冗長グループにおける該少な
くとも2つのデイスク駆動装置のうち、該受理したデータ記録の流れを記憶して
いる1つの同一性との対応性を示すデータを維持する段階をさらに具備する、請
求の範囲15記載の方法。
22.該冗長グループはn+m個(n,mはともに正の整数であり、n>1,m
≧1)のデイスク駆動装置を含み、該書込み段階は、
選択された冗長グループにおける該n個のデイスク駆動装置のうち連続したも
のにおける該対応のデータプロセッサから受理した各データ記録の流れを記憶し
、
該選ばれた冗長グループにおけるn個すべてのデイスク駆動装置にデータ記録
の流れを記憶する該記憶手段に応答して、該n個のデイスク駆動装置に記憶され
ている該データ記録に対してm個の区分のデータ冗長情報を発生させ、
該選ばれた冗長グループの該m個のデイスク駆動装置へ該m個の区分の冗長デ
ータを書込む、各段階を具備する、請求の範囲15記載の方法。
23.各冗長グループは、n,mはいずれも正の整数、nは1より大、mは1に
等しいかそれより大であるときn+m個のデイスク駆動装置からなり、該書込み
段階は、
該対応のデータプロセッサからn個の流れのデータ記録を受けると、それに応
答してその受理したn個の流れのデータ記録を記憶し、
該受理したn個の流れのデータ記録を用いてm個の冗長の区分を生成し、
該受理したn個の流れのデータ記録と該m個の冗長の区分を該冗長グループの
うち選択された1つに、該選択された冗長グループにおける該第1の利用可能な
空間における該n+m個のデイスク駆動装置の対応する1つの上に、1つは該デ
ータ記録を1つの流れ、1つは該冗長の区分、として書込む、各段階を含む、請
求の範囲15記載の方法。
24.各冗長グループはn,mはいずれも正の整数、nは1より大、mは1に等
しいかそれより大であるときn+m個のデイスク駆動装置からなり、該書込み段
階が
該対応のデータプロセッサからn個の流れのデータ記録を受理すると、それに
応答して受理したn個の流れのデータ記録を記憶し、
該受理したn個の流れのデータ記録を用いてm個の冗長の区分を発生させ、
該選択された冗長グループにおける該n+m個のデイスク駆動装置の各々に対
し同一相対アドレスにおいてアドレス指定可能な可用記憶の空間を選択し、該受
理したn個の流れのデータ記録と、該m個の発生した冗長の区分とを記憶し、
該選択された冗長グループにおける該n+m個のデイスク駆動装置に該受理し
たn個の流れのデータ記録と該n+m個の冗長の区分とを、該n+m個のデイス
ク駆動装置のそれぞれにおける該相対アドレスに各データ記録の流れと各冗長の
区分をという割合で、書込む、各段階を含む、請求の範囲15記載の方法。
25.各冗長グループは、n,mはいずれも正の整数、nは1より大、mは1に
等しいかそれより大であるときn+m個のデイスク駆動装置からなり、また該デ
イスク駆動装置が各々、同様の多数の物理トラックを含んで論理トラックという
物理トラックの複数の組を形成し、各論理トラックが該n+m個のデイスク駆動
装置の各々における同一相対アドレスに1つの物理トラックを有しそこにデータ
記録の流れを記憶するようになっており、該書込み段階が
該対応のデータプロセッサからn個の流れのデータ記録を受理すると、それに
応答して受理したn個の流れのデータ記録を記憶し、
該受理したn個の流れのデータ記録を用いてm個の冗長の区分を生成し、
該n+m個のデイスク駆動装置の各々について同一の相対アドレスにおいてア
ドレス可能な、利用可能な物理トラックをもつ該冗長の区分のうちの1つにおけ
る該論理トラックの1つを選択し、
該選択された冗長グループにおける該n+m個のデイスク駆動装置に該受理し
たn個の流れのデータ記録と該n+m個の冗長の区分とを、該n+m個のデイス
ク駆動装置のそれぞれにおける該相対アドレスに各データ記録の流れと各冗長区
分をという割合で、書込む、各段階を含む、請求の範囲15記載の方法。
26.該変更データ書込み段階では、該対応データプロセッサから、該n+m個
のデイスク駆動装置のうち該選択された論理トラック上にある1つにおける該選
ばれた物理トラックに記憶された、該データ記録に対する変更を後で受けたとき
、それに応答して、該n+m個のデイスク駆動装置のうち、該選ばれた論理トラ
ック上の1つにおける該選ばれた物理トラックを除く、該冗長グループの1つに
おける利用可能な論理トラックに該変更データ記録を書込み、また
該変換段階では、該選択された冗長グループにおける該n+m個のデイスク駆
動装置のうち、該最初の受けたデータ記録を記憶するために用いられる該1つに
おける該相対アドレスにおいてアドレス指定可能な該選択された物理トラックを
利用可能な物理トラックに変換する、請求の範囲25記載の方法。
27.論理トラックの残存デイスク駆動装置における対応物理トラックが利用可
能な記憶の空間を含まない該論理トラックにおけるn+m個のデイスク駆動装置
のうちの少なくとも1つにおいて利用可能な記録の空間を含む該冗長グループに
おける該物理トラックセットの1つに応答し、対応する記憶装置アドレスに利用
可能な記憶の空間を含まない該組における該論理トラックの該残存物理トラック
から、データ記録を除去し、該特定の記憶装置のアドレスにおいて、該n+m個
のデイスク駆動装置上の該物理トラックのすべてにおいて記憶の空間を利用可能
にする段階をさらに具備する、請求の範囲26記載の方法。
Claims (1)
- 【特許請求の範囲】 1.少なくとも1つの協働するデータプロセッサに対してデータ記録を記憶す るデイスクメモリーシステムであって、 そのサブセットが、各々が少なくとも2つのデイスク駆動機構からなる少なく とも2つの冗長グループに分けて形成した複数のデイスク駆動機構、 該協働するデータプロセッサからデータ記録の流れを受けると、それに応答し て上記冗長グループの1つにおける利用可能のメモリースペースを選択してそこ に上記の受信データ記録の流れを記憶する手段、 上記の選択した冗長グループにおける上記の選択した利用可能のメモリースペ ースに、上記の受信データ記録の流れとこの流れに関連する冗長データとを書込 む手段、 該協働するデータプロセッサから、上記冗長グループの1つに記憶された上記 データ記録の1つに対する修飾を後で受けると、それに応答して上記冗長グルー プの1つにおける利用可能のメモリースペースに上記の修飾されたデータ記録を 書込む手段、および、 上記の最初に受けたデータ記録を記憶するのに用いた上記メモリースペースを 利用可能のメモリースペースに変換する手段、を具備するデイスクメモリーシス テム。 2.更に、上記少なくとも2つのデイスク駆動機構の1つにおける対応の特定 メモリーアドレスが可用メモリースペースを含んでいない、上記少なくとも2つ のデイスク駆動機構の少なくとも1つにおける特定アドレスに可用メモリースペ ースを含む上記冗長グループの1つに応答して、対応のメモリーアドレスに可用 メモリースペースを含まない、上記少なくとも2つのデイスク駆動機構の1つか らデータレコードを除去して上記少なくとも2つのデイスク駆動機構のすべてに おける上記特定メモリーアドレスにおいてメモリースペースが得られるようにす る手段を含む、請求の範囲1に記載のデイスクメモリーシステム。 3.更に、上記データレコード除去手段に応答して、上記対応データプロセッ サから受けた少なくとも1つのデータレコードと上記除去されたデータレコード を組み合わせてデータレコードの併合ストリームを形成する手段と、 上記データレコードの併合ストリームの連続部分を上記冗長グループの1つに おける上記少なくとも2つのデイスク駆動機構のうち対応するものに書込む手段 とを含んでいる、請求の範囲2に記載のデイスクメモリーシステム。 4.更に、上記冗長グループが共用するバックアップデイスク駆動機構として 上記複数のデイスク駆動機構のうち少なくとも1つを確保する手段と、 上記冗長グループの1つにおける上記すくなくとも2つのデイスク駆動機構の うち故障したものを同定する手段と、 上記の同定された故障デイスク駆動機構の代わりに上記バックアップデイスク 駆動機構の1つを切換え自在に動作投入する手段手段とを含む、請求の範囲1に 記載のデイスクメモリーシステム。 5.更に、上記同定された故障デイスク駆動機構に書込まれている上記データ レコードストリームを、上記対応冗長グループを用いて再構成する手段と、 上記1つバックアップデイスク駆動機構に上記再構成したデータレコードスト リームを書込む手段とを含む、請求の範囲4に記載のデイスクメモリーシステム 。 6.上記再構成手段が、 上記対応冗長データと、上記冗長グループにおける残存デイスク駆動機構に書 込まれているデータレコードとを用いて、上記同定された故障デイスク駆動機構 に書込まれている上記データレコードストリームを生成する手段を含んでいる、 請求の範囲5に記載のデイスクメモリーシステム。 7.更に、上記受けた各データレコードストリームと、上記選ばれた冗長グル ープにおける上記少なくとも2つのデイスク駆動機構のうち、上記受けたデータ レコードストリームを記憶している1つの同一性との対応性を示すデータを維持 する手段を含む、請求の範囲1に記載のデイスクメモリーシステム。 8.上記データレコードストリーム生成手段が、 マルチビットエラーコードを生成して上記受けたデータレコードストリームの 少なくとも2つの冗長セグメントを形成する手段を含んでいる、請求の範囲6に 記載のデイスクメモリーシステム。 9.上記データレコードストリーム生成手段が更に、 上記受けたデータレコードストリームに対し少なくとも1つの冗長セグメント を生成する手段と、 上記生成された少なくとも1つの冗長セグメントと組み合わさった上記受けた データレコードストリームに対し少なくとも1つの冗長セグメントを生成する手 段とを含む、請求の範囲8に記載のデイスクメモリーシステム。 10.上記冗長セグメントの1つがパリテイセグメントである、請求の範囲9 に記載のデイスクメモリーシステム。 11.上記冗長セグメントのうち少なくとも2つがマルチビット検出・補正コ ードである、請求の範囲8に記載のデイスクメモリーシステム。 12.上記割り付け手段が 少なくとも2種類の冗長グループサイズを選択する手段と、 上記冗長グループの各々のサイズを示すデータを記憶する手段とを含む、請求 の範囲1に記載のデイスクメモリーシステム。 13.上記冗長グループがn+m個(n、mは両方とも正の整数であり、n〉 1、m≧)のデイスク駆動機構を含み、上記書込み手段が 選ばれた冗長グループにおける上記n個のデイスク駆動機構のうち連続したも のにおける上記対応のデータプロセッサから受けた各データレコードストリーム を記憶する手段と、 上記選ばれた冗長グループにおけるn個すべてのデイスク駆動機構にデータレ コードストリームを記憶する上記記憶手段に応答して、上記n個のデイスク駆動 機構に記憶されている上記データレコードに対してmセグメントのデータ冗長情 報を生成する手段と、 上記選ばれた冗長グループの上記m個のデイスク駆動機構へ上記mセグメント の冗長データを書込む手段とを含む、請求の範囲1に記載のデイスクメモリーシ ステム。 14.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、上記書込み手段が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶する手段と、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成する手段と、 上記冗長グループのうち選ばれた1つに上記受けたnストリームのデータレコ ードと上記m個の冗長セグメントとを、上記選ばれた冗長グループにおける上記 n+m個のデイスク駆動機構のうち対応 の1つに上記のデータレコードを1ストリームおよび上記冗長セグメントを1個 という割合で、書込む手段とを含む、請求の範囲1に記載のデイスクメモリーシ ステム。 15.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、上記書込み手段が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶する手段と、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成する手段と、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構の各々に 対し同一相対アドレスにおいてアドレス指定可能な可用メモリースペースを選び 、上記受けたnストリームのデータレコードと、上記m個の生成した冗長セグメ ントとを記憶する手段と、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受 けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記 n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ コードストリームと各冗長セグメントをという割合で、書込む手段とを含む、請 求の範囲1に記載のデイスクメモリーシステム。 16.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、また上記デイスク駆動機構が各々、同様 の多数の物理トラックを含んで論理トラックという物理トラックの複数セットを 形成しており、各論理トラックが上記n+m個のデイスク駆動機構の各々におけ る同一相対アドレスに1つの物理トラックを有していてそこにデータレコードス トリームを記憶するようになっており、上記書込み手段が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶ずる手段と、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成する手段と、 上記n+m個のデイスク駆動機構の各々に対し同一相対アドレスにおいてアド レス指定可能な可用物理トラックをもった、上記冗長セグメントのうちの1つに おける上記論理トラックの1つを選択する手段と、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受 けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記 n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ コードストリームと各冗長セグメントをという割合で、書込む手段とを含む、請 求の範囲1に記載のデイスクメモリーシステム。 17.上記変更データ書込み手段が、上記対応データプロセッサから、上記n +m個のデイスク駆動機構のうち上記選ばれた論理トラック上にある1つにおけ る上記選ばれた物理トラックに記憶された、上記データレコードに対する変更を 後で受けた時、それに応答して、上記n+m個のデイスク駆動機構のうち、上記 選ばれた論理トラック上の1つにおける上記選ばれた物理トラックを除く、上記 冗長グループの1つにおける可用論理トラックに上記変更データレコードを書込 むようになっており、また 上記変換手段が上記選ばれた冗長グループにおける上記n+m個のデイスク駆 動機構のうち、上記最初の受けたデータレコードを記憶するのに用いられる上記 の1つにおける上記相対アドレスにおい てアドレス指定可能な上記選ばれた物理トラックを可用物理トラックに変換する ようになっている、請求の範囲16に記載のデイスクメモリーシステム。 18.更に、論理トラックの残存デイスク駆動機構における対応物理トラック が可用メモリースペースを含んでいない、上記論理トラックにおけるn+m個の デイスク駆動機構のうちの少なくとも1つにおいて可用メモリースペースを含む 、上記冗長グループにおける上記物理トラックセットの1つに応答して、対応の メモリーアドレスに可用メモリースペースを含まない、上記セットにおける上記 論理トラックの上記残存物理トラックからデータレコードを除去して上記特定メ モリーアドレスにおける上記n+m個のデイスク駆動機構における上記すべての 物理トラックにおいてメモリースペースが得られるようにする手段を含む、請求 の範囲17に記載のデイスクメモリーシステム。 19.少なくとも2つの冗長グループに分けて構成された複数のデイスク駆動 機構を有しており、各冗長グループが少なくとも2つのデイスク駆動機構からな るデイスクメモリーシステムにおける、少なくとも1つの協働するデータプロセ ッサに対してデータ記録を記憶する方法であって、 該協働するデータプロセッサからデータ記録の流れを受けると、これに応答し て上記冗長グループの1つにおける利用可能のメモリースペースを選択してそこ に上記受けたデータ記録の流れを記憶する段階、 上記受けたデータ記録の流れと、この受けたデータ記録の流れに組み合わされ た冗長データとを、上記選ばれた冗長グループにおける上記選ばれた利用可能の メモリースペースに書込む段階、 該協働するデータプロセッサから、上記冗長グループの1つに記 憶された上記データ記録の1つに対する修飾を後で受けると、それに応答して上 記冗長グループの1つにおける可用メモリースペースに上記の変更されたデータ 記録を書込む段階、そして、 上記の最初に受けたデータ記録を記憶するのに用いた上記メモリースペースを 利用可能のメモリースペースに変換する段階、を含む方法。 20.更に、上記少なくとも2つのデイスク駆動機構の1つにおける対応の特 定メモリーアドレスが可用メモリースペースを含んでいない、上記少なくとも2 つのデイスク駆動機構の少なくとも1つにおける特定アドレスに可用メモリース ペースを含む上記冗長グループの1つに応答して、対応のメモリーアドレスに可 用メモリースペースを含まない、上記少なくとも2つのデイスク駆動機構の1つ からデータレコードを除去して上記少なくとも2つのデイスク駆動機構のすべて における上記特定メモリーアドレスにおいてメモリースペースが得られるように する段階を含む、請求の範囲19に記載の方法。 21.更に、上記データレコード除去手段に応答して、上記対応データプロセ ッサから受けた少なくとも1つのデータレコードと上記除去されたデータレコー ドを組み合わせてデータレコードの併合ストリームを形成し、 上記データレコードの併合ストリームの連続部分を上記冗長グループの1つに おける上記少なくとも2つのデイスク駆動機構のうち対応するものに書込む、各 段階を含んでいる、請求の範囲20に記載の方法。 22.更に、上記冗長グループが共用するバックアップデイスク駆動機構とし て上記複数のデイスク駆動機構のうち少なくとも1つを確保し、 上記冗長グループの1つにおける上記少なくとも2つのデイスク駆動機構のう ち故障したものを同定し、 上記の同定された故障デイスク駆動機構の代わりに上記バックアップデイスク 駆動機構の1つを切換え自在に動作投入する、各段阻を含む、請求の範囲19に 記載の方法。 23.更に、上記同定された故障デイスク駆動機構に書込まれている上記デー タレコードストリームを、上記対応冗長グループを用いて再構成し、 上記1つバックアップデイスク駆動機構に上記再構成したデータレコードスト リームを書込む、各段階を含む、請求の範囲22に記載の方法。 24.上記再構成段階が、 上記対応冗長データと、上記冗長グループにおける残存デイスク駆動機構に書 き込まれてるデータレコードとを用いて、上記同定された故障デイスク駆動機構 に書込まれている上記データレコードストリームを生成する段階を含んでいる、 請求の範囲23に記載の方法。 25.更に、上記受けた各データレコードストリームと、上記選ばれた冗長グ ループにおける上記少なくとも2つのデイスク駆動機構のうち、上記受けたデー タレコードストリームを記憶している1つの同一性との対応性を示すデータを維 持する段階を含む、請求の範囲19に記載の方法。 26.上記データレコードストリーム生成段階が、 マルチビットエラーコードを生成して上記受けたデータレコードストリームの 少なくとも2つの冗長セグメントを形成する段階を含んでいる、請求の範囲24 に記載の方法。 27.上記データレコードストリーム生成段階が更に、 上記受けたデータレコードストリームに対し少なくとも1つの冗長セグメント を生成し、 上記生成された少なくとも1つの冗長セグメントと組み合わさった上記受けた データレコードストリームに対し少なくとも1つの冗長セグメントを生成する、 各段階を含む、請求項の範囲26に記載の方法。 28.上記冗長セグメントの1つがパリテイセグメントである、請求の範囲2 7に記載の方法。 29.上記冗長セグメントのうち少なくとも2つがマルチビット検出・補正コ ードである、請求の範囲26に記載の方法。 30.上記割り付け段階が 少なくとも2種類の冗長グループサイズを選択し、 上記冗長グループの各々のサイズを示すデータを記憶する、各段階を含む、請 求の範囲19に記載の方法。 31.上記冗長グループがn+m個(n、mは両方とも正の整数であり、n〉 1、m≧)のデイスク駆動機構を含み、上記書込み段階が 選ばれた冗長グループにおける上記n個のデイスク駆動機構のうち連続したも のにおける上記対応のデータプロセッサから受けた各データレコードストリーム を記憶し、 上記選ばれた冗長グループにおけるn個すべてのデイスク駆動機構にデータレ コードストリームを記憶する上記記憶手段に応答して、上記n個のデイスク駆動 機構に記憶されている上記データレコードに対してmセグメントのデータ冗長情 報を生成し、 上記選ばれた冗長グループの上記m個のデイスク駆動機構へ上記mセグメント の冗長データを書込む、各段階を含む、請求の範囲19に記載の方法。 32.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、上記書込み段階が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶し、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成し、 上記冗長グループのうち選ばれた1つに上記受けたnストリームのデータレコ ードと上記m個の冗長セグメントとを、上記選ばれた冗長グループにおける上記 n+m個のデイスク駆動機構のうち対応の1つに上記のデータレコードを1スト リームおよび上記冗長セグメントを1個という割合で、書込む、各段階を含む、 請求の範囲19に記載の方法。 33.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、上記書込み段階が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶し、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成し、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構の各々に 対し同一相対アドレスにおいてアドレス指定可能な可用メモリースペースを選び 、上記受けたnストリームのデータレコードと、上記m個の生成した冗長セグメ ントとを記憶し、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動 機構に上記受けたnストリームのデータレコードと上記n+m個の冗長セグメン トとを、上記n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレス に各データレコードストリームと各冗長セグメントをという割合で、書込む、各 段階を含む、請求の範囲19に記載の方法。 34.各冗長グループがn+m個(n、mは両方とも正の整数であり、n〉1 、m≧)のデイスク駆動機構からなり、また上記デイスク駆動機構が各々、同様 の多数の物理トラックを含んで論理トラックという物理トラックの複数セットを 形成しており、各論理トラックが上記n+m個のデイスク駆動機構の各々におけ る同一相対アドレスに1つの物理トラックを有していてそこにデータレコードス トリームを記憶するようになっており、上記書込み段階が 上記対応のデータプロセッサからnストリームのデータレコードを受けると、 それに応答してその受けたnストリームのデータレコードを記憶し、 上記受けたnストリームのデータレコードを用いてm個の冗長セグメントを生 成し、 上記n+m個のデイスク駆動機構の各々に対し同一相対アドレスにおいてアド レス指定可能な可用物理トラックをもった、上記冗長セグメントのうちの1つに おける上記論理トラックの1つを選択し、 上記選ばれた冗長グループにおける上記n+m個のデイスク駆動機構に上記受 けたnストリームのデータレコードと上記n+m個の冗長セグメントとを、上記 n+m個のデイスク駆動機構のそれぞれにおける上記相対アドレスに各データレ コードストリームと各冗長セグメントをという割合で、書込む、各段階を含む、 請求の範囲19に記載の方法。 35.上記変更データ書込み段階では、上記対応データプロセッ サから、上記n+m個のデイスク駆動機構のうち上記選ばれた論理トラック上に ある1つにおける上記選ばれた物理トラックに記憶された、上記データレコード に対する変更を後で受けた時、それに応答して、上記n+m個のデイスク駆動機 構のうち、上記選ばれた論理トラック上の1つにおける上記選ばれた物理トラッ クを除く、上記冗長グループの1つにおける可用論理トラックに上記変更データ レコードを書込み、また 上記変換段階では、上記選ばれた冗長グループにおける上記n+m個のデイス ク駆動機構のうち、上記最初の受けたデータレコードを記憶するのに用いられる 上記の1つにおける上記相対アドレスにおいてアドレス指定可能な上記選ばれた 物理トラックを可用物理トラックに変換する、請求の範囲34に記載の方法。 36.更に、論理トラックの残存デイスク駆動機構における対応物理トラック が可用メモリースペースを含んでいない、上記論理トラックにおけるn+m個の デイスク駆動機構のうちの少なくとも1つにおいて可用メモリースペースを含む 、上記冗長グループにおける上記物理トラックセットの1つに応答して、対応の メモリーアドレスに可用メモリースペースを含まない、上記セットにおける上記 論理トラックの上記残存物理トラックからデータレコードを除去して上記特定メ モリーアドレスにおける上記n+m個のデイスク駆動機構における上記すべての 物理トラックにおいてメモリースペースが得られるようにする段階を含む、請求 の範囲35に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/509,484 US5124987A (en) | 1990-04-16 | 1990-04-16 | Logical track write scheduling system for a parallel disk drive array data storage subsystem |
US509,484 | 1990-04-16 | ||
PCT/US1991/002358 WO1991016711A1 (en) | 1990-04-16 | 1991-04-05 | Logical track write scheduling system for a parallel disk drive array data storage subsystem |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10511193A true JPH10511193A (ja) | 1998-10-27 |
JP3302688B2 JP3302688B2 (ja) | 2002-07-15 |
Family
ID=24026794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP50765691A Expired - Fee Related JP3302688B2 (ja) | 1990-04-16 | 1991-04-05 | 並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステム |
Country Status (8)
Country | Link |
---|---|
US (1) | US5124987A (ja) |
EP (1) | EP0526487B1 (ja) |
JP (1) | JP3302688B2 (ja) |
AT (1) | ATE159110T1 (ja) |
AU (1) | AU654482B2 (ja) |
CA (1) | CA2080579C (ja) |
DE (2) | DE69127895T4 (ja) |
WO (1) | WO1991016711A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6327673B1 (en) | 1991-01-31 | 2001-12-04 | Hitachi, Ltd. | Storage unit subsystem |
US6874101B2 (en) | 1991-01-31 | 2005-03-29 | Hitachi, Ltd. | Storage unit subsystem |
Families Citing this family (266)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2830218B2 (ja) * | 1989-11-22 | 1998-12-02 | 株式会社日立製作所 | キャッシュ付ディスク制御装置の障害処理方法 |
JPH03194774A (ja) * | 1989-12-25 | 1991-08-26 | Hitachi Ltd | 外部記憶装置の不良ブロック交替処理方式 |
US5263145A (en) * | 1990-05-24 | 1993-11-16 | International Business Machines Corporation | Method and means for accessing DASD arrays with tuned data transfer rate and concurrency |
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 |
US5247638A (en) * | 1990-06-18 | 1993-09-21 | Storage Technology Corporation | Apparatus for compressing data in a dynamically mapped virtual data storage subsystem |
US5265098A (en) * | 1990-08-03 | 1993-11-23 | International Business Machines Corporation | Method and means for managing DASD array accesses when operating in degraded mode |
EP0502207B1 (en) * | 1990-09-20 | 1997-08-27 | Fujitsu Limited | Input/output controller |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
DE69131551T2 (de) * | 1990-11-09 | 2000-02-17 | Emc Corp., Hopkinton | Logische Aufteilung eines Speichersystems mit redundanter Matrix |
US5239640A (en) * | 1991-02-01 | 1993-08-24 | International Business Machines Corporation | Data storage system and method including data and checksum write staging storage |
US5301310A (en) * | 1991-02-07 | 1994-04-05 | Thinking Machines Corporation | Parallel disk storage array system with independent drive operation mode |
US5303244A (en) * | 1991-03-01 | 1994-04-12 | Teradata | Fault tolerant disk drive matrix |
US5257362A (en) * | 1991-03-08 | 1993-10-26 | International Business Machines Corporation | Method and means for ensuring single pass small read/write access to variable length records stored on selected DASDs in a DASD array |
US5345565A (en) * | 1991-03-13 | 1994-09-06 | Ncr Corporation | Multiple configuration data path architecture for a disk array controller |
US5239659A (en) * | 1991-06-19 | 1993-08-24 | Storage Technology Corporation | Phantom duplex copy group apparatus for a disk drive array data storge subsystem |
JP2913917B2 (ja) | 1991-08-20 | 1999-06-28 | 株式会社日立製作所 | 記憶装置および記憶装置システム |
US5481694A (en) * | 1991-09-26 | 1996-01-02 | Hewlett-Packard Company | High performance multiple-unit electronic data storage system with checkpoint logs for rapid failure recovery |
JPH0823802B2 (ja) * | 1991-11-13 | 1996-03-06 | 富士通株式会社 | アレイディスク装置の状態表示方式 |
US5802264A (en) * | 1991-11-15 | 1998-09-01 | Fujitsu Limited | Background data reconstruction in a storage device array system |
US5379411A (en) * | 1991-11-15 | 1995-01-03 | Fujitsu Limited | Fault indication in a storage device array |
US5426639A (en) * | 1991-11-29 | 1995-06-20 | At&T Corp. | Multiple virtual FIFO arrangement |
JP3451099B2 (ja) * | 1991-12-06 | 2003-09-29 | 株式会社日立製作所 | 外部記憶サブシステム |
JP2597060B2 (ja) * | 1991-12-13 | 1997-04-02 | 富士通株式会社 | アレイディスク装置 |
US5506977A (en) * | 1991-12-17 | 1996-04-09 | Dell Usa, L.P. | Method and controller for minimizing reads during partial stripe write operations to a disk drive |
US5537566A (en) * | 1991-12-17 | 1996-07-16 | Fujitsu Limited | Apparatus and method for controlling background processing in disk array device |
JP3160106B2 (ja) * | 1991-12-23 | 2001-04-23 | ヒュンダイ エレクトロニクス アメリカ | ディスクアレーの区分け方法 |
US5333305A (en) * | 1991-12-27 | 1994-07-26 | Compaq Computer Corporation | Method for improving partial stripe write performance in disk array subsystems |
EP0551009B1 (en) * | 1992-01-08 | 2001-06-13 | Emc Corporation | Method for synchronizing reserved areas in a redundant storage array |
US5341381A (en) * | 1992-01-21 | 1994-08-23 | Tandem Computers, Incorporated | Redundant array parity caching system |
JP3058743B2 (ja) * | 1992-01-21 | 2000-07-04 | 株式会社日立製作所 | ディスクアレイ制御装置 |
US5398253A (en) * | 1992-03-11 | 1995-03-14 | Emc Corporation | Storage unit generation of redundancy information in a redundant storage array system |
US5740465A (en) * | 1992-04-08 | 1998-04-14 | Hitachi, Ltd. | Array disk controller for grouping host commands into a single virtual host command |
US5410667A (en) * | 1992-04-17 | 1995-04-25 | Storage Technology Corporation | Data record copy system for a disk drive array data storage subsystem |
US5418921A (en) * | 1992-05-05 | 1995-05-23 | International Business Machines Corporation | Method and means for fast writing data to LRU cached based DASD arrays under diverse fault tolerant modes |
JPH0683542A (ja) * | 1992-06-01 | 1994-03-25 | Nec Corp | フロッピィ・ディスク・コントローラの制御方法 |
EP0582370B1 (en) * | 1992-06-05 | 1998-10-07 | Compaq Computer Corporation | Disk drive controller with a posted write cache memory |
US5408644A (en) * | 1992-06-05 | 1995-04-18 | Compaq Computer Corporation | Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem |
US5398331A (en) * | 1992-07-08 | 1995-03-14 | International Business Machines Corporation | Shared storage controller for dual copy shared data |
US5596736A (en) * | 1992-07-22 | 1997-01-21 | Fujitsu Limited | Data transfers to a backing store of a dynamically mapped data storage system in which data has nonsequential logical addresses |
US5309451A (en) * | 1992-08-12 | 1994-05-03 | Digital Equipment Corporation | Data and parity prefetching for redundant arrays of disk drives |
US5315602A (en) * | 1992-08-12 | 1994-05-24 | Digital Equipment Corporation | Optimized stripe detection for redundant arrays of disk drives |
JP2737562B2 (ja) * | 1992-08-18 | 1998-04-08 | 日本電気株式会社 | 高密度磁気ディスク装置のパトロールシーク方式 |
JP3183719B2 (ja) * | 1992-08-26 | 2001-07-09 | 三菱電機株式会社 | アレイ型記録装置 |
US5403639A (en) * | 1992-09-02 | 1995-04-04 | Storage Technology Corporation | File server having snapshot application data groups |
WO1994009436A1 (en) * | 1992-10-13 | 1994-04-28 | Compaq Computer Corporation | Disk array controller having advanced internal bus protocol |
US5448709A (en) * | 1992-10-13 | 1995-09-05 | Compaq Computer Corporation | Disk array controller having command descriptor blocks utilized by bus master and bus slave for respectively performing data transfer operations |
US5581724A (en) * | 1992-10-19 | 1996-12-03 | Storage Technology Corporation | Dynamically mapped data storage subsystem having multiple open destage cylinders and method of managing that subsystem |
US5418925A (en) * | 1992-10-23 | 1995-05-23 | At&T Global Information Solutions Company | Fast write I/O handling in a disk array using spare drive for buffering |
US5579474A (en) * | 1992-12-28 | 1996-11-26 | Hitachi, Ltd. | Disk array system and its control method |
US5355486A (en) * | 1993-01-21 | 1994-10-11 | Conner Peripherals, Inc. | System for allocating tasks between two actuators servicing the same magnetic disk media in a single disk drive |
US5463765A (en) * | 1993-03-18 | 1995-10-31 | Hitachi, Ltd. | Disk array system, data writing method thereof, and fault recovering method |
GB2278228B (en) * | 1993-05-21 | 1997-01-29 | Mitsubishi Electric Corp | An arrayed recording apparatus |
JP3200500B2 (ja) * | 1993-05-27 | 2001-08-20 | 株式会社日立製作所 | ディスク装置及びディスク制御方法 |
US5598549A (en) * | 1993-06-11 | 1997-01-28 | At&T Global Information Solutions Company | Array storage system for returning an I/O complete signal to a virtual I/O daemon that is separated from software array driver and physical device driver |
JP3237736B2 (ja) * | 1993-09-07 | 2001-12-10 | ヒュンダイ エレクトロニクス アメリカ | データ記憶装置のマトリックス構造 |
JP3119978B2 (ja) * | 1993-09-22 | 2000-12-25 | 株式会社東芝 | ファイル記憶装置及びそのファイル管理方法 |
US5511227A (en) * | 1993-09-30 | 1996-04-23 | Dell Usa, L.P. | Method for configuring a composite drive for a disk drive array controller |
US5530850A (en) * | 1993-10-25 | 1996-06-25 | International Business Machines Corporation | Data storage library array with log-structured file system which allows simultaneous write and garbage collection |
US5586250A (en) * | 1993-11-12 | 1996-12-17 | Conner Peripherals, Inc. | SCSI-coupled module for monitoring and controlling SCSI-coupled raid bank and bank environment |
US5396620A (en) * | 1993-12-21 | 1995-03-07 | Storage Technology Corporation | Method for writing specific values last into data storage groups containing redundancy |
US5542066A (en) * | 1993-12-23 | 1996-07-30 | International Business Machines Corporation | Destaging modified data blocks from cache memory |
JP3065481B2 (ja) * | 1994-04-22 | 2000-07-17 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | ディスク・アレイ装置およびデータの格納方法 |
US5522032A (en) * | 1994-05-05 | 1996-05-28 | International Business Machines Corporation | Raid level 5 with free blocks parity cache |
EP1376329A2 (en) * | 1994-06-22 | 2004-01-02 | Hewlett-Packard Company, A Delaware Corporation | Method of utilizing storage disks of differing capacity in a single storage volume in a hierarchic disk array |
US5915129A (en) | 1994-06-27 | 1999-06-22 | Microsoft Corporation | Method and system for storing uncompressed data in a memory cache that is destined for a compressed file system |
JP3687111B2 (ja) * | 1994-08-18 | 2005-08-24 | 株式会社日立製作所 | 記憶装置システムおよび記憶装置の制御方法 |
US5412668A (en) * | 1994-09-22 | 1995-05-02 | International Business Machines Corporation | Parity striping feature for optical disks |
US5623595A (en) * | 1994-09-26 | 1997-04-22 | Oracle Corporation | Method and apparatus for transparent, real time reconstruction of corrupted data in a redundant array data storage system |
US5497457A (en) * | 1994-10-17 | 1996-03-05 | International Business Machines Corporation | Redundant arrays of independent libraries of dismountable media with parity logging |
US5488701A (en) * | 1994-11-17 | 1996-01-30 | International Business Machines Corporation | In log sparing for log structured arrays |
JPH08152976A (ja) * | 1994-11-28 | 1996-06-11 | Fujitsu Ltd | 記憶装置のアクセス方法 |
US5537534A (en) * | 1995-02-10 | 1996-07-16 | Hewlett-Packard Company | Disk array having redundant storage and methods for incrementally generating redundancy as data is written to the disk array |
US5708793A (en) * | 1995-03-31 | 1998-01-13 | International Business Machines Corporation | Method and apparatus using address and read head location information to provide optimal operation of a disk system |
US5799140A (en) * | 1995-04-21 | 1998-08-25 | International Business Machines Corporation | Disk array system and method for storing data |
JP3509285B2 (ja) * | 1995-05-12 | 2004-03-22 | 富士通株式会社 | 圧縮データ管理方式 |
WO1996037840A1 (en) * | 1995-05-22 | 1996-11-28 | Mti Technology Corporation | Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability |
US5671390A (en) * | 1995-05-23 | 1997-09-23 | International Business Machines Corporation | Log structured array storage subsystem using LSA directory and LSA sub-directory stored in different storage media |
US5657468A (en) * | 1995-08-17 | 1997-08-12 | Ambex Technologies, Inc. | Method and apparatus for improving performance in a reduntant array of independent disks |
JP3604466B2 (ja) * | 1995-09-13 | 2004-12-22 | 株式会社ルネサステクノロジ | フラッシュディスクカード |
US5774643A (en) * | 1995-10-13 | 1998-06-30 | Digital Equipment Corporation | Enhanced raid write hole protection and recovery |
US5778426A (en) * | 1995-10-23 | 1998-07-07 | Symbios, Inc. | Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting method |
US5802344A (en) * | 1995-11-03 | 1998-09-01 | International Business Machines Corporation | Method and apparatus for dynamic segment allocation in log structured arrays |
US5862158A (en) * | 1995-11-08 | 1999-01-19 | International Business Machines Corporation | Efficient method for providing fault tolerance against double device failures in multiple device systems |
US6334195B1 (en) * | 1995-12-29 | 2001-12-25 | Lsi Logic Corporation | Use of hot spare drives to boost performance during nominal raid operation |
US5734861A (en) * | 1995-12-12 | 1998-03-31 | International Business Machines Corporation | Log-structured disk array with garbage collection regrouping of tracks to preserve seek affinity |
US5717850A (en) * | 1996-03-12 | 1998-02-10 | International Business Machines Corporation | Efficient system for predicting and processing storage subsystem failure |
US6366930B1 (en) | 1996-04-12 | 2002-04-02 | Computer Associates Think, Inc. | Intelligent data inventory & asset management systems method and apparatus |
US5734814A (en) * | 1996-04-15 | 1998-03-31 | Sun Microsystems, Inc. | Host-based RAID-5 and NV-RAM integration |
US6055577A (en) * | 1996-05-06 | 2000-04-25 | Oracle Corporation | System for granting bandwidth for real time processes and assigning bandwidth for non-real time processes while being forced to periodically re-arbitrate for new assigned bandwidth |
US5799324A (en) * | 1996-05-10 | 1998-08-25 | International Business Machines Corporation | System and method for management of persistent data in a log-structured disk array |
US5917998A (en) * | 1996-07-26 | 1999-06-29 | International Business Machines Corporation | Method and apparatus for establishing and maintaining the status of membership sets used in mirrored read and write input/output without logging |
US5864655A (en) * | 1996-09-09 | 1999-01-26 | International Business Machines Corporation | Managing removable media in raid and rail environments |
JP3228182B2 (ja) * | 1997-05-29 | 2001-11-12 | 株式会社日立製作所 | 記憶システム及び記憶システムへのアクセス方法 |
US7103794B2 (en) * | 1998-06-08 | 2006-09-05 | Cacheflow, Inc. | Network object cache engine |
US5937428A (en) * | 1997-08-06 | 1999-08-10 | Lsi Logic Corporation | Method for host-based I/O workload balancing on redundant array controllers |
JPH1153235A (ja) * | 1997-08-08 | 1999-02-26 | Toshiba Corp | ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム |
US6041394A (en) * | 1997-09-24 | 2000-03-21 | Emc Corporation | Disk array write protection at the sub-unit level |
JPH11194899A (ja) * | 1997-12-26 | 1999-07-21 | Toshiba Corp | ディスク記憶システム及び同システムに適用するデータ更新方法 |
US5941972A (en) * | 1997-12-31 | 1999-08-24 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
USRE42761E1 (en) | 1997-12-31 | 2011-09-27 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
US6061753A (en) * | 1998-01-27 | 2000-05-09 | Emc Corporation | Apparatus and method of accessing target devices across a bus utilizing initiator identifiers |
US6170063B1 (en) * | 1998-03-07 | 2001-01-02 | Hewlett-Packard Company | Method for performing atomic, concurrent read and write operations on multiple storage devices |
JP2978882B1 (ja) * | 1998-06-03 | 1999-11-15 | 三菱電機株式会社 | デバイス間データ転送装置及びデバイス間データ転送方法 |
US6351838B1 (en) * | 1999-03-12 | 2002-02-26 | Aurora Communications, Inc | Multidimensional parity protection system |
US6058054A (en) * | 1999-03-31 | 2000-05-02 | International Business Machines Corporation | Method and system for providing an instant backup in a RAID data storage system |
US6931440B1 (en) * | 1999-04-21 | 2005-08-16 | Emc Corporation | Method and apparatus for dynamically determining whether access to a resource connected to a computer has changed and determining how to access the resource with a new identifier |
US6581137B1 (en) * | 1999-09-29 | 2003-06-17 | Emc Corporation | Data storage system |
JP2001167040A (ja) | 1999-12-14 | 2001-06-22 | Hitachi Ltd | 記憶サブシステム及び記憶制御装置 |
US7657727B2 (en) * | 2000-01-14 | 2010-02-02 | Hitachi, Ltd. | Security for logical unit in storage subsystem |
US6684209B1 (en) * | 2000-01-14 | 2004-01-27 | Hitachi, Ltd. | Security method and system for storage subsystem |
JP4651230B2 (ja) * | 2001-07-13 | 2011-03-16 | 株式会社日立製作所 | 記憶システム及び論理ユニットへのアクセス制御方法 |
JP4115060B2 (ja) * | 2000-02-02 | 2008-07-09 | 株式会社日立製作所 | 情報処理システムのデータ復旧方法及びディスクサブシステム |
US6611396B1 (en) * | 2000-04-24 | 2003-08-26 | Mobile Storage Technology | Disk level servo write |
JP4719957B2 (ja) * | 2000-05-24 | 2011-07-06 | 株式会社日立製作所 | 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法 |
US6775790B2 (en) * | 2000-06-02 | 2004-08-10 | Hewlett-Packard Development Company, L.P. | Distributed fine-grained enhancements for distributed table driven I/O mapping |
US6745284B1 (en) | 2000-10-02 | 2004-06-01 | Sun Microsystems, Inc. | Data storage subsystem including a storage disk array employing dynamic data striping |
US7158528B2 (en) * | 2000-12-15 | 2007-01-02 | Agere Systems Inc. | Scheduler for a packet routing and switching system |
US6546458B2 (en) * | 2000-12-29 | 2003-04-08 | Storage Technology Corporation | Method and apparatus for arbitrarily large capacity removable media |
US6990667B2 (en) * | 2001-01-29 | 2006-01-24 | Adaptec, Inc. | Server-independent object positioning for load balancing drives and servers |
US6775792B2 (en) * | 2001-01-29 | 2004-08-10 | Snap Appliance, Inc. | Discrete mapping of parity blocks |
US7054927B2 (en) * | 2001-01-29 | 2006-05-30 | Adaptec, Inc. | File system metadata describing server directory information |
US6862692B2 (en) * | 2001-01-29 | 2005-03-01 | Adaptec, Inc. | Dynamic redistribution of parity groups |
US7007141B2 (en) * | 2001-01-30 | 2006-02-28 | Data Domain, Inc. | Archival data storage system and method |
GB0104469D0 (en) | 2001-02-23 | 2001-04-11 | Ibm | Log-structured array |
EP1249415A3 (de) * | 2001-04-14 | 2004-02-04 | NexPress Solutions LLC | Verfahren und Einrichtung zur Messung von Positionen von durchlaufenden Bogen |
US6742081B2 (en) | 2001-04-30 | 2004-05-25 | Sun Microsystems, Inc. | Data storage array employing block checksums and dynamic striping |
US7239642B1 (en) | 2001-07-16 | 2007-07-03 | Network Appliance, Inc. | Multi-protocol network interface card |
US7289499B1 (en) * | 2001-07-16 | 2007-10-30 | Network Appliance, Inc. | Integrated system and method for controlling telecommunication network data communicated over a local area network and storage data communicated over a storage area network |
US6978283B1 (en) * | 2001-12-21 | 2005-12-20 | Network Appliance, Inc. | File system defragmentation technique via write allocation |
US6901499B2 (en) * | 2002-02-27 | 2005-05-31 | Microsoft Corp. | System and method for tracking data stored in a flash memory device |
US7533214B2 (en) | 2002-02-27 | 2009-05-12 | Microsoft Corporation | Open architecture flash driver |
US6993539B2 (en) | 2002-03-19 | 2006-01-31 | Network Appliance, Inc. | System and method for determining changes in two snapshots and for transmitting changes to destination snapshot |
US7475098B2 (en) * | 2002-03-19 | 2009-01-06 | Network Appliance, Inc. | System and method for managing a plurality of snapshots |
US7028215B2 (en) * | 2002-05-03 | 2006-04-11 | Hewlett-Packard Development Company, L.P. | Hot mirroring in a computer system with redundant memory subsystems |
US7873700B2 (en) * | 2002-08-09 | 2011-01-18 | Netapp, Inc. | Multi-protocol storage appliance that provides integrated support for file and block access protocols |
US7340486B1 (en) * | 2002-10-10 | 2008-03-04 | Network Appliance, Inc. | System and method for file system snapshot of a virtual logical disk |
US6928515B2 (en) * | 2002-11-09 | 2005-08-09 | International Business Machines Corporation | Integrated sector format-error correction code system and method for efficient writing in a disk array system |
US7809693B2 (en) * | 2003-02-10 | 2010-10-05 | Netapp, Inc. | System and method for restoring data on demand for instant volume restoration |
US7457982B2 (en) | 2003-04-11 | 2008-11-25 | Network Appliance, Inc. | Writable virtual disk of read-only snapshot file objects |
US7627780B2 (en) * | 2003-04-23 | 2009-12-01 | Dot Hill Systems Corporation | Apparatus and method for deterministically performing active-active failover of redundant servers in a network storage appliance |
US7565566B2 (en) * | 2003-04-23 | 2009-07-21 | Dot Hill Systems Corporation | Network storage appliance with an integrated switch |
US7401254B2 (en) * | 2003-04-23 | 2008-07-15 | Dot Hill Systems Corporation | Apparatus and method for a server deterministically killing a redundant server integrated within the same network storage appliance chassis |
US7330999B2 (en) * | 2003-04-23 | 2008-02-12 | Dot Hill Systems Corporation | Network storage appliance with integrated redundant servers and storage controllers |
US7437523B1 (en) | 2003-04-25 | 2008-10-14 | Network Appliance, Inc. | System and method for on-the-fly file folding in a replicated storage system |
CN1317692C (zh) * | 2003-05-26 | 2007-05-23 | 深圳易拓科技有限公司 | 嵌入式伺服磁盘写操作方法 |
CN1300767C (zh) * | 2003-05-30 | 2007-02-14 | 深圳易拓科技有限公司 | 利用伺服数据引导读/写数据磁道的方法及装置 |
US7783611B1 (en) | 2003-11-10 | 2010-08-24 | Netapp, Inc. | System and method for managing file metadata during consistency points |
US7721062B1 (en) | 2003-11-10 | 2010-05-18 | Netapp, Inc. | Method for detecting leaked buffer writes across file system consistency points |
US7401093B1 (en) | 2003-11-10 | 2008-07-15 | Network Appliance, Inc. | System and method for managing file data during consistency points |
JP4493321B2 (ja) * | 2003-11-19 | 2010-06-30 | 株式会社日立製作所 | ディスクアレイ装置及びデータ退避方法 |
US7698289B2 (en) * | 2003-12-02 | 2010-04-13 | Netapp, Inc. | Storage system architecture for striping data container content across volumes of a cluster |
US7409497B1 (en) | 2003-12-02 | 2008-08-05 | Network Appliance, Inc. | System and method for efficiently guaranteeing data consistency to clients of a storage system cluster |
JP5166735B2 (ja) * | 2003-12-19 | 2013-03-21 | ネットアップ,インコーポレイテッド | 非常に短い更新インターバルで同期データ複製が可能なシステム及び方法 |
US7478101B1 (en) | 2003-12-23 | 2009-01-13 | Networks Appliance, Inc. | System-independent data format in a mirrored storage system environment and method for using the same |
US8041888B2 (en) * | 2004-02-05 | 2011-10-18 | Netapp, Inc. | System and method for LUN cloning |
JP2005293774A (ja) | 2004-04-02 | 2005-10-20 | Hitachi Global Storage Technologies Netherlands Bv | ディスク装置の制御方法 |
JP2005301565A (ja) | 2004-04-09 | 2005-10-27 | Hitachi Ltd | ディスクアレイ装置およびディスクアレイ装置の診断制御方法 |
US7334095B1 (en) | 2004-04-30 | 2008-02-19 | Network Appliance, Inc. | Writable clone of read-only volume |
US7430571B2 (en) | 2004-04-30 | 2008-09-30 | Network Appliance, Inc. | Extension of write anywhere file layout write allocation |
US7409494B2 (en) | 2004-04-30 | 2008-08-05 | Network Appliance, Inc. | Extension of write anywhere file system layout |
US7409511B2 (en) * | 2004-04-30 | 2008-08-05 | Network Appliance, Inc. | Cloning technique for efficiently creating a copy of a volume in a storage system |
US7334094B2 (en) * | 2004-04-30 | 2008-02-19 | Network Appliance, Inc. | Online clone volume splitting technique |
US7509329B1 (en) | 2004-06-01 | 2009-03-24 | Network Appliance, Inc. | Technique for accelerating file deletion by preloading indirect blocks |
US7519628B1 (en) | 2004-06-01 | 2009-04-14 | Network Appliance, Inc. | Technique for accelerating log replay with partial cache flush |
US7243207B1 (en) | 2004-09-27 | 2007-07-10 | Network Appliance, Inc. | Technique for translating a pure virtual file system data stream into a hybrid virtual volume |
US7194595B1 (en) | 2004-09-27 | 2007-03-20 | Network Appliance, Inc. | Technique for translating a hybrid virtual volume file system into a pure virtual file system data stream |
US7526692B2 (en) * | 2004-09-30 | 2009-04-28 | International Business Machines Corporation | Diagnostic interface architecture for memory device |
US7260678B1 (en) | 2004-10-13 | 2007-08-21 | Network Appliance, Inc. | System and method for determining disk ownership model |
US7603532B2 (en) | 2004-10-15 | 2009-10-13 | Netapp, Inc. | System and method for reclaiming unused space from a thinly provisioned data container |
US7730277B1 (en) | 2004-10-25 | 2010-06-01 | Netapp, Inc. | System and method for using pvbn placeholders in a flexible volume of a storage system |
US7636744B1 (en) | 2004-11-17 | 2009-12-22 | Netapp, Inc. | System and method for flexible space reservations in a file system supporting persistent consistency point images |
US7523286B2 (en) * | 2004-11-19 | 2009-04-21 | Network Appliance, Inc. | System and method for real-time balancing of user workload across multiple storage systems with shared back end storage |
US9165003B1 (en) | 2004-11-29 | 2015-10-20 | Netapp, Inc. | Technique for permitting multiple virtual file systems having the same identifier to be served by a single storage system |
US7707165B1 (en) | 2004-12-09 | 2010-04-27 | Netapp, Inc. | System and method for managing data versions in a file system |
US7506111B1 (en) | 2004-12-20 | 2009-03-17 | Network Appliance, Inc. | System and method for determining a number of overwitten blocks between data containers |
US8180855B2 (en) * | 2005-01-27 | 2012-05-15 | Netapp, Inc. | Coordinated shared storage architecture |
US7424497B1 (en) | 2005-01-27 | 2008-09-09 | Network Appliance, Inc. | Technique for accelerating the creation of a point in time prepresentation of a virtual file system |
US8019842B1 (en) | 2005-01-27 | 2011-09-13 | Netapp, Inc. | System and method for distributing enclosure services data to coordinate shared storage |
US7574464B2 (en) * | 2005-02-14 | 2009-08-11 | Netapp, Inc. | System and method for enabling a storage system to support multiple volume formats simultaneously |
US7535917B1 (en) | 2005-02-22 | 2009-05-19 | Netapp, Inc. | Multi-protocol network adapter |
US7757056B1 (en) | 2005-03-16 | 2010-07-13 | Netapp, Inc. | System and method for efficiently calculating storage required to split a clone volume |
JP4824085B2 (ja) * | 2005-04-25 | 2011-11-24 | ネットアップ,インコーポレイテッド | ネットワークファイルシステムをキャッシュするシステム、及び方法 |
US7617370B2 (en) | 2005-04-29 | 2009-11-10 | Netapp, Inc. | Data allocation within a storage system architecture |
US7698501B1 (en) | 2005-04-29 | 2010-04-13 | Netapp, Inc. | System and method for utilizing sparse data containers in a striped volume set |
US7698334B2 (en) * | 2005-04-29 | 2010-04-13 | Netapp, Inc. | System and method for multi-tiered meta-data caching and distribution in a clustered computer environment |
US7904649B2 (en) * | 2005-04-29 | 2011-03-08 | Netapp, Inc. | System and method for restriping data across a plurality of volumes |
US7634760B1 (en) | 2005-05-23 | 2009-12-15 | Netapp, Inc. | System and method for remote execution of a debugging utility using a remote management module |
US7258381B2 (en) * | 2005-05-23 | 2007-08-21 | International Automotive Components Group North America, Inc. | Modular vehicle interior component system and release latch mechanism for use with the system |
US7739318B2 (en) | 2005-06-20 | 2010-06-15 | Netapp, Inc. | System and method for maintaining mappings from data containers to their parent directories |
US7516285B1 (en) | 2005-07-22 | 2009-04-07 | Network Appliance, Inc. | Server side API for fencing cluster hosts via export access rights |
US7653682B2 (en) * | 2005-07-22 | 2010-01-26 | Netapp, Inc. | Client failure fencing mechanism for fencing network file system data in a host-cluster environment |
US7650366B1 (en) | 2005-09-09 | 2010-01-19 | Netapp, Inc. | System and method for generating a crash consistent persistent consistency point image set |
US20070088917A1 (en) * | 2005-10-14 | 2007-04-19 | Ranaweera Samantha L | System and method for creating and maintaining a logical serial attached SCSI communication channel among a plurality of storage systems |
US7467276B1 (en) | 2005-10-25 | 2008-12-16 | Network Appliance, Inc. | System and method for automatic root volume creation |
EP1949214B1 (en) * | 2005-10-28 | 2012-12-19 | Network Appliance, Inc. | System and method for optimizing multi-pathing support in a distributed storage system environment |
US7376796B2 (en) * | 2005-11-01 | 2008-05-20 | Network Appliance, Inc. | Lightweight coherency control protocol for clustered storage system |
US7325111B1 (en) | 2005-11-01 | 2008-01-29 | Network Appliance, Inc. | Method and system for single pass volume scanning for multiple destination mirroring |
US7693864B1 (en) | 2006-01-03 | 2010-04-06 | Netapp, Inc. | System and method for quickly determining changed metadata using persistent consistency point image differencing |
US8560503B1 (en) | 2006-01-26 | 2013-10-15 | Netapp, Inc. | Content addressable storage system |
US7734603B1 (en) | 2006-01-26 | 2010-06-08 | Netapp, Inc. | Content addressable storage array element |
US7395187B2 (en) * | 2006-02-06 | 2008-07-01 | International Business Machines Corporation | System and method for recording behavior history for abnormality detection |
US8285817B1 (en) | 2006-03-20 | 2012-10-09 | Netapp, Inc. | Migration engine for use in a logical namespace of a storage system environment |
US7590660B1 (en) | 2006-03-21 | 2009-09-15 | Network Appliance, Inc. | Method and system for efficient database cloning |
US8260831B2 (en) * | 2006-03-31 | 2012-09-04 | Netapp, Inc. | System and method for implementing a flexible storage manager with threshold control |
US20070233868A1 (en) * | 2006-03-31 | 2007-10-04 | Tyrrell John C | System and method for intelligent provisioning of storage across a plurality of storage systems |
US8165221B2 (en) * | 2006-04-28 | 2012-04-24 | Netapp, Inc. | System and method for sampling based elimination of duplicate data |
US7769723B2 (en) * | 2006-04-28 | 2010-08-03 | Netapp, Inc. | System and method for providing continuous data protection |
US9026495B1 (en) | 2006-05-26 | 2015-05-05 | Netapp, Inc. | System and method for creating and accessing a host-accessible storage entity |
US8412682B2 (en) * | 2006-06-29 | 2013-04-02 | Netapp, Inc. | System and method for retrieving and using block fingerprints for data deduplication |
US7921077B2 (en) * | 2006-06-29 | 2011-04-05 | Netapp, Inc. | System and method for managing data deduplication of storage systems utilizing persistent consistency point images |
US8010509B1 (en) | 2006-06-30 | 2011-08-30 | Netapp, Inc. | System and method for verifying and correcting the consistency of mirrored data sets |
US7987167B1 (en) | 2006-08-04 | 2011-07-26 | Netapp, Inc. | Enabling a clustered namespace with redirection |
US7747584B1 (en) | 2006-08-22 | 2010-06-29 | Netapp, Inc. | System and method for enabling de-duplication in a storage system architecture |
US7865741B1 (en) | 2006-08-23 | 2011-01-04 | Netapp, Inc. | System and method for securely replicating a configuration database of a security appliance |
US8116455B1 (en) | 2006-09-29 | 2012-02-14 | Netapp, Inc. | System and method for securely initializing and booting a security appliance |
US7739546B1 (en) | 2006-10-20 | 2010-06-15 | Netapp, Inc. | System and method for storing and retrieving file system log information in a clustered computer system |
US8996487B1 (en) | 2006-10-31 | 2015-03-31 | Netapp, Inc. | System and method for improving the relevance of search results using data container access patterns |
US8423731B1 (en) | 2006-10-31 | 2013-04-16 | Netapp, Inc. | System and method for automatic scheduling and policy provisioning for information lifecycle management |
US7720889B1 (en) | 2006-10-31 | 2010-05-18 | Netapp, Inc. | System and method for nearly in-band search indexing |
US7685178B2 (en) * | 2006-10-31 | 2010-03-23 | Netapp, Inc. | System and method for examining client generated content stored on a data container exported by a storage system |
US7711683B1 (en) | 2006-11-30 | 2010-05-04 | Netapp, Inc. | Method and system for maintaining disk location via homeness |
US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
US8935302B2 (en) | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
CN101715575A (zh) | 2006-12-06 | 2010-05-26 | 弗森多系统公司(dba弗森-艾奥) | 采用数据管道管理数据的装置、系统和方法 |
US8489811B1 (en) | 2006-12-29 | 2013-07-16 | Netapp, Inc. | System and method for addressing data containers using data set identifiers |
US8301673B2 (en) * | 2006-12-29 | 2012-10-30 | Netapp, Inc. | System and method for performing distributed consistency verification of a clustered file system |
US7853750B2 (en) * | 2007-01-30 | 2010-12-14 | Netapp, Inc. | Method and an apparatus to store data patterns |
US8868495B2 (en) * | 2007-02-21 | 2014-10-21 | Netapp, Inc. | System and method for indexing user data on storage systems |
US8312046B1 (en) | 2007-02-28 | 2012-11-13 | Netapp, Inc. | System and method for enabling a data container to appear in a plurality of locations in a super-namespace |
US8219821B2 (en) | 2007-03-27 | 2012-07-10 | Netapp, Inc. | System and method for signature based data container recognition |
US8312214B1 (en) | 2007-03-28 | 2012-11-13 | Netapp, Inc. | System and method for pausing disk drives in an aggregate |
US8533410B1 (en) | 2007-03-29 | 2013-09-10 | Netapp, Inc. | Maintaining snapshot and active file system metadata in an on-disk structure of a file system |
US8510524B1 (en) | 2007-03-29 | 2013-08-13 | Netapp, Inc. | File system capable of generating snapshots and providing fast sequential read access |
US7849057B1 (en) | 2007-03-30 | 2010-12-07 | Netapp, Inc. | Identifying snapshot membership for blocks based on snapid |
US7827350B1 (en) | 2007-04-27 | 2010-11-02 | Netapp, Inc. | Method and system for promoting a snapshot in a distributed file system |
US7882304B2 (en) * | 2007-04-27 | 2011-02-01 | Netapp, Inc. | System and method for efficient updates of sequential block storage |
US8219749B2 (en) * | 2007-04-27 | 2012-07-10 | Netapp, Inc. | System and method for efficient updates of sequential block storage |
US8762345B2 (en) | 2007-05-31 | 2014-06-24 | Netapp, Inc. | System and method for accelerating anchor point detection |
US7797489B1 (en) | 2007-06-01 | 2010-09-14 | Netapp, Inc. | System and method for providing space availability notification in a distributed striped volume set |
US8301791B2 (en) * | 2007-07-26 | 2012-10-30 | Netapp, Inc. | System and method for non-disruptive check of a mirror |
US8793226B1 (en) | 2007-08-28 | 2014-07-29 | Netapp, Inc. | System and method for estimating duplicate data |
US7996636B1 (en) | 2007-11-06 | 2011-08-09 | Netapp, Inc. | Uniquely identifying block context signatures in a storage volume hierarchy |
US7984259B1 (en) | 2007-12-17 | 2011-07-19 | Netapp, Inc. | Reducing load imbalance in a storage system |
US8380674B1 (en) | 2008-01-09 | 2013-02-19 | Netapp, Inc. | System and method for migrating lun data between data containers |
US7996607B1 (en) | 2008-01-28 | 2011-08-09 | Netapp, Inc. | Distributing lookup operations in a striped storage system |
US8725986B1 (en) | 2008-04-18 | 2014-05-13 | Netapp, Inc. | System and method for volume block number to disk block number mapping |
US8621154B1 (en) | 2008-04-18 | 2013-12-31 | Netapp, Inc. | Flow based reply cache |
US8161236B1 (en) | 2008-04-23 | 2012-04-17 | Netapp, Inc. | Persistent reply cache integrated with file system |
US8219564B1 (en) | 2008-04-29 | 2012-07-10 | Netapp, Inc. | Two-dimensional indexes for quick multiple attribute search in a catalog system |
US8250043B2 (en) * | 2008-08-19 | 2012-08-21 | Netapp, Inc. | System and method for compression of partially ordered data sets |
US8473964B2 (en) | 2008-09-30 | 2013-06-25 | Microsoft Corporation | Transparent user mode scheduling on traditional threading systems |
US8171227B1 (en) | 2009-03-11 | 2012-05-01 | Netapp, Inc. | System and method for managing a flow based reply cache |
US8117388B2 (en) * | 2009-04-30 | 2012-02-14 | Netapp, Inc. | Data distribution through capacity leveling in a striped file system |
CN101567211A (zh) * | 2009-05-27 | 2009-10-28 | 杭州华三通信技术有限公司 | 一种提高磁盘可用性的方法和磁盘阵列控制器 |
US8996563B2 (en) | 2010-04-06 | 2015-03-31 | Tokutek, Inc. | High-performance streaming dictionary |
US20120239860A1 (en) | 2010-12-17 | 2012-09-20 | Fusion-Io, Inc. | Apparatus, system, and method for persistent data management on a non-volatile storage media |
US8996480B2 (en) * | 2011-05-04 | 2015-03-31 | International Business Machines Corporation | Method and apparatus for optimizing data storage |
US8880939B2 (en) * | 2011-12-14 | 2014-11-04 | Hitachi, Ltd. | Storage subsystem and method for recovering data in storage subsystem |
US10437497B1 (en) * | 2015-09-30 | 2019-10-08 | EMC IP Holding Company LLC | Active-active host environment |
CN111951845B (zh) * | 2019-05-15 | 2022-06-03 | 上海磁宇信息科技有限公司 | 一种分级管理冗余存储的mram芯片 |
US11429564B2 (en) | 2019-06-18 | 2022-08-30 | Bank Of America Corporation | File transferring using artificial intelligence |
US11379150B2 (en) | 2020-01-31 | 2022-07-05 | Seagate Technology Llc | Disk array using multiple actuator drives with logical units coupled to active and passive servers |
EP3886093A1 (en) | 2020-03-26 | 2021-09-29 | Microsoft Technology Licensing, LLC | Optical data transfer |
EP3886092A1 (en) | 2020-03-26 | 2021-09-29 | Microsoft Technology Licensing, LLC | Holographic storage |
EP3886091A1 (en) | 2020-03-26 | 2021-09-29 | Microsoft Technology Licensing, LLC | Holographic storage |
US12066965B2 (en) * | 2020-04-30 | 2024-08-20 | Advanced Micro Devices, Inc. | Encoding of symbols for a computer interconnect based on frequency of symbol values |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2811318C2 (de) * | 1978-03-16 | 1983-02-17 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Übertragung und Speicherung eines Teilwortes |
US4254500A (en) * | 1979-03-16 | 1981-03-03 | Minnesota Mining And Manufacturing Company | Single track digital recorder and circuit for use therein having error correction |
US4598357A (en) * | 1980-11-14 | 1986-07-01 | Sperry Corporation | Cache/disk subsystem with file number for recovery of cached data |
US4638424A (en) * | 1984-01-12 | 1987-01-20 | International Business Machines Corporation | Managing data storage devices connected to a digital computer |
US4896259A (en) * | 1984-09-07 | 1990-01-23 | International Business Machines Corporation | Apparatus for storing modifying data prior to selectively storing data to be modified into a register |
US4653050A (en) * | 1984-12-03 | 1987-03-24 | Trw Inc. | Fault-tolerant memory system |
US4958351A (en) * | 1986-02-03 | 1990-09-18 | Unisys Corp. | High capacity multiple-disk storage method and apparatus having unusually high fault tolerance level and high bandpass |
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 |
US4942575A (en) * | 1988-06-17 | 1990-07-17 | Modular Computer Systems, Inc. | Error connection device for parity protected memory systems |
US4914656A (en) * | 1988-06-28 | 1990-04-03 | Storage Technology Corporation | Disk drive memory |
-
1990
- 1990-04-16 US US07/509,484 patent/US5124987A/en not_active Expired - Lifetime
-
1991
- 1991-04-05 EP EP91907736A patent/EP0526487B1/en not_active Expired - Lifetime
- 1991-04-05 AT AT91907736T patent/ATE159110T1/de not_active IP Right Cessation
- 1991-04-05 DE DE69127895T patent/DE69127895T4/de not_active Expired - Lifetime
- 1991-04-05 JP JP50765691A patent/JP3302688B2/ja not_active Expired - Fee Related
- 1991-04-05 CA CA002080579A patent/CA2080579C/en not_active Expired - Fee Related
- 1991-04-05 AU AU76513/91A patent/AU654482B2/en not_active Ceased
- 1991-04-05 WO PCT/US1991/002358 patent/WO1991016711A1/en active IP Right Grant
- 1991-04-05 DE DE69127895A patent/DE69127895D1/de not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6327673B1 (en) | 1991-01-31 | 2001-12-04 | Hitachi, Ltd. | Storage unit subsystem |
US6532549B2 (en) | 1991-01-31 | 2003-03-11 | Hitachi, Ltd. | Storage unit subsystem |
US6757839B2 (en) | 1991-01-31 | 2004-06-29 | Hitachi, Ltd. | Storage unit subsystem |
US6874101B2 (en) | 1991-01-31 | 2005-03-29 | Hitachi, Ltd. | Storage unit subsystem |
US7320089B2 (en) | 1991-01-31 | 2008-01-15 | Hitachi, Ltd. | Storage unit subsystem |
Also Published As
Publication number | Publication date |
---|---|
CA2080579A1 (en) | 1991-10-17 |
WO1991016711A1 (en) | 1991-10-31 |
DE69127895T4 (de) | 1998-07-16 |
AU654482B2 (en) | 1994-11-10 |
US5124987A (en) | 1992-06-23 |
JP3302688B2 (ja) | 2002-07-15 |
EP0526487A1 (en) | 1993-02-10 |
AU7651391A (en) | 1991-11-11 |
CA2080579C (en) | 2000-01-25 |
DE69127895D1 (de) | 1997-11-13 |
DE69127895T2 (de) | 1998-04-02 |
EP0526487B1 (en) | 1997-10-08 |
ATE159110T1 (de) | 1997-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3302688B2 (ja) | 並列ディスク駆動機構アレイ式データ記憶サブシステム用の論理トラック書込みスケジューリングのシステム | |
US5430855A (en) | Disk drive array memory system using nonuniform disk drives | |
US5210866A (en) | Incremental disk backup system for a dynamically mapped data storage subsystem | |
US5239659A (en) | Phantom duplex copy group apparatus for a disk drive array data storge subsystem | |
US5155835A (en) | Multilevel, hierarchical, dynamically mapped data storage subsystem | |
US5379391A (en) | Method and apparatus to access data records in a cache memory by multiple virtual addresses | |
US5581724A (en) | Dynamically mapped data storage subsystem having multiple open destage cylinders and method of managing that subsystem | |
US5410667A (en) | Data record copy system for a disk drive array data storage subsystem | |
US5404361A (en) | Method and apparatus for ensuring data integrity in a dynamically mapped data storage subsystem | |
US5394532A (en) | Disk drive array memory system having instant format capability | |
US5632012A (en) | Disk scrubbing system | |
US5077736A (en) | Disk drive memory | |
US5146588A (en) | Redundancy accumulator for disk drive array memory | |
US5403639A (en) | File server having snapshot application data groups | |
US5459857A (en) | Fault tolerant disk array data storage subsystem | |
EP0422030B1 (en) | Disk drive memory | |
US4989206A (en) | Disk drive memory | |
US6529995B1 (en) | Method and apparatus for maintaining and restoring mapping table entries and data in a raid system | |
US4989205A (en) | Disk drive memory | |
US5720027A (en) | Redundant disc computer having targeted data broadcast | |
US5089958A (en) | Fault tolerant computer backup system | |
JP3181398B2 (ja) | アレイ型記録装置 | |
GB2298307A (en) | A disk array with multiport memory |
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 |
|
LAPS | Cancellation because of no payment of annual fees |