JPH04322323A - 可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置 - Google Patents

可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置

Info

Publication number
JPH04322323A
JPH04322323A JP4025160A JP2516092A JPH04322323A JP H04322323 A JPH04322323 A JP H04322323A JP 4025160 A JP4025160 A JP 4025160A JP 2516092 A JP2516092 A JP 2516092A JP H04322323 A JPH04322323 A JP H04322323A
Authority
JP
Japan
Prior art keywords
dasd
blocks
block
record
track
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
Application number
JP4025160A
Other languages
English (en)
Other versions
JPH0731580B2 (ja
Inventor
Jaishankar M Menon
ジャイシャンカー ムーセダス メノン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH04322323A publication Critical patent/JPH04322323A/ja
Publication of JPH0731580B2 publication Critical patent/JPH0731580B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、可変長レコードの固定
ブロックフォーマットされた直接アクセス記憶装置(D
ASD)、特に前記DASD内のN+2個の同期型DA
SDのアレイへのアクセス、及び後者から前者へのアク
セスを行うCPUの改良に関する。
【0002】
【従来の技術】DASD装置は、可変長或いは固定長レ
コードを循環トラックエクステントに沿って記憶するこ
とができるようフォーマットされてきた。1つの長年の
目標は、そのようなDASD記憶レコードにアクセスす
るために必要な時間を最小限にすることであった。また
、これは、読み出し/書き込みヘッドをレコードの始め
にDASDトラックとトラックエクステントに放射状に
位置づけるために要する時間を最小限にし、且つレコー
ドを装置へ、及び後者から前者への流れに要する回転数
を最小限にすることを意味する。常に、システム状態(
必要な簿記を行う)を各アクセス毎に再調整する必要が
ある。
【0003】以下に論じられる先行技術において、バウ
アーズ(Bowers) はより密度の低いDASD記
録媒体からより密度の高いDASD記録媒体までの可変
長レコードのトラック対トラックマッピングを述べてい
る(ONTO(上への)マッピングとも呼ばれる)。米
国特許出願第07/197、057号では、可変長レコ
ードを固定ブロックフォーマット化トラックに重なる仮
想トラックとしてマップしている。米国特許出願第07
/666、289号では、短縮された間隔のN個のDA
SDのアレイの要素の中に行優先順(DASDトラック
方向)で可変長レコードの書き込み更新を実行している
【0004】DASDの可変長レコードデータの重要な
部分は可変長フォーマットのDASD記憶装置にある。 IBMS/370  CPU及び付属の外部記憶装置に
用いられる1つの統括は、周知のMVSオペレーティン
グシステムの下で作動するカウント/キー/データ即ち
、CKDとして知られている。この統括において、各レ
コードは固定長カウントフィールド、任意のキーフィー
ルド、及び可変長データフィールドから成る。カウント
フィールドがデータフィールドの長さを定義する一方、
キーフィールドがレコードの識別として役立つ。
【0005】DASDトラックに記録されたフィールド
の各々は、予め定めた固定サイズのギャップによりトラ
ックに沿ってスペースをとって配置される。ギャップが
読み出し/書き込みヘッドの下で一定の速度で回転する
とき、このギャップはシステムが次のフィールドを扱う
準備中に時間間隔を定義する。
【0006】1つの物理的DASDトラックエクステン
トを越えてスパンするデータフィールドを有するレコー
ドは、CPUにおいて、適切なポインタやオペレーティ
ングシステムの記憶装置やファイル管理部分に保全され
た他の連係する規定を備えるいくつかのより小さいレコ
ードへと再フォーマットされる。同様に、トラックは種
々の長さの多くの小規模レコードを記憶することもある
。DASDに可変長レコードを読み出し、書き込み、更
新することは、固定エクステントのみを有するレコード
より多くの処理が必要とされることになる。
【0007】本明細書において、用語「セクタ」と「ト
ラックエクステント」は同義語である。DASDのアレ
イのコンテクストで使われるとき、それらの用語は用語
「列」と同義語である。
【0008】米国特許第4、223、390号では、記
録密度のより低いフルDASDトラックから記録密度の
より高い部分DASDトラックへ可変長フォーマットさ
れた(CKD)レコードのマッピングを記述している。 また、米国特許第4、223、390号において、1対
1フィールド、ギャップ、及びトラック対応と記録の終
わりを保証するため精巧なカウンタとオフセットを用い
ている。これは、異なる密度のトラックに同じ要素によ
って占有されるトラック長の相違に起因する。ある集合
の全ての要素が第2集合の真部分集合になるという意味
でこれはONTOマッピングである。
【0009】固定ブロックフォーマット化DASDの可
変長レコード 米国特許出願第07/197、057号、「1つのレコ
ードフォーマットから他のレコードフォーマットへのエ
ミュレート(Emulating One Recor
d Format onAnother Record
 Format)」は、CKD可変長レコードを固定ブ
ロックフォーマット化DASDトラックへ部分トラック
マッピングするための方法に関する。この方法の工程は
、(a)埋め込みポインタを用いてDASDにCKDレ
コードをブロック及び記録する一方、レコードフィール
ド、ギャップ順序及び記録エクステントを保存する工程
と、(b)アクセスコマンドに応じてポインタ間に定義
されたブロック済のレコードをステージする工程と、を
含む。
【0010】ブロック工程は、(1)各ブロックの最初
のポインタを、もしあれば、任意のCKDレコードの第
1カウントフィールドへ挿入することを要する。ギャッ
プ情報は、ポインタによりカウントフィールドにレコー
ドの始めとして符号化される。同様に、カウントフィー
ルドは対の一方のキーとデータフィールドをポイントす
る。ブロック工程は更に、(2)論理CKDトラックの
終わりを示す最終CKDレコードのカウントフィールド
に、ポインタを挿入することを要する。
【0011】上記米国特許出願第07/197、057
号による方法の最後の工程は、CPUが生成した読み出
しコマンドからのCKDアドレス情報に応じる。この工
程は、レコードの終わりまでブロック内でCKDアドレ
スと対になるブロック番号及び記録済ポインタにより定
義されたパスをアクセスすることによって、固定ブロッ
クフォーマット化DASDからブロックをステージする
ことを必要とする。
【0012】N個のDASDのアレイの可変長レコード
米国特許出願第07/666、289号、「DASDア
レイの選択されたDASDに記憶された可変長レコード
に単一パス小規模読み出し/書き込みアクセスを保証す
るための方法と手段(A Method and Me
ans forEnsuring Single Pa
ssSmall Read/Write Access
 to Variable Length Recor
dsStored on Selected DASD
s in a DASDArray)」では、N個のD
ASDのアレイに行優先順(DASDトラック方向)に
記憶された可変長レコードの書き込み更新が、可変長レ
コードのバイトオフセットと、N−1個の他のDASD
を横切る同じトラックに記憶されたデータのバイトレベ
ルパリティイメージのバイトオフセットとの相関を利用
することで容易になることが開示されている。
【0013】従って、短縮された間隔の書き込み更新は
、データを変更し書き換えると同時にパリティを変更し
書き換えることによって得られる。即ち、データ及び関
連するパリティの両方は等価の仮想DASDにおけるバ
イトオフセットによってアクセスされる。次に、データ
及びパリティはそれぞれ再計算され、選択された第N番
目のDASDに書き換えられる。
【0014】パリティイメージは、異なるDASDを横
切って分散されるので、「パリティDASD」等は存在
しない。例えば、N=10個のDASDのアレイでは、
DASD1−9からの第i番目のトラックのイメージは
DASD10に記憶されるが、DASD2−10上の第
i+1番目のトラックのイメージはDASD1に記憶さ
れる。
【0015】DASDの可変長レコードマッピングは精
巧なオーバーヘッド処理を要する 重要なことだが、バウアーズはDASDの間のレコード
のCKD対CKDのONTOトラックマッピングを実行
するため、トラックに沿ったフィールドとギャップのバ
イトとバイトオフセットとの精巧な比較カウントを必要
とする。これはトラック記録密度の相違により発生する
【0016】上記米国特許出願第07/197、057
号及び第07/666、289号が同じ密度を有する記
録トラックの可変長レコードを定義する一方で、バイト
レベルカウント、変位及びポインタの精巧さは未だ必要
とされる。第1の場合、精巧さは単一DASDに「可変
長レコードの仮想ディスクトラック」を生成するために
用いられる。第2の場合、精巧さはDASDのアレイに
行優先順(DASDトラック方向)で可変長レコードを
定義する。これが、増加した同時処理(少なくとも2つ
の異なる処理が同時にアレイをアクセスする可能性があ
る)のための集約計算に必要とされるデータスループッ
トを大幅に減少させる。また、更新書き込みコマンドの
実行の完了には少なくとも2つのDASDディスク回転
を必要とするということに注目すべきである。
【0017】
【発明が解決しようとする課題】本発明の目的は、N+
2個の同期型固定ブロックフォーマット化DASDのア
レイに定義された可変長レコードにアクセスし、且つ記
憶スペースの有効な利用を図るために、必要な時間を最
小限にする方法と手段を得ることである。
【0018】本発明の他の目的は、任意のアレイのレコ
ード位置へのアクセスタイムが、レコードの始めを含む
DASDの故障以外の単一DASDの故障の場合ですら
単一パスに必要な時間だけですむことを、そのような方
法と手段が保証することである。
【0019】本発明のなお他の目的は、任意のアレイの
位置へのアクセスタイムが、レコードの始めを含むDA
SDが故障した場合2つのパスに必要な時間だけですむ
ことを、そのような方法と手段が保証することである。
【0020】本発明のまた他の目的は、その方法と手段
がDASDアレイの使用を、迅速なアクセス、高い容量
、数値集約計算等の中間結果記憶として高めることであ
る。
【0021】
【課題を解決するための手段と作用】それらの目的を満
足させるにあたって、同期型DASDアレイの任意のレ
コードへの単一パスアクセスは以下のように保証される
ということが予期せず見られた。 (1)レコードを一連の等しいサイズのブロックに区分
して、DASDを横切って列優先順にブロックを書き込
む。 (2)レコードの各始め(カウントフィールド)をアレ
イの同じDASDの異なるトラックエクステントに記録
する。 (3)レコードブロックの始めとN個のブロックを含む
DASDの前に隣接するトラックエクステントに記録さ
れた1ブロックにスパンするパリティブロックを、その
N個の他のDASDの現行トラックエクステント(列)
から形成する。
【0022】特に、本発明の方法と手段は、各可変長レ
コードを変数K個の等しい固定長ブロックに区分し、前
記ブロックを列優先順で(N+1)個のDASDのトラ
ックエクステントへ同期して書き込むことを含む。列優
先順は、各レコードの第1ブロックが(N+1)番目の
DASDの同じトラックの異なるトラックエクステント
に沿って書き込まれるよう制限される。
【0023】次に、その方法は、(N+1)個のDAS
Dの各i番目のトラックエクステントに対応する(N+
2)番目のDASDのi番目のトラックエクステントに
沿って、単一パリティブロックP(i)を形成すること
を必要とする。P(i)は、(N+1)番目のDASD
の(i−1)番目のトラックエクステントに沿って書き
込まれるブロックと、i番目のトラックエクステントに
沿って第1のN個の他のDASDからのN個のブロック
とを論理的に組み合わせる。
【0024】最後に、この方法は各外部(読み出し/書
き込み)コマンドに応じて、上述の工程によって定義さ
れた順序でアレイDASDのトラックを横断(トラバー
ス)し、そのようなコマンドに指定された任意のレコー
ドを形成するブロックをスパンするパリティブロックと
が単一パスの間にアクセスされる。
【0025】本発明の方法において、列優先順は(N+
1)を法とするKがとられる。また、任意のレコードの
K個のブロックは(N+1)個のDASDの任意の1つ
にあるK/(N+1)連続トラックエクステントだけを
占有する。同じDASDトラックに沿った連続エクステ
ントはまた、アレイにおける行優先順として参照される
。最後に、パリティイメージは排他的オア(XOR)操
作によって、同一でオフセット列において指定済のブロ
ックに形成される。
【0026】オフセットは、(N+1)番目のDASD
の現行トラックエクステントに現れるブロックの内容が
、書き込み操作のためのシステムによって常に決定でき
るわけではないという事実を反映する。対照的に、その
ような決定はDASD1からNの現行トラックエクステ
ント(列)に現れるブロックに対して常に可能である。
【0027】本発明の他の態様は、可変長レコードへの
単一パスアクセスを、アレイがDASDを含むレコード
の非開始の便宜的故障を受けやすいところでさえ保証す
ることである。これは、N+1個の残りのDASDから
ブロックを使って、同時にオンザフライでブロックを排
他的オアし(再生し)、且つアクセスすることによって
達成される。
【0028】本発明のまた他の態様は、レコードの始め
を含むDASDの故障によって、次に書き込みアクセス
のため2つのパスのレコードアクセスが達成され、読み
出しアクセスのため1つのパスだけが必要とされること
である。書き込みコマンドの実行に関して、第1パスが
レコードブロックの始めを決定するために必要とされる
一方、第2パスがアクセス自体を実行する。
【0029】故障したDASDからのデータがフォーマ
ット化されたスペアのDASDに書き換えられるまで、
アレイは劣化モードで作動すると言われる。アレイが更
新されたスペアとともに作動するとき、故障許容モード
で作動すると言われる。スペアリングがなければ、使用
不能データは各アクセスごとに再計算せねばならない。 また、任意の付加のDASDの故障によりアレイが作動
不能になる。
【0030】更に他の態様は、本発明の方法と手段が各
ブロック内に連続バイト順序、各フィールド内に連続ブ
ロック順序、及び各レコード内に連続フィールド順序を
もたらすことである。
【0031】
【実施例】本明細書において、「単一パス」はDASD
ディスク回転の1期間によって定義された間隔を意味す
る。また、用語「ツーパス」はDASDディスクの回転
の2期間によって定義された間隔を意味する。
【0032】同期型DASDアレイとその作動図1を参
照すると、CPU1がチャネル3、アレイコントローラ
5、キャッシュ13を含むパスを介して、DASD1か
らN+2にアクセスすることが示されている。 コントローラ5は、作動的に同期を確保し、コントロー
ルパス7を介してDASD1からN+2の中にアクセス
する。アクセスに応じて、所定数の連続バイトを定義す
るデータのN+2個のストリームは、データパス15を
介してキャッシュ13に並行して交換される。同様に、
読み出し方向におけるコントローラ5の並行から直列変
換及び書き込み方向における直列から並行変換後に、デ
ータはパス3を介してCPU1とコントローラ5の間の
バイトにより直列的に交換される。
【0033】読み出し方向では、データはデータパス9
と11を経てキャッシュ13からコントローラ5に供給
される。書き込み方向では、データはパス9と11を経
てコントローラ5からキャッシュ13に動かされる。
【0034】ブロックのN+1は少なくとも可変長レコ
ードの一部を表示する。(N+2)番目のブロックはパ
リティ情報を含む。
【0035】物理的記憶システムとして、N+2個のD
ASDのアレイはN+2個のDASDの任意の物理的配
列であって、これらのN+2個のDASDの内の選択さ
れたDASD(又は全て)は同時にアクセス可能である
と定義される。関連して、論理的/物理的記憶装置とし
て、アレイのフォーマット化と後続の読み出し/書き込
みアクセスは、行又は列方式で連続した位置に値を複写
/挿入することにより進む。もし作動が列方向で実行さ
れるならば、「列優先順」に実行されると指定される。 同様に、もし行方向に実行されるならば、「行優先順」
に実行されると指定される。次に、マッピングが論理的
「アレイ」から物理的記憶装置(即ち、DASDの集団
群)へと行われる。
【0036】図2を参照すると、米国特許出願第07/
666、289号に従ってCKD可変長レコードの行優
先又はトラック向きレイアウトが示される。パリティは
アレイDASDの内の専用DASDに書き込まれる。
【0037】CPUとオペレーティングシステムCPU
1は、IBM  MVSオペレーティングシステムを有
するIBM  S/370タイプであることもある。 S/370操作の原理は、米国特許第3、400、37
1号に十分に記述されている。外部記憶装置へのCPU
のシェアリングアクセスを含む構成は、米国特許第4、
207、609号に示される。
【0038】CKDとECKDのコマンドとアーキテク
チャ 米国特許第4、207、609号及びこの特許で引用さ
れた参考文献は、CPUにより付属のDASD記憶サブ
システムから可変長レコードを得るためのCKDコマン
ドとその用途を記述する。
【0039】このアーキテクチャの下で、CPUは「チ
ャネル指令語」即ち、CCWと称される連鎖した特殊目
的の入出力(I/O)命令を用いて、付属のサブシステ
ムに、デマンド/応答インタフェースを介してデータス
トリームをアクセスし転送するための専用仮想プロセッ
サを生成する。CCWは高速呼び出しのためにCPU主
記憶装置の一部に記憶される。アプリケーションプログ
ラムが外部記憶装置(通常、付属のDASD記憶装置)
への読み出し又は書き込みに必要なアクセスを実行する
と、次にCPU  S/370オペレーティングシステ
ムは入出力開始(START  I/O)コマンドを用
いてそのような参照を開始する。このコマンドはCPU
に、多重処理状態を中断させ、CCW連鎖へ転送させ、
CCW連鎖の完了後前の状態を再設定させる。
【0040】少なくともCCWのいくつかは、局所解読
又は実行のためCPUによって外部記録サブシステムに
送られる。即ち、シークとセットセクタ(SEEK  
andSET  SECTOR)のようなCCWは、D
ASDと他のシステム要素への及びからのデータの動き
を同期するために、アクセス手段の局所タスク指名を必
要とする。しかしながら、CCW連鎖の各独立参照や呼
び出しは他の入出力開始(START  I/O)MV
S命令を必要とする。
【0041】不利なことだが、オーバヘッドサイクルが
CPU情報状態をセーブしレストアすることに費やされ
るため、各入出力開始は全体のCPUスループットを削
減する。これに関して、CKDコマンド集合は、数々の
コマンドによってDASDアレイ等の外部記憶サブシス
テムに新たな入出力開始を必要とせずに一連の操作を実
行させるため増加された。
【0042】ECKDは拡張カウント、キー、データ(
Extended  Count,Key,Data)
コマンドの頭字語である。定義エクステント(DEFI
NEEXTENT)、位置指定(LOCATE)、読み
出し(READ)、及び書き込み(WRITE)コマン
ドの詳細なアーキテクチャの記述のため、”「IBM3
990記憶制御の参照(IBM 3990 Stora
ge Control Reference) 」第2
版、版権IBM  1988年、GA32−0099 
、第4章「コマンドについての記述(Command 
De−scriptions) 」49頁−166 頁
”が参照される。これらのコマンドは、CKDフォーマ
ット化可変長レコードに適用されるため、後述の本発明
の方法と手段に用いられている。
【0043】定義エクステント及び位置指定コマンド再
び図1を参照すると、CPU1は定義エクステント(D
EFINE  EX−TENT)及び位置指定(LOC
ATE)をアレイコントローラ5への一対の連続コマン
ドとして発する。第1の、即ち、定義エクステントコマ
ンドは、後続のCCWがアクセス可能なアレイ記憶スペ
ースの境界即ち、範囲(エクステント)を定義する。 第2の、即ち、位置指定コマンドは、第1コマンドに特
定された許容スペース内のデータに実行されるべき操作
を識別する。更に、位置指定CCWは、操作を実行する
ための許容スペース内の位置をポイントする。
【0044】アレイコントローラ5は第1CCWにエク
ステント情報を記憶し、エクステント情報と第2CDに
記載された位置とを比較する。位置指定CCWにより指
名された操作は、比較整合で実行される。さもなければ
、コントローラ5はCPU1にエラー表示を提供する。 従って、多重操作は他の入出力開始(START  I
/0)を招かずに可能となる。
【0045】N+2個の固定ブロックDASDのアレイ
におけるCKDレコードの列優先順 図4を参照すると、各々がDASDアレイを(垂直に)
横切って列優先順に変数K個の等しいサイズの固定長ブ
ロックを有する、可変長CKDフォーマット化レコード
の記憶領域が示されている。各固定長ブロックは典型的
に512バイトから成る。この図において、4個のDA
SDの各々から1個のトラックが並べられる。実例とし
て、各DASDのトラック容量は6ブロックまでである
【0046】データブロックは、列優先順に連続して1
から18の番号を付ける。同様に、パリティブロックは
P1からP6と指定される。また、CKDトラックはキ
ーフィールドを有さないと仮定される。この仮定は議論
を単に容易にする。CKDレコードを含む各トラックは
、伝統的なホームアドレス(HA)とレコードゼロ(R
0)フィールドに続いて4個のレコードR1、R2、R
3、R4を含む。
【0047】各レコードは、カウントフィールドとデー
タフィールドを有する。C1はR1のカウントフィール
ド、C2はR2のカウントフィールド等となる。D1は
R1のデータフィールド、D2はR2のデータフィール
ド等となる。D1が1Kバイト、D2が512ブロック
、D3が2.5Kブロック、D4が1Kブロックと仮定
される。
【0048】レイアウトの制限とパリティ決定制限は規
則即ち、番号の付いたステートメントとして次の通りに
示される。
【0049】1.全ての固定長ブロックに列優先順に番
号を付ける。従って、ブロック1がDASD1に、ブロ
ック2がDASD2にある等となり、ブロック4がDA
SD1に戻る。一般的に、これはK個の固定ブロックか
ら形成された可変長レコードが(N+1)を法とする列
優先順Kで書き込まれることを述べている。
【0050】2.各ブロックは1個のCKDフィールド
だけからのデータを含むことができる。
【0051】3.全てのフィールドはバイト介在でなく
、ブロック介在で記憶される。例えば、D1の第1の5
12ブロックはブロック4に記憶され、D1の第2の5
12ブロックはブロック5に記憶される。
【0052】4.全てのカウントフィールドは,指定さ
れた他の(N+1)番目のDASD(図4のDASD3
)にあるブロックに記憶されなくてはならない。従って
、C1はブロック3(DASD3から)、C2はブロッ
ク6(DASD3から)、C3はブロック9(DASD
3から)に記憶される。D2がブロック7で終わり、ブ
ロック8はDASD3のブロック9においてC3を開始
するために利用されていない。
【0053】5.(N+1)番目のDASDより早いe
トラックエクステントの位置(列i−1)からの1ブロ
ックと、第1のN個のDASDの現行トラックエクステ
ントの位置(列i)からのN個のブロックとを含んでス
パンする列パリティP(i)をオフセットする。実例と
して、P2はブロック3、4、5からのパリティを含み
、P3はブロック6、7、8からのパリティを含む等と
なる。ブロック3、4、5は1パリティ群に属し、ブロ
ック6、7、8は他のパリティ群に属す等となる。
【0054】規則5がないときは、P1はブロック1、
2、3からのパリティを含み、P2はブロック4、5、
6からのパリティを含み、P3はブロック7、8、9か
らのパリティを含む等となる。
【0055】N+2個のDASD固定ブロック同期型ア
レイを横切るCKDレコードの1パス書き込み再び図3
と共に図4を参照すると、DASDトラックエクステン
トに沿ってトラックエクステントに対応するタイムユニ
ットはT1,T2...T6と名付けられる。 C1のサーチを第1に必要とするような、D1を更新す
るための要求を考慮する。コントローラ5は、ブロック
3から論理501のバッファ(図示せず)へC1を読み
出すことでタイムユニットT1にてそのような探索(サ
ーチ)を行い、その値をホスト供給値と比較する。整合
すれば、タイムユニットT2内にD1をブロック4と5
に書き込むため、論理501はパス515、論理503
、パス509を介してキャッシュ13へ、パス7を介し
てDASD1と2へコマンドを発する。同時に、ブロッ
クP2にパリティを書き込むため、論理501はまたパ
ス513、パリティコーダ507を介してキャッシュ1
3へ、またパス7を介してDASD4へコマンドを発す
る。
【0056】P2におけるパリティは、ブロック3、4
、5の排他的オアから成る。C1を含むブロック3はタ
イムT1にて読み出され、ブロック4と5はタイムT2
で書き込まれるべき新たな値を含み、従ってまたちょう
ど使用可能になる。従って、排他的オアをとるべき全て
の値は使用可能であり、パリティはちょうど生成されて
タイムT2においてP2へ書き込まれる。要するに、タ
イムT1にDASD3を読み出し、タイムT2内にDA
SD1、2、4へ書き込む。
【0057】次に、D2への書き込み、続いてD3への
書き込みを考える。操作は次のように進む。タイムT2
にて、DASD3のブロック6からC2を読み出す。整
合すれば、全てタイムユニットT3において、D2をD
ASD1に、P3をDASD4に書き込み、DASD3
からC3を読み出す。C3を整合し、タイムT4にて、
D3をDASD1、2、3(ブロック10、11、12
)に書き込み、P4をDASD4に書き込む。最後に、
タイムT5において、D3をDASD1と2(ブロック
13と14)に書き込み、P5をDASD4に書き込む
【0058】DASD故障が存在するときのアレイアク
セス たとえDASD1又はDASD2が故障していたとして
も、1パス書き込みは未だ可能であるという場合がある
。もしDASD3(カウントフィールドを含む)が故障
していれば、第2パスが必要になる。DASDの故障の
あるなしにかかわらず、読み出し操作は常に1パスであ
る。そのような読み出し操作中に、同じパリティ群に属
するDASD1と2からのブロックが、全てDASD3
からの遅延されたブロックとしてパリティユニットに同
時に達するように、DASD3から読み出されたブロッ
クはパリティユニットにパスされる前に1ブロックタイ
ム遅延されなければならない。
【0059】本願の方法によるスペース利用はCKDレ
コードのレコード長に依存する。すぐれたスペース利用
は、実際頻繁に発生する4Kブロックのような標準レコ
ード長で可能になる。4Kレコードでは、アレイはCK
Dレコードを記憶するために9ブロック(4.5Kブロ
ック)を用いるが、一方CKDのDASDはカウントフ
ィールドに4Kブロック及び40バイトを用いる。
【0060】故障したデータをもつDASDがフォーマ
ット化スペアDASDと置換された後のデータ再生故障
したDASDを置換するにはいくつかのメカニズムがあ
る。これらは、フォーマット化DASDのスペアによる
故障したDASDの手動的又は自動的置換と、スペアに
データを再生することを含む。参照として、米国特許第
4、914、656号及び、米国特許出願第07/65
3、596号、「DASDのアレイにおいて2個まで使
用不能なDASDのデータ内容を符号化し再生するため
の手段と方法(Method and Means F
or Encoding And Rebuildin
g Data Contents OfUp To T
wo Unavailable DASD In An
 Array Of DASDS)」において、RAI
D(遠隔アクセス対話式デバッキングプログラム)タイ
プ3アレイとRAIDタイプ5アレイそれぞれにおける
所謂「ホットスペアリング」が記述されている。
【0061】典型的に、ACU5はDASDの内の1個
が故障したことを確認する。故障基準は本発明の範囲外
である。一旦DASD、例えばDASD1が使用不能と
決定されると、ACU5は、米国特許第4、914、6
56号に記述の方法でスペアを切り替えて相互連結し、
次に単一パスにおける残りのアレイDASDの内容を排
他的オアをとることによりデータをスペアに組織的に再
生することができる。
【0062】故障許容モードにアレイをレストアするカ
ギは、1ブロックオフセットで(N+1)番目又は(N
+2)番目以外のスペアDASDを書き込み、インデッ
クスを再同期することである。これを実行するためのプ
ロトコルは、以下の例5に示される擬似コード制御フロ
ーにて説明されている。
【0063】チャネルプログラムによって解明される本
発明の原理 前述の通り、チャネルプログラムは、命令のいくつかが
CPU1による実行(技術的には解読)のためにアレイ
コントローラ5へ送られるというCCWのシーケンス又
は連鎖である。CCW連鎖は単に「チャネル」を読み出
し書き込むため設計される。最も高度なレベルでは、各
CCWのシーケンスは定義エクステント、位置指定、読
み出し/書き込みコマンドとループ(LOOP)他の条
件を終了させるテストから成る。
【0064】5つのシーケンスが示されている。これら
は、アレイの故障許容操作のための読み出し書き込みチ
ャネルプログラム、劣化したモードアレイ操作のための
読み出し書き込みチャネルプログラム、及び故障したD
ASDからの代りやスペアへのデータの再生を含む。ま
た、各プログラムはアレイコントローラとDASD力学
によって述べられる。
【0065】本発明に従う単一パス読み出し/書き込み
操作のためのチャネルプログラムの実行以下の例では3
+Pアレイが仮定される。即ち、3個のDASDはデー
タの記憶専用、1個のDASDはパリティブロックの記
憶専用となる。DASDの1個(図4のDASD3)が
レコードの始め(カウントフィールド)も記憶すること
に注意したい。
【0066】例1: −読み出しチャネルプログラムの開始−故障許容モード
定義エクステント 位置指定 読み出し 1.定義エクステント受信のとき: −コマンドを検査する −パラメータを取出し、検査する −エクステント情報(アドレスの範囲)をセーブする2
.位置指定受信のとき: −コマンドを検査する −シリンダとヘッドを取出し、それぞれ(CC、HH)
へシークする −CCとHHを検査し、以前特定されたエクステント内
にあるかを保証する −サーチパラメータの5バイト(CC、HH、R)を取
出す −サーチパラメータを検査する −トラックエクステント番号(S)パラメータを取出す
−トラックエクステント番号を検査する−Sを最も近い
3の倍数に丸める(3+Pアレイのとき);例えばS’ −S”=S’/3と仮定する −アレイの全てのDASDをシリンダCC、ヘッドHH
、トラックエクステントS”へ移動する(図2の例では
、もしSが8と特定されると、9まで丸めて、次に3で
割ってS”が3となる。全てのDASDにおいてD2が
DASD1に、ゼロがDASD2に、C3がDASD3
になるトラックエクステント位置3に移動する。)R:
カウントフィールドをこの位置で、トラックエクステン
トS”をDASD3から読み出す他のDASDはこのト
ラックエクステント位置において何もしない。 −もしこれがDASD3のカウントフィールドでないな
らば、S”を1つ増分して次のタイムユニットで、前の
工程の操作を繰り返す。もしそれがカウントフィールド
ならば、次の工程に続く。 −カウントフィールドを先に取出したサーチパラメータ
(CC、HH、R)と比較する。もし等しくなければ、
次のカウントフィールドとなるトラックエクステントを
計算するため、カウントフィールドにおいてキー及びデ
ータ長パラメータを使用する。S”をこのトラックエク
ステント位置へ更新し、R:に戻る。もしサーチパラメ
ータが整合するならば、次のCCWを取出す(データを
読み出す) −カウントフィールドにてデータ長パラメータを用いて
、データフィールドのトラックエクステント番号Xを計
算する。 ループ(LOOP): −もしX>=3ならば、次に全てのデータのDASDの
次のトラックエクステント位置から読み出す−もしX=
2ならば、次にDASD1と2の次のトラックエクステ
ント位置から読み出す −もしX=1ならば、次にDASD1の次のトラックエ
クステント位置から読み出す −もしX<=3ならば、次に停止する。X=X−3でな
ければ;ループ(LOOP)に戻る: −読み出しチャネルプログラムの終了−故障許容モード
【0067】例2: −書き込みチャネルプログラムの開始−故障許容モード
定義エクステント 位置指定 書き込み 1.定義エクステント受信のとき: −コマンドを検査する −パラメータを取出し、検査する −エクステント情報をセーブする 2.位置指定受信のとき: −コマンドを検査する −シリンダとヘッドを取出し、それぞれ(CC、HH)
へシークする −CCとHHを検査し、以前特定したエクステント内に
あるかを保証する −サーチパラメータの5ブロックを取出す−サーチパラ
メータを検査する −トラックエクステント番号(S)パラメータを取出す
−トラックエクステント番号を検査する−Sを最も近い
3の倍数に丸める(3+Pアレイのとき);例えばS’ −S”=S’/3と仮定する −アレイの全てのDASDをシリンダCC、ヘッドHH
、トラックエクステントS”へ移動する(図2の例では
、もしSが8と特定されると、9まで丸めて、次に3で
割りS”が3となる。全てのDASDにおいてD2がD
ASD1に、ゼロがDASD2に、C3がDASD3に
なるトラックエクステント位置3に移動する)。 R:カウントフィールドをこの位置に、トラックエクス
テントS”をDASDから読み出す 3.他のDASDはこのトラックエクステント位置にお
いて何もしない。 −もしこれがDASD3のカウントフィールドでないな
らば、S”を1つ増分し、次のタイムユニットで前の工
程の操作を繰り返す。もしそれがカウントフィールドな
らば、次の工程に続く。 −カウントフィールドを前に取出したサーチパラメータ
と比較する。もし等しくなければ、カウントフィールド
においてキー及びデータ長パラメータを用いて、次のカ
ウントフィールドとなるトラックエクステントを計算す
る。S”をこのトラックエクステント位置へ更新し、R
:に戻る。もしサーチパラメータが整合するならば、次
のCCWを取出す(データを書き込む)−カウントフィ
ールドにてデータ長パラメータを用いて、データフィー
ルドのトラックエクステント番号Xを計算する。 −現_トラックエクステント=S” ループ(LOOP): −前_トラックエクステント=S” −現_トラックエクステント=現_トラックエクステン
ト+1 −もしX>=3ならば、次に全てのデータのDASDの
現_トラックエクステント位置に書き込む−もしX=2
ならば、次にDASD1と2の現_トラックエクステン
ト位置に書き込む −もしX=1ならば、次にDASD1の現_トラックエ
クステント位置に、ゼロをDASD2に書き込む−全て
の場合において、現_トラックエクステントにおいてパ
リティDASDへPを書き込む ここでPは(DASD3の前_トラックエクステント)
XOR(DASD1の現_トラックエクステント)XO
R(デバイス(DEVICE)2の現_トラックエクス
テント) −もしX<=3ならば、次に停止する。X=X−3でな
ければ;ループ(LOOP)に戻る: −書き込みチャネルプログラムの終了−故障許容モード
劣化モードにおけるチャネルプログラムの実行:DAS
D1が故障したと仮定する
【0068】例3: −読み出しチャネルプログラムの開始−劣化モード定義
エクステント 位置指定 読み出し 1.定義エクステント受信のとき: −コマンドを検査する −パラメータを取出し、検査する −エクステント情報をセーブする 2.位置指定受信のとき: −コマンドを検査する −シリンダとヘッドを取出し、それぞれ(CC、HH)
へシークする −CCとHHを検査し、以前特定したエクステント内に
あるかを保証する −サーチパラメータの5ブロックを取出す−サーチパラ
メータを検査する −トラックエクステント番号(S)パラメータを取出す
−トラックエクステント番号を検査する−Sを最も近い
3の倍数に丸める(3+Pアレイのとき);例えばS’ −S”=S’/3と仮定する −アレイの全てのDASDをシリンダCC、ヘッドHH
、トラックエクステントS”へ移動する(図4の例では
、もしSが8と特定されると、9まで丸めて、次に3で
割ってS”が3となる。全てのDASDにおいてD2が
DASDに、ゼロがDASD2に、C3がDASD3に
、P3がDASD4(パリティDASD)になるトラッ
クエクステント位置3に移動する)。 R:カウントフィールドをこの位置で、トラックエクス
テントS”をDASDから読み出す 3.他のDASDはこのトラックエクステント位置にお
いて何もしない。 −もしこれがDASD3のカウントフィールドでないな
らば、S”を1つ増分し、次のタイムユニットで前の工
程の操作を繰り返す。もしそれがカウントフィールドな
らば、次の工程に続く。 −カウントフィールドを前に取出したサーチパラメータ
と比較する。もし等しくなければ、カウントフィールド
においてキーとデータ長パラメータを用いて、次のカウ
ントフィールドとなるトラックエクステントを計算する
。S”をこのトラックエクステント位置へ更新し、R:
に戻る。もしサーチパラメータが整合するならば、次の
CCWを取出す(データを読み出す)−カウントフィー
ルドにてデータ長パラメータを用いて、データフィール
ドのトラックエクステント番号Xを計算する。 −現−トラックエクステント=S” ループ(LOOP): −前_トラックエクステント=S” −現_トラックエクステント=現_トラックエクステン
ト+1 −もしX>=3ならば、次に全てのDASDの現_トラ
ックエクステントから読み出す −DASD1が壊れているため、DASD1の現_トラ
ックエクステントを計算し、オンザフライで(同時に)
(DASD3の前_トラックエクステント)XOR(D
ASD2の現_トラックエクステント)XOR(DAS
D4の現_トラックエクステント)DASD3の前_ト
ラックエクステントは使用可能になり、DASD2と4
の現_トラックエクステントが読み出し可能である。ま
た、DASD3の前_トラックエクステントが必要とさ
れるとき、DASDの現_トラックエクステントがルー
プの次の反復の前_トラックエクステントとなるため、
DASD3の現_トラックエクステントは読み出される
べきである。 −もしX=2ならば、次に現_トラックエクステントを
読み出しの一部として、DASD1と2からCPU1ホ
ストへ戻す。DASD2からの現_トラックエクステン
トは直接読み出されてCPUに戻される。DASD1か
らの現_トラックエクステントは、計算され、オンザフ
ライで(同時に)(デバイス3の前_トラックエクステ
ント)XOR(デバイス2の現_トラックエクステント
)XOR(DASD4の現_トラックエクステント)前
_トラックエクステントは既にDASD3に位置づけら
れ、現_トラックエクステントはDASD2と4から読
み出し可能である。また、DASD3の前_トラックエ
クステントが必要とされるとき、現_トラックエクステ
ントがループ(LOOP)の次の反復の前_トラックエ
クステントとなるため、現_トラックエクステントもD
ASD3から読み出されるべきである。 −もしX=1ならば、次に現_セクタをDASD1から
CPU1に戻す必要がある。DASD1が壊れているた
め、DASD1からの現_トラックエクステントが計算
され、オンザフライで(同時に)(DASD3の前_ト
ラックエクステント)XOR(DASD2の現_トラッ
クエクステント)XOR(DASD4の現_トラックエ
クステント)DASD3の前_トラックエクステントは
既に使用可能であり、現_トラックエクステントはDA
SD2と4から読み出し可能である。DASD3の前_
トラックエクステントが必要とされるとき、現トラック
エクステントがループの次の反復の前_トラックエクス
テントとなるため、現_トラックエクステントもDAS
D3から読み出されるべきである。 −もしX<=3ならば、次に停止する。X=X−3でな
ければ;ループ(LOOP)に戻る: −読み出しチャネルプログラムの終了−劣化モード
【0
069】例4: −書き込みチャネルプログラムの開始−劣化モード定義
エクステント 位置指定 書き込み 1.定義エクステント受信のとき: −コマンドを検査する −パラメータを取出し、検査する −エクステント情報をセーブする 2.位置指定受信のとき: −コマンドを検査する −シリンダとヘッドを取出し、それぞれ(CC、HH)
にシークする −CCとHHを検査し、以前特定したエクステント内に
あるかを保証する −サーチパラメータの5バイトを取出す−サーチパラメ
ータを検査する −トラックエクステント番号(S)パラメータを取出す
−トラックエクステント番号を検査する−Sを最も近い
3の倍数に丸める(3+Pアレイのとき);例えばS’ −S”=S’/3と仮定する −アレイにおける全てのDASDをシリンダCC、ヘッ
ドHH、トラックエクステントS”に移動する(図4の
例では、もしSが8と特定されると、9まで丸めて、次
に3で割ってS”が3となる。全てのDASDにおいて
D2がDASD1に、ゼロがDASD2に、C3がDA
SD3に、P3がDASD4(パリティDASD)にな
るトラックエクステント位置3に移動する)。 R:  カウントフィールドをこの位置で、トラックエ
クステントをDASD3から読み出す他のDASDはこ
のトラックエクステント位置において何もしない。 −もしこれがDASD3のカウントフィールドでないな
らば、S”を1つ増分し、次のタイムユニットで前の工
程の操作を繰り返す。もしカウントフィールドならば、
次の工程に続く −カウントフィールドを前に取出したサーチパラメータ
と比較する。もし等しくなければ、カウントフィールド
のキーとデータ長パラメータを用いて、次のカウントフ
ィールドとなるトラックエクステントを計算する。S”
をこのトラックエクステント位置へ更新してR:に戻る
。 もしサーチパラメータが整合するならば、次のCCWを
取出す(データを書き込む)−カウントフィールドのデ
ータ長パラメータを用いて、データフィールドのトラッ
クエクステント番号Xを計算する。 −現_トラックエクステント=S” ループ(LOOP): −前_トラックエクステント=S” −現_トラックエクステント=現_トラックエクステン
ト+1 −もしX>=3ならば、次にDASD1を除く全てのD
ASDの現_トラックエクステント位置に書き込む−も
しX=2ならば、次にDASD2と4の現_トラックエ
クステント位置に書き込み、DASD3の現_トラック
エクステントから読み出す。次の反復においてDASD
3の現_トラックエクステントが前_トラックエクステ
ントとなり、DASD3の前_トラックエクステントが
パリティを生成するのに必要なため、DASD3の現_
トラックエクステントは読み出される。 −もしX=1ならば、次にDASD2(ゼロ)とDAS
D4に書き込む。次の反復においてDASD3の現_ト
ラックエクステントが前_トラックエクステントとなり
、DASD3の前_トラックエクステントがパリティを
生成するのに必要なため、DASD3の現_トラックエ
クステントは読み出される。 −全ての場合において、Pを現_トラックエクステント
におけるパリティDASDに書き込む ここでPは(DASD3の前_トラックエクステント)
XOR(DASD1の現_トラックエクステント)XO
R(デバイス2の現_トックエクステント)上記の数式
におけるDASD1の現_トラックエクステントは、書
き込みデータの一部としてホストから入手されるのであ
って、DASDからは読み出されない。DASD3の前
_トラックエクステントは、前のセクタ位置にて読み出
される −もしX<=3ならば、次に停止する。X=X−3でな
ければ;ループ(LOOP)に戻る: −書き込みチャネルプログラムの終了−劣化モード−書
き込み終了時、DASD1には何のデータも書き込まれ
ていなかったが、他の全てのデータDASDとパリティ
DASDにはデータが書き込まれていた。従って故障し
たDASDが置換されるとき、全てのミッシングデータ
は再計算されて、置換されたDASDに記憶される。
【0070】例5: 故障したDASD1がフォーマット化スペアDASDと
置換された後のデータの再生方法: −C=DASDのシリンダの数 −T=シリンダあたりのトラックの数 −B=トラックあたりのトラックエクステントの数−フ
ォーマット化スペアDASDをアレイコントローラに接
続し、他のアレイDASDのインデックスからの1トラ
ックエクステントによりトラックインデックスオフセッ
トを整合する i=1からCまでドウ(Do)する 全てのDASDのシリンダiへ移動するj=1からTま
でドウする 全てのDASDのトラックjへ移動するk=1からBま
でドウする タイムユニットkのスペアDASDに記憶されるべきト
ラックエクステントkを生成する DASD1(スペアDASD)のトラックエクステント
kの値は次の通り生成される (DASD2のトラックエクステントk)XOR(DA
SD4のトラックエクステントk)XOR(DASD3
のトラックエクステントk−1) k>=2のとき; DASD1のトラックエクステントkの値は次の通り生
成される (DASD2のトラックエクステントk)XOR(DA
SD4のトラックエクステントk)XOR(DASD3
のトラックエクステントB) k=1のとき; タイムユニットk+1のスペアDASDに、生成された
トラックエクステントkを記憶する kのドウ終了; jのドウ終了; iのドウ終了; スペアDASDのトラックインデックスと残りのアレイ
DASDのトラックインデックスを再同期する故障許容
モードを入力する
【0071】
【発明の効果】本発明は上記より構成され、N+2個の
同期型固定ブロックフォーマット化DASDのアレイに
定義された可変長レコードにアクセスするために必要な
時間を最小限にする。
【図面の簡単な説明】
【図1】アレイ制御装置によってCPUに付属のN+2
個のDASDの同期型アレイを描写する。
【図2】先行技術に従って、行優先順(トラック方向)
にN個のDASDアレイを横切る可変長CKDレコード
のレイアウトを図解する。
【図3】図1に示されるアレイ制御装置のコントローラ
5論理を拡大する。
【図4】本発明に従って、固定ブロックフォーマット化
DASDのアレイにおける、列優先順(垂直なトラック
エクステント方向)での可変長CKDレコードのレイア
ウトを示す。
【符号の説明】
1                  CPU3  
                チャネル5    
              アレイコントローラ7 
                 コントロールパス
9、11、15      データパス13     
           キャッシュ501、503  
    論理 507              パリティコーダ5
13、515      パス

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】  (N+2)個の同期型固定ブロックフ
    ォーマット化多重トラックDASDのアレイに定義され
    た可変長レコードへアクセスする方法であって、(a)
    各可変長レコードを変数K個の固定長ブロックに区分し
    、前記ブロックを(N+1)個のDASDの各々の対の
    一方のトラックエクステントを横切って列優先順に同期
    的に書き込み、各レコードの第1ブロックが(N+1)
    番目のDASDの異なるトラックエクステントに沿って
    書き込まれるよう前記列優先順が制限される工程と、(
    b)(N+1)個のDASDの各々のi番目のトラック
    エクステントに対応する(N+2)番目のDASDのi
    番目のトラックエクステントに沿って工程(a)と同時
    にパリティブロックP(i)を形成して書き込み、P(
    i)が(N+1)番目のDASDの(i−1)番目のト
    ラックエクステントに沿って書き込まれたブロックとi
    番目のトラックエクステントに沿う第1のN個の他のD
    ASDからのN個のブロックとを論理的に結合する工程
    と、(c)各アクセス(読み出し/書き込み)コマンド
    に応じて、工程(a)と(b)によって定義された順に
    アレイDASDのトラックエクステントを横断して、そ
    のようなコマンドにより特定された任意のレコードを形
    成するブロックとスパンするパリティブロックが単一パ
    スの間にアクセスされる工程と、を含む可変長レコード
    へのアクセス方法。
  2. 【請求項2】  列優先順が(N+1)を法とするKを
    とり、更に任意のレコードのK個のブロックが第1の(
    N+1)個のDASDの任意の1つのK/(N+1)個
    の連続トラックエクステントのみを占有する、請求項1
    に記載の可変長レコードへのアクセス方法。
  3. 【請求項3】  工程(b)の論理的結合が(N+1)
    個のブロックの排他的オア動作を実行する論理的結合を
    含む、請求項1に記載の可変長レコードへのアクセス方
    法。
  4. 【請求項4】  共通パスを介して固定ブロックフォー
    マット化DASDアレイの1つを横切る可変長レコード
    への単一パス同期型アクセスを保証する方法であって、
    各レコードが少なくとも固定長カウントフィールドと可
    変長データフィールドとを含み、(a)各レコードをカ
    ウントフィールドを表示する第1ブロックとデータフィ
    ールドを表示する変数の他のブロックへと再フォーマッ
    トし、各再フォーマット化レコードのブロックをN+1
    個のDASD上へ列優先順で同期的に書き込み、全ての
    第1ブロックが(N+1)番目のDASDに記録される
    ように前記列優先順が制限される工程と、(b)(N+
    2)番目のDASDへ工程(a)と同時に各対の一方の
    列順のパリティブロックを形成して書き込み、各パリテ
    ィブロックが第1のN個のDASDから同じ列のN個の
    ブロックと(N+1)番目のDASDの上のそれに対し
    てオフセットされた1ブロック1列をスパンする工程と
    、(c)少なくとも1レコードを要求する各コマンドに
    応じて、工程(a)と(b)によって定義された順に要
    求されたレコードを形成するブロックとそれらと相関さ
    れたパリティブロックとにアクセスし、単一パスに要求
    されたレコードとそのパリティイメージへのアクセスを
    保証する工程と、を含む単一パス同期型アクセス保証方
    法。
  5. 【請求項5】  パリティブロックが、スパンされたブ
    ロックの排他的オアによって形成される請求項4に記載
    の単一パス同期型アクセス保証方法。
  6. 【請求項6】  共通パスを介して固定ブロックフォー
    マット化多重トラックDASDアレイの1つを横切る可
    変長レコードへの単一パス同期型アクセスを保証する方
    法であって、各アレイDASDの各対のトラックの一方
    が指標付き基準点を含み、各レコードが少なくとも固定
    長カウントフィールドと可変長データフィールドとを含
    み、前記アレイが構造的DASD故障を便宜的に受け、
    (a)各レコードをカウントフィールドを表示する第1
    ブロックとデータフィールドを表示する変数の他のブロ
    ックとへ再フォーマットし、各再フォーマット化レコー
    ドのブロックをN+1個のDASD上へ列優先順で同期
    的に書き込み、全ての第1ブロックが(N+1)番目の
    DASDに記録されるように前記列優先順が制限される
    工程と、(b)(N+2)番目のDASD上へ工程(a
    )と同時に各対の一方の列順のパリティブロックを形成
    して書き込み、各パリティブロックが第1のN個のDA
    SDから同じ列のN個のブロックと(N+1)番目のD
    ASDの上のそれに対してオフセットされた1ブロック
    1列をスパンする工程と、(c)(N+1)番目と(N
    +2)番目のDASD以外の便宜的DASDの故障と少
    なくとも1レコードを要求するコマンドに応じて、相関
    されたパリティブロックからの各使用不能のブロックと
    パリティブロックによりスパンされた残りのブロックを
    回復し、工程(a)と(b)により定義された列優先順
    で任意の回復されたブロックを含む要求されたレコード
    のブロックを同時にアクセスする工程と、を含む単一パ
    ス同期型アクセス保証方法。
  7. 【請求項7】  (N+1)番目のDASDの便宜的故
    障と少なくとも1レコードを要求するコマンドとに共に
    応じて、前記コマンドが読み出し、書き込み、書き込み
    更新コマンドから成る集合より選択されて、更に、(d
    )相関されたパリティブロックからの各レコードの第1
    ブロックと第1パスの間でパリティブロックによりスパ
    ンされた残りのブロックを回復する工程と、(e)任意
    の書き込み更新コマンドの実行中に、第2パスの中で工
    程(a)と(b)により定義された列優先順に、任意の
    回復したブロックを含む要求されたレコードのブロック
    をアクセスする工程と、を含む請求項6に記載の単一パ
    ス同期型アクセス保証方法。
  8. 【請求項8】  使用不能のブロックが、相関されたパ
    リティブロックとパリティブロックによりスパンされた
    残りのブロックとの排他的オアを含む請求項6に記載の
    単一パス同期型アクセス保証方法。
  9. 【請求項9】  アレイのDASDの内の少なくとも1
    つが確保され、もしスペアの、(N+1)番目、(N+
    2)番目以外の任意のDASDがレコードアクセスに使
    用不能となるならば、更に、(f)確保したDASDに
    より使用不能のDASDを置換する工程と、単一パスに
    おいて、(g)各相関されたパリティブロックとパリテ
    ィブロックによりスパンされた残りの使用可能なブロッ
    クを、排他的オアをとることによって各使用不能なブロ
    ックを回復する工程と、(h)各回復したブロックを1
    ブロックオフセットでスペアDASDに書き込み、アレ
    イDASDのインデックスを再同期する工程と、を含む
    請求項6に記載の単一パス同期型アクセス保証方法。
  10. 【請求項10】  外部記憶サブシステムが、複数の固
    定ブロックフォーマット化環状多重トラック式記憶装置
    (DASD)と、前記DASDに同期的にアクセスし、
    且つ前記DASDと前記DASDに結合されたCPUと
    の間に1以上の可変長レコードを転送するための外部コ
    マンドに応じるアレイ制御装置(ACU)とを含む外部
    記憶サブシステムにおいて、(a)可変長レコードを変
    数K個の連続固定長ブロックに区分するための外部書き
    込みコマンドに応じる手段(3、501、503)と、
    (b)各レコードの第1ブロックが(N+1)番目のD
    ASDに書き込まれるN+1個のDASDに前記ブロッ
    クを列優先順で書き込む手段(7、13、15)と、(
    c)(N+2)番目のDASDに工程(a)と同時に各
    対の一方の列順のパリティブロックを形成して書き込み
    、各パリティブロックが第1のN個のDASDから同じ
    列のN個のブロックと(N+1)番目のDASDのそれ
    に対してオフセットされた1ブロック1列をスパンする
    手段(507、511、513)と、(d)少なくとも
    1レコードを要求する各外部コマンドに応じて、手段(
    a)乃至(c)によって定義された順に要求されたレコ
    ードを形成するブロックと相関されたパリティブロック
    とをアクセスし、単一パスで要求されたレコードとその
    パリティイメージへのアクセスを保証する手段(501
    、7、503、507)と、を含むアレイ制御装置。
JP4025160A 1991-04-02 1992-02-12 可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置 Expired - Lifetime JPH0731580B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/679,455 US5506979A (en) 1991-04-02 1991-04-02 Method and means for execution of commands accessing variable length records stored on fixed block formatted DASDS of an N+2 DASD synchronous array
US679455 1991-04-02

Publications (2)

Publication Number Publication Date
JPH04322323A true JPH04322323A (ja) 1992-11-12
JPH0731580B2 JPH0731580B2 (ja) 1995-04-10

Family

ID=24726961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4025160A Expired - Lifetime JPH0731580B2 (ja) 1991-04-02 1992-02-12 可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置

Country Status (4)

Country Link
US (1) US5506979A (ja)
EP (1) EP0507552B1 (ja)
JP (1) JPH0731580B2 (ja)
DE (1) DE69231841T2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2270791B (en) * 1992-09-21 1996-07-17 Grass Valley Group Disk-based digital video recorder
US5761402A (en) * 1993-03-08 1998-06-02 Hitachi, Ltd. Array type disk system updating redundant data asynchronously with data access
US5566316A (en) * 1994-02-10 1996-10-15 Storage Technology Corporation Method and apparatus for hierarchical management of data storage elements in an array storage device
JP3140381B2 (ja) 1996-10-30 2001-03-05 松下電送システム株式会社 データ通信装置
US6185621B1 (en) * 1997-03-25 2001-02-06 Philips Electronics N.A. Corp. Direct copying between disk blocks in memory onto a network as sequential access files
US5951691A (en) * 1997-05-16 1999-09-14 International Business Machines Corporation Method and system for detection and reconstruction of corrupted data in a data storage subsystem
US6112277A (en) * 1997-09-25 2000-08-29 International Business Machines Corporation Method and means for reducing device contention by random accessing and partial track staging of records according to a first DASD format but device mapped according to a second DASD format
US6173360B1 (en) * 1998-01-09 2001-01-09 International Business Machines Corporation Apparatus and method for allowing existing ECKD MVS DASD using an ESCON interface to be used by an open storage using SCSI-type interface
US6041386A (en) * 1998-02-10 2000-03-21 International Business Machines Corporation Data sharing between system using different data storage formats
US6173415B1 (en) * 1998-05-22 2001-01-09 International Business Machines Corporation System for scalable distributed data structure having scalable availability
JP4252139B2 (ja) * 1998-12-16 2009-04-08 株式会社日立製作所 記憶装置システム
US6473875B1 (en) * 1999-03-03 2002-10-29 Intel Corporation Error correction for network delivery of video streams using packet resequencing
US6463503B1 (en) 1999-05-12 2002-10-08 International Business Machines Corporation Method and system for increasing concurrency during staging and destaging in a log structured array
US6496901B1 (en) 1999-09-22 2002-12-17 Storage Technology Corporation Mapping variable size data blocks into a fixed block structure
US6822655B1 (en) 2000-07-20 2004-11-23 International Business Machines Corporation Method and apparatus for caching variable size patterns into fixed size slots
US8473693B1 (en) * 2003-07-29 2013-06-25 Netapp, Inc. Managing ownership of memory buffers (mbufs)
US7249227B1 (en) * 2003-12-29 2007-07-24 Network Appliance, Inc. System and method for zero copy block protocol write operations
JP4437953B2 (ja) * 2004-12-10 2010-03-24 富士通株式会社 データ書込み方法とチャネルアダプタ
US7941697B2 (en) * 2008-12-30 2011-05-10 Symantec Operating Corporation Failure handling using overlay objects on a file system using object based storage devices
US8935223B2 (en) * 2009-04-30 2015-01-13 Oracle International Corporation Structure of hierarchical compressed data structure for tabular data
US8583692B2 (en) * 2009-04-30 2013-11-12 Oracle International Corporation DDL and DML support for hybrid columnar compressed tables
US9667269B2 (en) 2009-04-30 2017-05-30 Oracle International Corporation Technique for compressing XML indexes
US8645337B2 (en) 2009-04-30 2014-02-04 Oracle International Corporation Storing compression units in relational tables
US8356060B2 (en) 2009-04-30 2013-01-15 Oracle International Corporation Compression analyzer
US8296517B2 (en) 2009-08-19 2012-10-23 Oracle International Corporation Database operation-aware striping technique
EP2603847B1 (en) 2010-08-11 2018-06-27 Hitachi, Ltd. Storage apparatus and control method thereof
CN107545066B (zh) * 2011-12-08 2021-01-15 甲骨文国际公司 用于在易失性存储器内保持关系型数据的列向量的技术
US9619157B2 (en) * 2014-04-03 2017-04-11 Analysis Solution Llc High-speed data storage
US9990308B2 (en) 2015-08-31 2018-06-05 Oracle International Corporation Selective data compression for in-memory databases
US11170002B2 (en) 2018-10-19 2021-11-09 Oracle International Corporation Integrating Kafka data-in-motion with data-at-rest tables
US11914471B1 (en) * 2022-08-30 2024-02-27 Micron Technology, Inc. Block failure protection for zone memory system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03240123A (ja) * 1990-02-16 1991-10-25 Fujitsu Ltd アレイディスク装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4223390A (en) * 1976-02-02 1980-09-16 International Business Machines Corporation System and method for attaching magnetic storage devices having dissimilar track capacities and recording formats
US4092732A (en) * 1977-05-31 1978-05-30 International Business Machines Corporation System for recovering data stored in failed memory unit
US4603380A (en) * 1983-07-01 1986-07-29 International Business Machines Corporation DASD cache block staging
US4761785B1 (en) * 1986-06-12 1996-03-12 Ibm Parity spreading to enhance storage access
US4870643A (en) * 1987-11-06 1989-09-26 Micropolis Corporation Parallel drive array storage system
US4989206A (en) * 1988-06-28 1991-01-29 Storage Technology Corporation Disk drive memory
US5077736A (en) * 1988-06-28 1991-12-31 Storage Technology Corporation Disk drive memory
US4914656A (en) * 1988-06-28 1990-04-03 Storage Technology Corporation Disk drive memory
US5148432A (en) * 1988-11-14 1992-09-15 Array Technology Corporation Arrayed disk drive system and method
US5185746A (en) * 1989-04-14 1993-02-09 Mitsubishi Denki Kabushiki Kaisha Optical recording system with error correction and data recording distributed across multiple disk drives
US5072378A (en) * 1989-12-18 1991-12-10 Storage Technology Corporation Direct access storage device with independently stored parity
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5208813A (en) * 1990-10-23 1993-05-04 Array Technology Corporation On-line reconstruction of a failed redundant array system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03240123A (ja) * 1990-02-16 1991-10-25 Fujitsu Ltd アレイディスク装置

Also Published As

Publication number Publication date
DE69231841D1 (de) 2001-07-05
US5506979A (en) 1996-04-09
EP0507552A3 (en) 1997-10-15
EP0507552A2 (en) 1992-10-07
DE69231841T2 (de) 2001-10-25
EP0507552B1 (en) 2001-05-30
JPH0731580B2 (ja) 1995-04-10

Similar Documents

Publication Publication Date Title
JPH04322323A (ja) 可変長レコードへのアクセス方法、単一パス同期型アクセス保証方法、及びアレイ制御装置
US5584008A (en) External storage unit comprising active and inactive storage wherein data is stored in an active storage if in use and archived to an inactive storage when not accessed in predetermined time by the host processor
JP2501007B2 (ja) デ―タ記憶システム及びその動作方法
US5257362A (en) Method and means for ensuring single pass small read/write access to variable length records stored on selected DASDs in a DASD array
US4092732A (en) System for recovering data stored in failed memory unit
US5051887A (en) Maintaining duplex-paired storage devices during gap processing using of a dual copy function
JP3304115B2 (ja) 構成可能な冗長アレイ記憶装置
EP0458554B1 (en) Method and apparatus for formatting data on DASD arrays
US6532549B2 (en) Storage unit subsystem
US5258984A (en) Method and means for distributed sparing in DASD arrays
US5872906A (en) Method and apparatus for taking countermeasure for failure of disk array
US5072378A (en) Direct access storage device with independently stored parity
JP3181398B2 (ja) アレイ型記録装置
JP3575811B2 (ja) 記憶装置
JPH04230512A (ja) Dasdアレイのための更新記録方法及び装置
JPH09305328A (ja) ディスクアレイ装置
JP2001147785A (ja) データを管理する方法
JPH07295763A (ja) ディスク・アレイ装置およびデータの格納方法
US5875460A (en) Disk array subsystem and data generation method therefor
US7320089B2 (en) Storage unit subsystem
JPH0452725A (ja) 記憶装置障害回復処理方法
JP2570614B2 (ja) デイスクアレイ装置
WO2023241783A1 (en) Device and method for improved redundant storing of sequential access data
JPH06119121A (ja) ディスクアレイ装置
JPH04296926A (ja) 記録媒体制御装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090410

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100410

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110410

Year of fee payment: 16

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110410

Year of fee payment: 16

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120410

Year of fee payment: 17

EXPY Cancellation because of completion of term