JPH08137629A - アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法 - Google Patents
アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法Info
- Publication number
- JPH08137629A JPH08137629A JP6277392A JP27739294A JPH08137629A JP H08137629 A JPH08137629 A JP H08137629A JP 6277392 A JP6277392 A JP 6277392A JP 27739294 A JP27739294 A JP 27739294A JP H08137629 A JPH08137629 A JP H08137629A
- Authority
- JP
- Japan
- Prior art keywords
- data
- disk
- transfer
- buffer
- parity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】
【構成】本動画転送システムは、ホストシステム100
と、データディスク201およびパリティディスク20
2をアレイ状に配置したディスク群200からなり、ネ
ットワーク300によって、動画データの転送要求元と
接続されている。ホストシステム100は、MPU10
1とバス変換部102とメインメモリ103とディスク
I/F制御部105とデータ転送制御部106からな
り、メインメモリ103はバッファ108を持つ。バッ
ファ108は転送要求元からの転送要求毎に用意され
る。 【効果】データの読み出しとともにパリティの読み出し
も常に行なうことでディスク障害発生時のデータ回復を
速やかに行ない、回復に必要なデータおよびパリティは
バッファ内から廃棄しないことで、回復に必要なディス
クアクセス回数を抑える。これにより動画データの間断
なき再生をディスク障害発生時においても実現する。
と、データディスク201およびパリティディスク20
2をアレイ状に配置したディスク群200からなり、ネ
ットワーク300によって、動画データの転送要求元と
接続されている。ホストシステム100は、MPU10
1とバス変換部102とメインメモリ103とディスク
I/F制御部105とデータ転送制御部106からな
り、メインメモリ103はバッファ108を持つ。バッ
ファ108は転送要求元からの転送要求毎に用意され
る。 【効果】データの読み出しとともにパリティの読み出し
も常に行なうことでディスク障害発生時のデータ回復を
速やかに行ない、回復に必要なデータおよびパリティは
バッファ内から廃棄しないことで、回復に必要なディス
クアクセス回数を抑える。これにより動画データの間断
なき再生をディスク障害発生時においても実現する。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータシステム
の記憶システムとして用いられている、複数のディスク
装置をアレイ状に配置して構成したアレイ型ディスクシ
ステムおよびシステムの制御方法に係り、特に、動画デ
ータなどのマルチメディアデータの読み出しの方法の最
適化に関する。
の記憶システムとして用いられている、複数のディスク
装置をアレイ状に配置して構成したアレイ型ディスクシ
ステムおよびシステムの制御方法に係り、特に、動画デ
ータなどのマルチメディアデータの読み出しの方法の最
適化に関する。
【0002】
【従来の技術】動画データなどのマルチメディアデータ
を記憶装置に格納しておき、多数の転送要求元から発生
する要求に基づき前記各転送要求元へマルチメディアデ
ータをそれぞれ転送し、かつ任意の転送要求元からの転
送対象データ変更などの要求に転送途中においても即座
に対応するシステムでは、記憶装置としてディスクアレ
イ装置(RAID:Redundant arrays
of Inexpensive Disks)が用い
られる場合が多い(日経エレクトロニクス, 1994
年5月23日号, No.608, pp.93−9
9, 「超並列マシンとADSLを使い,ビデオ・オン
・デマンド実現」)。RAIDは複数の磁気ディスクを
並列に動作させることによってデータの読み出し/書き
込み処理の高速化を図り、冗長構成によって信頼性を上
げた外部記憶装置である(論文:D.A.Patter
son, G.Gibson, and R.H.Ka
ts,”A Case for Redundant
Arrays of Inexpensive Dis
ks(RAID),” in Proc. ACMSI
GMOD, pp.109−116, June 19
88)。論文の中では、ディスクアレイ装置の構成の種
別として、レベル1から5までが与えられている。特
に、RAIDレベル3は大きなサイズのデータの読み書
きが行なわれるシーケンシャルアクセスに対し性能向上
が見込め、またRAIDレベル5は小さなサイズのデー
タの読み書きが多量に発生するランダムアクセスに対し
性能向上が見込め、さらにそれぞれのRAIDはディス
ク装置の最低1台が故障してもデータを回復できること
は周知の通りである(日経エレクトロニクス, 199
3年4月26日号, No.579, pp.77−9
1, 「特集ディスクアレイ装置」)。
を記憶装置に格納しておき、多数の転送要求元から発生
する要求に基づき前記各転送要求元へマルチメディアデ
ータをそれぞれ転送し、かつ任意の転送要求元からの転
送対象データ変更などの要求に転送途中においても即座
に対応するシステムでは、記憶装置としてディスクアレ
イ装置(RAID:Redundant arrays
of Inexpensive Disks)が用い
られる場合が多い(日経エレクトロニクス, 1994
年5月23日号, No.608, pp.93−9
9, 「超並列マシンとADSLを使い,ビデオ・オン
・デマンド実現」)。RAIDは複数の磁気ディスクを
並列に動作させることによってデータの読み出し/書き
込み処理の高速化を図り、冗長構成によって信頼性を上
げた外部記憶装置である(論文:D.A.Patter
son, G.Gibson, and R.H.Ka
ts,”A Case for Redundant
Arrays of Inexpensive Dis
ks(RAID),” in Proc. ACMSI
GMOD, pp.109−116, June 19
88)。論文の中では、ディスクアレイ装置の構成の種
別として、レベル1から5までが与えられている。特
に、RAIDレベル3は大きなサイズのデータの読み書
きが行なわれるシーケンシャルアクセスに対し性能向上
が見込め、またRAIDレベル5は小さなサイズのデー
タの読み書きが多量に発生するランダムアクセスに対し
性能向上が見込め、さらにそれぞれのRAIDはディス
ク装置の最低1台が故障してもデータを回復できること
は周知の通りである(日経エレクトロニクス, 199
3年4月26日号, No.579, pp.77−9
1, 「特集ディスクアレイ装置」)。
【0003】RAIDレベル3と5の構成および動作に
ついて、図12を用いて説明する。
ついて、図12を用いて説明する。
【0004】RAIDレベル3は例として図12(a)
に示されるデータおよびパリティ(冗長データ)の配置
を持つ。図12(a)においてディスク群200は4台
のデータディスク201と1台のパリティディスク20
2からなり、データディスク201にはデータが、一つ
ないし複数のブロックに分割され、図12(a)におい
てデータディスク201内のブロックにふってある番号
の順に連続して分配、格納される。例えば、あるデータ
は図12(a)のブロックA−1、A−2、A−3、A
−4、B−1、B−2、B−3、B−4の順に格納され
る。また、パリティディスク202のブロックには、対
応するデータディスク201のブロックの排他的論理和
がパリティ(冗長データ)として格納されている。例え
ば、PAのブロックにはデータディスク201のブロッ
クA−1、A−2、A−3、A−4のパリティが格納さ
れている。失われた任意のデータは、対応するパリティ
と、パリティに対応する他のデータの排他的論理和から
回復することができる。
に示されるデータおよびパリティ(冗長データ)の配置
を持つ。図12(a)においてディスク群200は4台
のデータディスク201と1台のパリティディスク20
2からなり、データディスク201にはデータが、一つ
ないし複数のブロックに分割され、図12(a)におい
てデータディスク201内のブロックにふってある番号
の順に連続して分配、格納される。例えば、あるデータ
は図12(a)のブロックA−1、A−2、A−3、A
−4、B−1、B−2、B−3、B−4の順に格納され
る。また、パリティディスク202のブロックには、対
応するデータディスク201のブロックの排他的論理和
がパリティ(冗長データ)として格納されている。例え
ば、PAのブロックにはデータディスク201のブロッ
クA−1、A−2、A−3、A−4のパリティが格納さ
れている。失われた任意のデータは、対応するパリティ
と、パリティに対応する他のデータの排他的論理和から
回復することができる。
【0005】例として図12(a)に示されるRAID
レベル3においてデータの読み出しが行なわれる場合、
一つのパリティのブロックに対応するデータは同時に読
み出される。例えば、ブロックA−1、A−2、A−
3、A−4のデータは同時に読み出される。上記の例で
は、1回のデータ読み出しの最小ブロック数は4ブロッ
クとなり、すなわち1回の読み出し毎にシーク動作を行
なうランダムアクセスの場合は、4ブロック分のデータ
の読み出しが終了してから次のシーク動作、回転待ちお
よび読み出しが行なわれることになる。
レベル3においてデータの読み出しが行なわれる場合、
一つのパリティのブロックに対応するデータは同時に読
み出される。例えば、ブロックA−1、A−2、A−
3、A−4のデータは同時に読み出される。上記の例で
は、1回のデータ読み出しの最小ブロック数は4ブロッ
クとなり、すなわち1回の読み出し毎にシーク動作を行
なうランダムアクセスの場合は、4ブロック分のデータ
の読み出しが終了してから次のシーク動作、回転待ちお
よび読み出しが行なわれることになる。
【0006】RAIDレベル5は例として図12(b)
に示されるデータおよびパリティ(冗長データ)の配置
を持つ。ディスク群200はディスク203からなり、
ディスク203はデータ領域204(ディスク203に
おいて0から19までの番号がふってあるブロックの領
域)とパリティ領域205(P0−3、P4−7などの
番号がふってある網掛のブロックの領域)を持つ。デー
タは一つないし複数のブロックに分割され、各ディスク
203のデータ領域204にブロックに降ってある番号
の順に分配、格納される。パリティ領域205には、対
応するデータの排他的論理和がパリティ(冗長データ)
として格納されている。例えば、P0−3のブロックに
はデータ領域204のブロック0、1、2、3のパリテ
ィが格納されている。失われた任意のデータは、対応す
るパリティと、パリティに対応する他のデータの排他的
論理和から回復することができる。
に示されるデータおよびパリティ(冗長データ)の配置
を持つ。ディスク群200はディスク203からなり、
ディスク203はデータ領域204(ディスク203に
おいて0から19までの番号がふってあるブロックの領
域)とパリティ領域205(P0−3、P4−7などの
番号がふってある網掛のブロックの領域)を持つ。デー
タは一つないし複数のブロックに分割され、各ディスク
203のデータ領域204にブロックに降ってある番号
の順に分配、格納される。パリティ領域205には、対
応するデータの排他的論理和がパリティ(冗長データ)
として格納されている。例えば、P0−3のブロックに
はデータ領域204のブロック0、1、2、3のパリテ
ィが格納されている。失われた任意のデータは、対応す
るパリティと、パリティに対応する他のデータの排他的
論理和から回復することができる。
【0007】例として図12(b)に示されるRAID
レベル5においてデータの読み出しが行なわれる場合、
各ディスク203は独立かつ並列に読み出しを行なう。
このとき1回のデータ読み出しの最小ブロック数は1ブ
ロックとなり、すなわち1回の読み出し毎にシーク動作
を行なうランダムアクセスの場合は、1ブロック分のデ
ータの読み出しが終了する毎に次のシーク動作、回転待
ちおよび読み出しが行なわれることになる。
レベル5においてデータの読み出しが行なわれる場合、
各ディスク203は独立かつ並列に読み出しを行なう。
このとき1回のデータ読み出しの最小ブロック数は1ブ
ロックとなり、すなわち1回の読み出し毎にシーク動作
を行なうランダムアクセスの場合は、1ブロック分のデ
ータの読み出しが終了する毎に次のシーク動作、回転待
ちおよび読み出しが行なわれることになる。
【0008】動画データなどのマルチメディアデータを
記憶装置に格納しておき、多数の転送要求元から発生す
る要求に基づき各転送要求元へマルチメディアデータを
それぞれ転送し、かつ、任意の転送要求元からの転送対
象データ変更などの要求に転送途中においても即座に対
応するシステムでは、記憶装置の容量を有効に利用する
ために、格納されているマルチメディアデータは一般に
圧縮してデータサイズを小さくされている。そしてマル
チメディアデータは圧縮されたまま読み出され、転送要
求元へ転送され、転送要求元において伸張、再生され
る。また、動画データなどのマルチメディアデータは一
続きのデータとなるため、転送要求元が一つの場合は、
マルチメディアデータの先頭から順にデータを読み出し
転送するシーケンシャルアクセスとなるが、転送要求元
が複数存在する場合は、複数のマルチメディアデータか
らデータをそれぞれ読み出し各転送要求元に転送し、ま
た一続きのマルチメディアデータの複数箇所からデータ
をそれぞれ読み出し各転送要求元に転送することによっ
て、転送要求のあった一続きのマルチメディアデータを
各転送要求元へ転送することになるため、発生するアク
セスは、各転送要求元に関するアクセスが混在したラン
ダムアクセスの読み出しとなる。
記憶装置に格納しておき、多数の転送要求元から発生す
る要求に基づき各転送要求元へマルチメディアデータを
それぞれ転送し、かつ、任意の転送要求元からの転送対
象データ変更などの要求に転送途中においても即座に対
応するシステムでは、記憶装置の容量を有効に利用する
ために、格納されているマルチメディアデータは一般に
圧縮してデータサイズを小さくされている。そしてマル
チメディアデータは圧縮されたまま読み出され、転送要
求元へ転送され、転送要求元において伸張、再生され
る。また、動画データなどのマルチメディアデータは一
続きのデータとなるため、転送要求元が一つの場合は、
マルチメディアデータの先頭から順にデータを読み出し
転送するシーケンシャルアクセスとなるが、転送要求元
が複数存在する場合は、複数のマルチメディアデータか
らデータをそれぞれ読み出し各転送要求元に転送し、ま
た一続きのマルチメディアデータの複数箇所からデータ
をそれぞれ読み出し各転送要求元に転送することによっ
て、転送要求のあった一続きのマルチメディアデータを
各転送要求元へ転送することになるため、発生するアク
セスは、各転送要求元に関するアクセスが混在したラン
ダムアクセスの読み出しとなる。
【0009】よって、マルチメディアデータの転送に関
する任意の転送要求元からの要求に即座に対応するため
には、ランダムアクセスでの1回のデータの読み出しに
要する時間が短いことが必要となり、これを実現するた
めには1回のデータ読み出しの最小サイズが小さいこと
が必要となる。もし時間が長ければ、転送要求元以外の
転送要求元についての処理時間が長くなり、転送要求元
からの要求には即座には対応できない。
する任意の転送要求元からの要求に即座に対応するため
には、ランダムアクセスでの1回のデータの読み出しに
要する時間が短いことが必要となり、これを実現するた
めには1回のデータ読み出しの最小サイズが小さいこと
が必要となる。もし時間が長ければ、転送要求元以外の
転送要求元についての処理時間が長くなり、転送要求元
からの要求には即座には対応できない。
【0010】さらに、動画などのマルチメディアデータ
の転送要求元における間断なき再生を実現するために
は、ランダムアクセスについて、あるデータの転送要求
元における再生が完了するまでに、データに続くデータ
の読み出しおよび転送要求元への転送を完了することが
必要となり、これを実現するためには転送性能が大きい
ことが必要となる。
の転送要求元における間断なき再生を実現するために
は、ランダムアクセスについて、あるデータの転送要求
元における再生が完了するまでに、データに続くデータ
の読み出しおよび転送要求元への転送を完了することが
必要となり、これを実現するためには転送性能が大きい
ことが必要となる。
【0011】システムの記憶装置として、図12(a)
を用いて説明したRAIDレベル3を用いる場合、1回
のデータ読み出しの最小サイズは4ブロックとなるた
め、転送要求元からの要求に即座に対応するには一つの
ブロックの大きさを小さくしなければならない。例えば
動画データ圧縮規格としてMPEG2(MovingP
icture Image Coding Exper
ts Group Phase 2)を用いれば、1秒
間の動画のデータサイズは約640キロバイト程度とな
るため、1回のデータ読み出しに対応する動画データの
再生時間を1/10秒程度とすると最小サイズは約64
キロバイト程度となり、一つのブロックの大きさは約1
6キロバイト程度となる。しかし一つのブロックの大き
さが小さいほど、一回のデータ読み出しの処理時間に占
めるシーク時間および回転待ち時間の割合が大きくな
り、転送性能は低下する。
を用いて説明したRAIDレベル3を用いる場合、1回
のデータ読み出しの最小サイズは4ブロックとなるた
め、転送要求元からの要求に即座に対応するには一つの
ブロックの大きさを小さくしなければならない。例えば
動画データ圧縮規格としてMPEG2(MovingP
icture Image Coding Exper
ts Group Phase 2)を用いれば、1秒
間の動画のデータサイズは約640キロバイト程度とな
るため、1回のデータ読み出しに対応する動画データの
再生時間を1/10秒程度とすると最小サイズは約64
キロバイト程度となり、一つのブロックの大きさは約1
6キロバイト程度となる。しかし一つのブロックの大き
さが小さいほど、一回のデータ読み出しの処理時間に占
めるシーク時間および回転待ち時間の割合が大きくな
り、転送性能は低下する。
【0012】しかしシステムの記憶装置として、図12
(b)を用いて説明した上記の例のRAIDレベル5を
用いる場合、1回のデータ読み出しの最小サイズは1ブ
ロックとなるため、例えば動画データ圧縮規格としてM
PEG2を用いれば、1秒間の動画のデータサイズは約
640キロバイト程度となるため、1回のデータ読み出
しに対応する動画データの再生時間を1/10秒程度と
すると最小サイズは約64キロバイト程度となり、すな
わち一つのブロックの大きさは約64キロバイト程度と
なる。よってシーク時間および回転待ち時間の影響を考
慮した転送性能はRAIDレベル3を用いた場合と比べ
て低下しない。
(b)を用いて説明した上記の例のRAIDレベル5を
用いる場合、1回のデータ読み出しの最小サイズは1ブ
ロックとなるため、例えば動画データ圧縮規格としてM
PEG2を用いれば、1秒間の動画のデータサイズは約
640キロバイト程度となるため、1回のデータ読み出
しに対応する動画データの再生時間を1/10秒程度と
すると最小サイズは約64キロバイト程度となり、すな
わち一つのブロックの大きさは約64キロバイト程度と
なる。よってシーク時間および回転待ち時間の影響を考
慮した転送性能はRAIDレベル3を用いた場合と比べ
て低下しない。
【0013】以上の点などから上記システムの記憶装置
RAIDレベル5が用いられることが多い(日経エレク
トロニクス, 1994年5月23日号, No.60
8,pp.93−99, 「超並列マシンとADSLを
使い,ビデオ・オン・デマンド実現」)。
RAIDレベル5が用いられることが多い(日経エレク
トロニクス, 1994年5月23日号, No.60
8,pp.93−99, 「超並列マシンとADSLを
使い,ビデオ・オン・デマンド実現」)。
【0014】RAIDレベル5を用いた動画データ転送
システムの従来例を図8ないし図11を用いて説明す
る。図8は従来例による動画データ転送システムのブロ
ック図である。本動画データ転送システムは、ホストシ
ステム100と、ディスク203をアレイ状に配置した
ディスク群200からなり、ネットワーク300によっ
て、動画データの転送要求元と接続されている。
システムの従来例を図8ないし図11を用いて説明す
る。図8は従来例による動画データ転送システムのブロ
ック図である。本動画データ転送システムは、ホストシ
ステム100と、ディスク203をアレイ状に配置した
ディスク群200からなり、ネットワーク300によっ
て、動画データの転送要求元と接続されている。
【0015】ホストシステム100は、MPU(Mic
ro Processing Unit)101とバス
変換部102とメインメモリ103とディスクI/F
(インターフェース)制御部105とデータ転送制御部
106からなり、MPU101とバス変換部102とメ
インメモリ103はMPUバス104で接続され、ディ
スクI/F制御部105とバス変換部102とデータ転
送制御部106は拡張バス107で接続されている。す
なわちMPUバス104と拡張バス107はバス変換部
102で接続されている。またメインメモリ103はバ
ッファ108を持つ。
ro Processing Unit)101とバス
変換部102とメインメモリ103とディスクI/F
(インターフェース)制御部105とデータ転送制御部
106からなり、MPU101とバス変換部102とメ
インメモリ103はMPUバス104で接続され、ディ
スクI/F制御部105とバス変換部102とデータ転
送制御部106は拡張バス107で接続されている。す
なわちMPUバス104と拡張バス107はバス変換部
102で接続されている。またメインメモリ103はバ
ッファ108を持つ。
【0016】ディスク群200はディスク203からな
り、それぞれのディスク203はディスクI/F制御部
105に接続されている。ディスク203はデータ領域
204(ディスク203において0から19までの番号
がふってあるブロックの領域)とパリティ領域205
(P0−3、P4−7などの番号がふってある網掛のブ
ロックの領域)を持つ。動画データは一つないし複数の
ブロックに分割され、各ディスク203のデータ領域2
04にブロックに降ってある番号の順に分配、格納され
る。パリティ領域205には、対応するデータの排他的
論理和がパリティ(冗長データ)として格納されてい
る。例えばP0−3のブロックにはデータ領域204の
ブロック0、1、2、3のパリティが格納されている。
り、それぞれのディスク203はディスクI/F制御部
105に接続されている。ディスク203はデータ領域
204(ディスク203において0から19までの番号
がふってあるブロックの領域)とパリティ領域205
(P0−3、P4−7などの番号がふってある網掛のブ
ロックの領域)を持つ。動画データは一つないし複数の
ブロックに分割され、各ディスク203のデータ領域2
04にブロックに降ってある番号の順に分配、格納され
る。パリティ領域205には、対応するデータの排他的
論理和がパリティ(冗長データ)として格納されてい
る。例えばP0−3のブロックにはデータ領域204の
ブロック0、1、2、3のパリティが格納されている。
【0017】失われた任意のデータは、対応するパリテ
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えばブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えばブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
【0018】MPU101は、要求された動画データの
物理位置(アドレス)獲得手段と、ディスク203の障
害によって利用できなくなったデータ(障害データ)を
回復するために必要なパリティのアドレス獲得手段と、
障害データを回復するために必要なデータのアドレス獲
得手段と、パリティおよびデータの排他的論理和を計算
することで障害データを回復する手段と、ディスク20
3に対し格納されているデータおよびパリティの読み出
し要求を生成して送る手段と、転送制御部にバッファ1
08内のデータを転送要求元へ転送させる手段をMPU
101内のソフトウェアとして持つ。この様子を図9に
示す。
物理位置(アドレス)獲得手段と、ディスク203の障
害によって利用できなくなったデータ(障害データ)を
回復するために必要なパリティのアドレス獲得手段と、
障害データを回復するために必要なデータのアドレス獲
得手段と、パリティおよびデータの排他的論理和を計算
することで障害データを回復する手段と、ディスク20
3に対し格納されているデータおよびパリティの読み出
し要求を生成して送る手段と、転送制御部にバッファ1
08内のデータを転送要求元へ転送させる手段をMPU
101内のソフトウェアとして持つ。この様子を図9に
示す。
【0019】図10にディスク203に障害が発生しな
い場合の、動画データの読み出しおよび転送の処理を、
図11にディスク203に障害が発生した場合の、動画
データの読み出しおよび転送の処理を示す。
い場合の、動画データの読み出しおよび転送の処理を、
図11にディスク203に障害が発生した場合の、動画
データの読み出しおよび転送の処理を示す。
【0020】まず、ディスク203に障害が発生しない
場合の、動画データの読み出しおよび転送の処理につい
て図10を用いて説明する。説明を簡単にするために、
転送要求元が一つの場合について説明する。実際には転
送要求元は多数存在するため、実際の処理は以下の処理
が複数同時進行するものとなる。
場合の、動画データの読み出しおよび転送の処理につい
て図10を用いて説明する。説明を簡単にするために、
転送要求元が一つの場合について説明する。実際には転
送要求元は多数存在するため、実際の処理は以下の処理
が複数同時進行するものとなる。
【0021】動画データは図8のデータ領域204のブ
ロックの番号順に連続して格納されているため、動画デ
ータに対する転送要求も前記番号順に連続したものとな
る。例として、データ領域204のブロック0から3ま
でに格納されている動画データに対し転送要求があった
場合、MPU101は転送要求からブロック0、1、
2、3のデータのアドレスを計算、獲得し(301
0)、各データに対する読み出し要求をディスクI/F
制御部105を介してディスク203に送る(302
0)。ディスク203は各ブロックのデータをメインメ
モリ103内のバッファ108へ正常に読み出し、MP
U101に通知する(3030)。MPU101はデー
タ転送制御部106にバッファ108内のブロック0、
1、2、3のデータを順に転送要求元へ転送させる(3
040)。
ロックの番号順に連続して格納されているため、動画デ
ータに対する転送要求も前記番号順に連続したものとな
る。例として、データ領域204のブロック0から3ま
でに格納されている動画データに対し転送要求があった
場合、MPU101は転送要求からブロック0、1、
2、3のデータのアドレスを計算、獲得し(301
0)、各データに対する読み出し要求をディスクI/F
制御部105を介してディスク203に送る(302
0)。ディスク203は各ブロックのデータをメインメ
モリ103内のバッファ108へ正常に読み出し、MP
U101に通知する(3030)。MPU101はデー
タ転送制御部106にバッファ108内のブロック0、
1、2、3のデータを順に転送要求元へ転送させる(3
040)。
【0022】次に、ディスク203の1台に障害が発生
した場合の、動画データの読み出しおよび転送の処理に
ついて図11を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
した場合の、動画データの読み出しおよび転送の処理に
ついて図11を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
【0023】動画データは図8のデータ領域204のブ
ロックの番号順に連続して格納されているため、動画デ
ータに対する転送要求も番号順に連続したものとなる。
例として、データ領域204のブロック0から3までに
格納されている動画データに対し転送要求があった場
合、MPU101は転送要求からブロック0、1、2、
3のデータのアドレスを計算、獲得し(4010)、各
データに対する読み出し要求をディスクI/F(インタ
ーフェース)制御部105を介してディスク203に送
る(4020)。ディスク203は各ブロックのデータ
をメインメモリ103内のバッファ108に読み出すこ
とを試みる。このとき、例えば、ブロック2を持つディ
スク203に障害が発生し、ブロック2のデータの読み
出しに失敗すると、ブロック2を持つディスク203は
読み出し失敗をMPU101に通知する(4030)。
ディスク203は、ブロック2以外のブロック0、1、
3のデータをバッファ108へ正常に読み出し、MPU
101に通知する(4040)。MPU101はデータ
転送制御部106にまずバッファ108内のブロック
0、1のデータを順に転送要求元へ転送させる(405
0)。
ロックの番号順に連続して格納されているため、動画デ
ータに対する転送要求も番号順に連続したものとなる。
例として、データ領域204のブロック0から3までに
格納されている動画データに対し転送要求があった場
合、MPU101は転送要求からブロック0、1、2、
3のデータのアドレスを計算、獲得し(4010)、各
データに対する読み出し要求をディスクI/F(インタ
ーフェース)制御部105を介してディスク203に送
る(4020)。ディスク203は各ブロックのデータ
をメインメモリ103内のバッファ108に読み出すこ
とを試みる。このとき、例えば、ブロック2を持つディ
スク203に障害が発生し、ブロック2のデータの読み
出しに失敗すると、ブロック2を持つディスク203は
読み出し失敗をMPU101に通知する(4030)。
ディスク203は、ブロック2以外のブロック0、1、
3のデータをバッファ108へ正常に読み出し、MPU
101に通知する(4040)。MPU101はデータ
転送制御部106にまずバッファ108内のブロック
0、1のデータを順に転送要求元へ転送させる(405
0)。
【0024】また、ブロック2のデータ読み出し失敗の
通知を受けたMPU101はブロック2のデータを回復
するために必要なパリティおよびデータ、すなわちブロ
ックP0−3のパリティおよびブロック0、1、3のデ
ータのアドレスを計算、獲得し(4060)、各データ
に対する読み出し要求をディスクI/F制御部105を
介してディスク203に送る(4070)。ディスク2
03は各ブロックのパリティおよびデータをメインメモ
リ103に正常に読み出し、MPU101に通知する
(4080)。MPU101はパリティおよびデータの
排他的論理和を計算することで、ブロック2のデータを
回復する(4090)。MPU101はデータ転送制御
部106にバッファ108内のブロック2、3のデータ
を順に転送要求元へ転送させる(4100)。
通知を受けたMPU101はブロック2のデータを回復
するために必要なパリティおよびデータ、すなわちブロ
ックP0−3のパリティおよびブロック0、1、3のデ
ータのアドレスを計算、獲得し(4060)、各データ
に対する読み出し要求をディスクI/F制御部105を
介してディスク203に送る(4070)。ディスク2
03は各ブロックのパリティおよびデータをメインメモ
リ103に正常に読み出し、MPU101に通知する
(4080)。MPU101はパリティおよびデータの
排他的論理和を計算することで、ブロック2のデータを
回復する(4090)。MPU101はデータ転送制御
部106にバッファ108内のブロック2、3のデータ
を順に転送要求元へ転送させる(4100)。
【0025】メインメモリ103上にブロック0、1の
データが残っていれば、MPU101はデータをブロッ
ク2のデータの回復に用いることが可能である。しかし
通常、転送要求元への転送が完了したデータは廃棄され
る可能性があるため、ブロック2のデータの回復処理時
にブロック0、1のデータが残されている保証はない。
この場合はやはり上記の処理のように、ブロック0、1
のデータをメインメモリ103上に読み出す作業が必要
となる。さらにディスク203の障害発生に対し、パリ
ティをメインメモリ103上に読み出す作業は常に必要
となる。
データが残っていれば、MPU101はデータをブロッ
ク2のデータの回復に用いることが可能である。しかし
通常、転送要求元への転送が完了したデータは廃棄され
る可能性があるため、ブロック2のデータの回復処理時
にブロック0、1のデータが残されている保証はない。
この場合はやはり上記の処理のように、ブロック0、1
のデータをメインメモリ103上に読み出す作業が必要
となる。さらにディスク203の障害発生に対し、パリ
ティをメインメモリ103上に読み出す作業は常に必要
となる。
【0026】上記の処理について、転送要求元における
動画の間断なき再生を実現するためには、例えばブロッ
ク1のデータの転送要求元における再生が完了するまで
に、ディスク障害の有無にかかわらず、それに続くブロ
ック2のデータの転送要求元への転送を完了しなければ
ならない。すなわち上記の処理に求められる特性とし
て、常に、定められた時間以内に必ず処理を完了しなけ
ればならないというリアルタイム性がある。
動画の間断なき再生を実現するためには、例えばブロッ
ク1のデータの転送要求元における再生が完了するまで
に、ディスク障害の有無にかかわらず、それに続くブロ
ック2のデータの転送要求元への転送を完了しなければ
ならない。すなわち上記の処理に求められる特性とし
て、常に、定められた時間以内に必ず処理を完了しなけ
ればならないというリアルタイム性がある。
【0027】
【発明が解決しようとする課題】上記のように動画デー
タの読み出しおよび転送処理にはリアルタイム性が求め
られる。しかしディスクアレイ装置からの動画データの
読み出し処理においてディスク障害のため利用できない
データ(障害データ)が発生した場合、障害データの回
復に必要なパリティの読み出し要求がディスクに送られ
るタイミングは、従来の処理方法では障害検出後となる
ため、障害データの回復に長時間を要することになり、
動画データの転送要求元への転送が遅れ、リアルタイム
性を実現できない恐れがあった。
タの読み出しおよび転送処理にはリアルタイム性が求め
られる。しかしディスクアレイ装置からの動画データの
読み出し処理においてディスク障害のため利用できない
データ(障害データ)が発生した場合、障害データの回
復に必要なパリティの読み出し要求がディスクに送られ
るタイミングは、従来の処理方法では障害検出後となる
ため、障害データの回復に長時間を要することになり、
動画データの転送要求元への転送が遅れ、リアルタイム
性を実現できない恐れがあった。
【0028】また、障害データの回復処理にあたり、障
害データを回復するために必要なデータがあらかじめデ
ィスクから読み出されているにもかかわらず、従来の処
理方法では回復処理以前にデータが廃棄されている可能
性があり、廃棄されている場合は再度のデータの読み出
しにより障害データの回復に長時間を要することになる
ため、動画データの転送要求元への転送が遅れ、リアル
タイム性を実現できない恐れがあった。
害データを回復するために必要なデータがあらかじめデ
ィスクから読み出されているにもかかわらず、従来の処
理方法では回復処理以前にデータが廃棄されている可能
性があり、廃棄されている場合は再度のデータの読み出
しにより障害データの回復に長時間を要することになる
ため、動画データの転送要求元への転送が遅れ、リアル
タイム性を実現できない恐れがあった。
【0029】本発明の第一の目的は、ディスクアレイ装
置(RAID)に対する連続したデータの読み出し、い
わゆるシーケンシャルリードの要求の処理において、デ
ィスク装置の障害により利用できないデータ(障害デー
タ)が発生した際に、障害データの回復処理を速やかに
開始し、また回復に要するデータおよびパリティのディ
スクからの読み出し回数を低減することによって、前記
要求を遅延することなく正常に処理する手法を提供する
ことにある。
置(RAID)に対する連続したデータの読み出し、い
わゆるシーケンシャルリードの要求の処理において、デ
ィスク装置の障害により利用できないデータ(障害デー
タ)が発生した際に、障害データの回復処理を速やかに
開始し、また回復に要するデータおよびパリティのディ
スクからの読み出し回数を低減することによって、前記
要求を遅延することなく正常に処理する手法を提供する
ことにある。
【0030】本発明の第二の目的は、動画データなどの
マルチメディアデータをディスクアレイ装置(RAI
D)に格納しておき、多数の転送要求元に同時に転送す
るシステムにおいて、ディスク装置の障害により利用で
きないデータ(障害データ)が発生した際に、障害デー
タを速やかに回復し、転送要求元における動画などの間
断なき再生を実現する手法を提供することにある。
マルチメディアデータをディスクアレイ装置(RAI
D)に格納しておき、多数の転送要求元に同時に転送す
るシステムにおいて、ディスク装置の障害により利用で
きないデータ(障害データ)が発生した際に、障害デー
タを速やかに回復し、転送要求元における動画などの間
断なき再生を実現する手法を提供することにある。
【0031】
【課題を解決するための手段】上記課題を解決するため
に、本発明によれば、それぞれ並列に動作し、データお
よびデータに対応するパリティ(冗長データ)を分散し
て格納する複数のディスク装置をアレイ状に配置した記
憶装置と、転送要求毎に用意されたバッファと、転送要
求元と接続し前記バッファ内のデータを転送するデータ
転送制御部と、MPUからなり、転送要求元へ動画デー
タなどのマルチメディアデータを転送するシステムにお
いて、要求された動画データなどのマルチメディアデー
タの物理位置(アドレス)獲得手段と、前記ディスク装
置の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティのアドレス獲得手
段と、障害データを回復するために必要なデータのアド
レス獲得手段と、パリティおよびデータの排他的論理和
を計算することで障害データを回復する手段と、前記デ
ィスク装置に対し格納されているデータおよびパリティ
のバッファへの読み出し要求を生成して送る手段と、連
続したブロックの動画データに対する転送に対し、任意
のデータの転送が完了するまではデータを回復するため
に必要なデータおよびパリティをバッファ内から廃棄し
ないようにバッファを管理する手段と、前記データ転送
制御部に前記バッファ内のデータを転送要求元へ転送さ
せる手段を備えることができる。
に、本発明によれば、それぞれ並列に動作し、データお
よびデータに対応するパリティ(冗長データ)を分散し
て格納する複数のディスク装置をアレイ状に配置した記
憶装置と、転送要求毎に用意されたバッファと、転送要
求元と接続し前記バッファ内のデータを転送するデータ
転送制御部と、MPUからなり、転送要求元へ動画デー
タなどのマルチメディアデータを転送するシステムにお
いて、要求された動画データなどのマルチメディアデー
タの物理位置(アドレス)獲得手段と、前記ディスク装
置の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティのアドレス獲得手
段と、障害データを回復するために必要なデータのアド
レス獲得手段と、パリティおよびデータの排他的論理和
を計算することで障害データを回復する手段と、前記デ
ィスク装置に対し格納されているデータおよびパリティ
のバッファへの読み出し要求を生成して送る手段と、連
続したブロックの動画データに対する転送に対し、任意
のデータの転送が完了するまではデータを回復するため
に必要なデータおよびパリティをバッファ内から廃棄し
ないようにバッファを管理する手段と、前記データ転送
制御部に前記バッファ内のデータを転送要求元へ転送さ
せる手段を備えることができる。
【0032】
【作用】転送要求のあったデータをディスク装置からバ
ッファへ読み出す際に、データを回復するために必要な
データおよびパリティも読み出す。またデータの転送が
完了するまではデータを回復するために必要な、バッフ
ァ内にあるデータおよびパリティをバッファ内から廃棄
しない。転送要求元へのデータ転送時においてディスク
装置の障害により利用できないデータ(障害データ)が
発生した場合には、障害データを回復するために必要な
データおよびパリティを用いて、バッファ上に障害デー
タを回復し、転送要求元へ転送する。
ッファへ読み出す際に、データを回復するために必要な
データおよびパリティも読み出す。またデータの転送が
完了するまではデータを回復するために必要な、バッフ
ァ内にあるデータおよびパリティをバッファ内から廃棄
しない。転送要求元へのデータ転送時においてディスク
装置の障害により利用できないデータ(障害データ)が
発生した場合には、障害データを回復するために必要な
データおよびパリティを用いて、バッファ上に障害デー
タを回復し、転送要求元へ転送する。
【0033】上記のように処理することで、ディスクア
レイ装置(RAID)おける連続したデータに対する読
み出しの処理において、ディスク装置の障害により利用
できないデータ(障害データ)が発生した際に、障害デ
ータの回復処理を速やかに開始し、また回復に要するデ
ータおよびパリティのディスクからの読み出し回数を低
減することによって、要求を遅延することなく正常に処
理することができる。
レイ装置(RAID)おける連続したデータに対する読
み出しの処理において、ディスク装置の障害により利用
できないデータ(障害データ)が発生した際に、障害デ
ータの回復処理を速やかに開始し、また回復に要するデ
ータおよびパリティのディスクからの読み出し回数を低
減することによって、要求を遅延することなく正常に処
理することができる。
【0034】さらに動画データなどのマルチメディアデ
ータをディスクアレイ装置(RAID)に格納してお
き、多数の転送要求元に同時に転送するシステムにおい
て、ディスク装置の障害により利用できないデータ(障
害データ)が発生した際に、障害データを速やかに回復
し、転送要求元における動画などの間断なき再生を実現
することができる。
ータをディスクアレイ装置(RAID)に格納してお
き、多数の転送要求元に同時に転送するシステムにおい
て、ディスク装置の障害により利用できないデータ(障
害データ)が発生した際に、障害データを速やかに回復
し、転送要求元における動画などの間断なき再生を実現
することができる。
【0035】
【実施例】以下、本発明の実施例を図1ないし図7を用
いて説明する。
いて説明する。
【0036】<第一実施例>図1は本発明を用いた動画
転送システムのブロック図である。本動画転送システム
は、ホストシステム100と、データディスク201お
よびパリティディスク202をアレイ状に配置したディ
スク群200からなり、ネットワーク300によって、
動画データの転送要求元と接続されている。
転送システムのブロック図である。本動画転送システム
は、ホストシステム100と、データディスク201お
よびパリティディスク202をアレイ状に配置したディ
スク群200からなり、ネットワーク300によって、
動画データの転送要求元と接続されている。
【0037】ホストシステム100は、MPU101と
バス変換部102とメインメモリ103とディスクI/
F制御部105とデータ転送制御部106からなり、M
PU101とバス変換部102とメインメモリ103は
MPUバス104で接続され、ディスクI/F制御部1
05とバス変換部102とデータ転送制御部106は拡
張バス107で接続されている。すなわちMPUバス1
04と拡張バス107はバス変換部102で接続されて
いる。データ転送制御部106はネットワーク300と
接続されている。またメインメモリ103はバッファ1
08を持つ。バッファ108は転送要求元からの転送要
求毎に用意される。
バス変換部102とメインメモリ103とディスクI/
F制御部105とデータ転送制御部106からなり、M
PU101とバス変換部102とメインメモリ103は
MPUバス104で接続され、ディスクI/F制御部1
05とバス変換部102とデータ転送制御部106は拡
張バス107で接続されている。すなわちMPUバス1
04と拡張バス107はバス変換部102で接続されて
いる。データ転送制御部106はネットワーク300と
接続されている。またメインメモリ103はバッファ1
08を持つ。バッファ108は転送要求元からの転送要
求毎に用意される。
【0038】ディスク群200は4台のデータディスク
201と1台のパリティディスク202からなり、それ
ぞれのディスクはディスクI/F制御部105に接続さ
れている。データディスク201には動画データが格納
されている。動画データは一つないし複数のブロックに
分割され、図1においてデータディスク201内のブロ
ックにふってある番号の順に連続してデータディスク2
01に分配、格納される。具体的には、動画データ圧縮
規格としてMPEG2を用いれば、1秒間の動画のデー
タ量は約640キロバイト程度もしくはそれ以上となる
ため、1ブロックの大きさを64キロバイトとすれば、
実際には一つの動画データはすべてのデータディスク2
01にまたがって格納されることが期待できる。パリテ
ィディスク202のブロックには、対応するデータディ
スク201のブロックの排他的論理和がパリティ(冗長
データ)として格納されている。例えばP0−3のブロ
ックにはデータディスク201のブロック0、1、2、
3のパリティが格納されている。また、1個のバッファ
108は少なくとも(ブロックの大きさ)×((あるパ
リティに対応する全てのデータの数すなわち4)+(あ
るデータに対応する全てのパリティの数すなわち1))
×2の大きさを持つ。
201と1台のパリティディスク202からなり、それ
ぞれのディスクはディスクI/F制御部105に接続さ
れている。データディスク201には動画データが格納
されている。動画データは一つないし複数のブロックに
分割され、図1においてデータディスク201内のブロ
ックにふってある番号の順に連続してデータディスク2
01に分配、格納される。具体的には、動画データ圧縮
規格としてMPEG2を用いれば、1秒間の動画のデー
タ量は約640キロバイト程度もしくはそれ以上となる
ため、1ブロックの大きさを64キロバイトとすれば、
実際には一つの動画データはすべてのデータディスク2
01にまたがって格納されることが期待できる。パリテ
ィディスク202のブロックには、対応するデータディ
スク201のブロックの排他的論理和がパリティ(冗長
データ)として格納されている。例えばP0−3のブロ
ックにはデータディスク201のブロック0、1、2、
3のパリティが格納されている。また、1個のバッファ
108は少なくとも(ブロックの大きさ)×((あるパ
リティに対応する全てのデータの数すなわち4)+(あ
るデータに対応する全てのパリティの数すなわち1))
×2の大きさを持つ。
【0039】失われた任意のデータは、対応するパリテ
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えば、ブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えば、ブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
【0040】MPU101は、要求された動画データの
物理位置(アドレス)獲得手段と、データディスク20
1の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティのアドレス獲得手
段と、障害データを回復するために必要なデータのアド
レス獲得手段と、パリティおよびデータの排他的論理和
を計算して障害データを回復する手段と、データディス
ク201およびパリティディスク202に対し格納され
ているデータおよびパリティの読み出し要求を生成して
送る手段と、連続したブロックの動画データに対する転
送に対し、任意のブロックのデータの転送が完了するま
ではデータを回復するために必要なデータおよびパリテ
ィをバッファ108内から廃棄しないようにバッファ1
08を管理する手段と、データ転送制御部106にバッ
ファ108内のデータを転送要求元へ転送させる手段
を、MPU101内のソフトウェアとして持つ。この様
子を図2に示す。
物理位置(アドレス)獲得手段と、データディスク20
1の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティのアドレス獲得手
段と、障害データを回復するために必要なデータのアド
レス獲得手段と、パリティおよびデータの排他的論理和
を計算して障害データを回復する手段と、データディス
ク201およびパリティディスク202に対し格納され
ているデータおよびパリティの読み出し要求を生成して
送る手段と、連続したブロックの動画データに対する転
送に対し、任意のブロックのデータの転送が完了するま
ではデータを回復するために必要なデータおよびパリテ
ィをバッファ108内から廃棄しないようにバッファ1
08を管理する手段と、データ転送制御部106にバッ
ファ108内のデータを転送要求元へ転送させる手段
を、MPU101内のソフトウェアとして持つ。この様
子を図2に示す。
【0041】図3にデータディスク201に障害が発生
しない場合の、動画データの読み出しおよび転送の処理
を、図4にデータディスク201に障害が発生した場合
の、動画データの読み出しおよび転送の処理を示す。
しない場合の、動画データの読み出しおよび転送の処理
を、図4にデータディスク201に障害が発生した場合
の、動画データの読み出しおよび転送の処理を示す。
【0042】まず、データディスク201に障害が発生
しない場合の、動画データの読み出しおよび転送の処理
について図3を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
しない場合の、動画データの読み出しおよび転送の処理
について図3を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
【0043】動画データは図1のデータディスク201
のブロックの番号順に連続して格納されているため、動
画データに対する転送要求も番号順に連続したものとな
る。例として、データディスク201のブロック0から
3までに格納されている動画データに対し転送要求があ
った場合、MPU101は転送要求からブロック0、
1、2、3のデータのアドレス、およびデータに対応す
るパリティディスク202のブロックP0−3に格納さ
れているパリティのアドレスを計算、獲得し(101
0)、各データに対する読み出し要求をディスクI/F
制御部105を介してデータディスク201およびパリ
ティディスク202に送る(1020)。データディス
ク201およびパリティディスク202はデータおよび
パリティをメインメモリ103内のバッファ108へ正
常に読み出し、MPU101に通知する(1030)。
MPU101はデータ転送制御部106にバッファ10
8内のブロック0、1、2、3のデータを順に転送要求
元へ転送させる(1040)。
のブロックの番号順に連続して格納されているため、動
画データに対する転送要求も番号順に連続したものとな
る。例として、データディスク201のブロック0から
3までに格納されている動画データに対し転送要求があ
った場合、MPU101は転送要求からブロック0、
1、2、3のデータのアドレス、およびデータに対応す
るパリティディスク202のブロックP0−3に格納さ
れているパリティのアドレスを計算、獲得し(101
0)、各データに対する読み出し要求をディスクI/F
制御部105を介してデータディスク201およびパリ
ティディスク202に送る(1020)。データディス
ク201およびパリティディスク202はデータおよび
パリティをメインメモリ103内のバッファ108へ正
常に読み出し、MPU101に通知する(1030)。
MPU101はデータ転送制御部106にバッファ10
8内のブロック0、1、2、3のデータを順に転送要求
元へ転送させる(1040)。
【0044】次に、データディスク201の1台に障害
が発生した場合の、動画データの読み出し、転送の処理
について図4を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
が発生した場合の、動画データの読み出し、転送の処理
について図4を用いて説明する。説明を簡単にするため
に、転送要求元が一つの場合について説明する。実際に
は転送要求元は多数存在するため、実際の処理は以下の
処理が複数同時進行するものとなる。
【0045】動画データは図1のデータディスク201
のブロックの番号順に連続して格納されているため、動
画データに対する転送要求も番号順に連続したものとな
る。例として、データディスク201のブロック0から
3までに格納されている動画データに対し転送要求があ
った場合、MPU101は転送要求からブロック0、
1、2、3のデータのアドレス、およびデータに対応す
るパリティディスク202のブロックP0−3に格納さ
れているパリティのアドレスを計算、獲得し(201
0)、各データおよびパリティに対する読み出し要求を
ディスクI/F制御部105を介してデータディスク2
01およびパリティディスク202に送る(202
0)。データディスク201およびパリティディスク2
02はデータおよびパリティをバッファ108に読み出
すことを試みる。
のブロックの番号順に連続して格納されているため、動
画データに対する転送要求も番号順に連続したものとな
る。例として、データディスク201のブロック0から
3までに格納されている動画データに対し転送要求があ
った場合、MPU101は転送要求からブロック0、
1、2、3のデータのアドレス、およびデータに対応す
るパリティディスク202のブロックP0−3に格納さ
れているパリティのアドレスを計算、獲得し(201
0)、各データおよびパリティに対する読み出し要求を
ディスクI/F制御部105を介してデータディスク2
01およびパリティディスク202に送る(202
0)。データディスク201およびパリティディスク2
02はデータおよびパリティをバッファ108に読み出
すことを試みる。
【0046】ここで例えばブロック2を持つデータディ
スク201に障害が発生し、ブロック2のデータの読み
出しに失敗すると、ブロック2を持つデータディスク2
01は読み出し失敗をMPU101に通知する(203
0)。
スク201に障害が発生し、ブロック2のデータの読み
出しに失敗すると、ブロック2を持つデータディスク2
01は読み出し失敗をMPU101に通知する(203
0)。
【0047】データディスク201およびパリティディ
スク202は、それぞれブロック2以外のブロック0、
1、3のデータおよびブロックP0−3のパリティをバ
ッファ108へ正常に読み出し、MPU101へ通知す
る(2040)。MPU101はデータ転送制御部10
6にまずバッファ108内のブロック0、1のデータを
順に転送要求元へ転送させる(2050)。
スク202は、それぞれブロック2以外のブロック0、
1、3のデータおよびブロックP0−3のパリティをバ
ッファ108へ正常に読み出し、MPU101へ通知す
る(2040)。MPU101はデータ転送制御部10
6にまずバッファ108内のブロック0、1のデータを
順に転送要求元へ転送させる(2050)。
【0048】また、ブロック2のデータ読み出し失敗の
通知を受けたMPU101は、バッファ108内に読み
出されたブロック0、1、3のデータとブロックP0−
3のパリティの排他的論理和を計算することで、ブロッ
ク2のデータを回復する(2060)。MPU101
は、バッファ108を、あるブロックのデータに対し、
ブロックのデータの転送が完了するまでは、データを回
復するために必要なデータおよびパリティをバッファ1
08内から廃棄しないように管理するため、ブロック
0、1のデータの転送完了後でもブロック2のデータの
転送が完了するまではブロック0、1のデータはバッフ
ァ108内から廃棄されておらず、ブロック2のデータ
の回復に利用できる。
通知を受けたMPU101は、バッファ108内に読み
出されたブロック0、1、3のデータとブロックP0−
3のパリティの排他的論理和を計算することで、ブロッ
ク2のデータを回復する(2060)。MPU101
は、バッファ108を、あるブロックのデータに対し、
ブロックのデータの転送が完了するまでは、データを回
復するために必要なデータおよびパリティをバッファ1
08内から廃棄しないように管理するため、ブロック
0、1のデータの転送完了後でもブロック2のデータの
転送が完了するまではブロック0、1のデータはバッフ
ァ108内から廃棄されておらず、ブロック2のデータ
の回復に利用できる。
【0049】その後、MPU101はデータ転送制御部
106にバッファ108内のブロック2、3のデータを
順に転送要求元へ転送させる(2070)。
106にバッファ108内のブロック2、3のデータを
順に転送要求元へ転送させる(2070)。
【0050】以上の処理により、データディスク201
のブロック0から3までに格納されている動画データ
の、転送要求元への転送が完了する。
のブロック0から3までに格納されている動画データ
の、転送要求元への転送が完了する。
【0051】MPU101は、あるブロックのデータに
対しブロックのデータの転送が完了するまではデータを
回復するために必要なデータおよびパリティをバッファ
108内から廃棄しないようにバッファ108を管理す
ることを実現するために、バッファ108内に保持して
いるデータまたはパリティのブロックの番号と、バッフ
ァ108内でのデータまたはパリティの位置を示すメモ
リアドレスとバッファ108内に保持しているデータに
関しては、回復処理においてデータを必要とするような
他のデータおよびデータ自身、すなわちデータと同じパ
リティに対応する全てのデータのうち、転送要求を受け
ているにもかかわらずまだ転送していないブロックのデ
ータの数と、バッファ108内に保持しているパリティ
に関しては、回復処理においてパリティを必要とするよ
うなデータ、すなわちパリティに対応するデータのう
ち、転送要求を受けているにもかかわらずまだ転送して
いないブロックのデータの数などをパラメータとする、
例えば図5のごとき内容を持つバッファ管理テーブルを
各バッファ108毎に有する。MPU101は、図4に
示した上記の処理において、データディスク201およ
びパリティディスク202に対して読み出し要求を生成
する際に(2020)、ブロック番号と、メモリアドレ
スと、のまだ転送していないブロックのデータの数を設
定し、転送要求元にデータを転送する際に(2050、
2070)、まだ転送していないブロックのデータの数
を減じる。また、MPU101は、バッファ108内に
空き領域を確保する必要が生じた場合は、バッファ管理
テーブルにおいて、のまだ転送していないブロックのデ
ータの数が0であるデータまたはパリティを検索し、デ
ータまたはパリティをバッファ108内から廃棄するよ
うにすることで、あるブロックのデータに対し、ブロッ
クのデータの転送が完了するまでは、データを回復する
ために必要なデータおよびパリティをバッファ108内
から廃棄しないようにバッファ108を管理することを
実現できる。なお、バッファ108およびバッファ管理
テーブルに対する以上の操作は、図2に示したMPU1
01の持つ、連続したブロックの動画データに対する転
送に対し任意のブロックのデータの転送が完了するまで
はデータを回復するために必要なデータおよびパリティ
をバッファ108内から廃棄しないようにバッファ10
8を管理する手段として実現される。
対しブロックのデータの転送が完了するまではデータを
回復するために必要なデータおよびパリティをバッファ
108内から廃棄しないようにバッファ108を管理す
ることを実現するために、バッファ108内に保持して
いるデータまたはパリティのブロックの番号と、バッフ
ァ108内でのデータまたはパリティの位置を示すメモ
リアドレスとバッファ108内に保持しているデータに
関しては、回復処理においてデータを必要とするような
他のデータおよびデータ自身、すなわちデータと同じパ
リティに対応する全てのデータのうち、転送要求を受け
ているにもかかわらずまだ転送していないブロックのデ
ータの数と、バッファ108内に保持しているパリティ
に関しては、回復処理においてパリティを必要とするよ
うなデータ、すなわちパリティに対応するデータのう
ち、転送要求を受けているにもかかわらずまだ転送して
いないブロックのデータの数などをパラメータとする、
例えば図5のごとき内容を持つバッファ管理テーブルを
各バッファ108毎に有する。MPU101は、図4に
示した上記の処理において、データディスク201およ
びパリティディスク202に対して読み出し要求を生成
する際に(2020)、ブロック番号と、メモリアドレ
スと、のまだ転送していないブロックのデータの数を設
定し、転送要求元にデータを転送する際に(2050、
2070)、まだ転送していないブロックのデータの数
を減じる。また、MPU101は、バッファ108内に
空き領域を確保する必要が生じた場合は、バッファ管理
テーブルにおいて、のまだ転送していないブロックのデ
ータの数が0であるデータまたはパリティを検索し、デ
ータまたはパリティをバッファ108内から廃棄するよ
うにすることで、あるブロックのデータに対し、ブロッ
クのデータの転送が完了するまでは、データを回復する
ために必要なデータおよびパリティをバッファ108内
から廃棄しないようにバッファ108を管理することを
実現できる。なお、バッファ108およびバッファ管理
テーブルに対する以上の操作は、図2に示したMPU1
01の持つ、連続したブロックの動画データに対する転
送に対し任意のブロックのデータの転送が完了するまで
はデータを回復するために必要なデータおよびパリティ
をバッファ108内から廃棄しないようにバッファ10
8を管理する手段として実現される。
【0052】以上の処理方法では、データディスク20
1の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティに対する読み出し
要求を、障害データの読み出し要求とともに生成しパリ
ティディスク202に送っているため、パリティは障害
データ検出とほぼ同時に利用可能となり、よって障害デ
ータ検出後の速やかな回復が可能となる。
1の障害によって利用できなくなったデータ(障害デー
タ)を回復するために必要なパリティに対する読み出し
要求を、障害データの読み出し要求とともに生成しパリ
ティディスク202に送っているため、パリティは障害
データ検出とほぼ同時に利用可能となり、よって障害デ
ータ検出後の速やかな回復が可能となる。
【0053】また、以上の処理方法では、データディス
ク201およびパリティディスク202からバッファ1
08上に1回読み出されたデータおよびパリティは、回
復のためにデータおよびパリティを必要とするデータが
全て正常に転送されるまでは、バッファ108内に必ず
保持され利用可能であることが保証されているため、回
復のための読み出し回数を低減でき、障害データ検出後
の速やかな回復が可能となる。
ク201およびパリティディスク202からバッファ1
08上に1回読み出されたデータおよびパリティは、回
復のためにデータおよびパリティを必要とするデータが
全て正常に転送されるまでは、バッファ108内に必ず
保持され利用可能であることが保証されているため、回
復のための読み出し回数を低減でき、障害データ検出後
の速やかな回復が可能となる。
【0054】よって、以上の処理方法により、動画デー
タの読み出し、転送処理に要求されるリアルタイム性
を、障害データ発生時でも実現することが可能になる。
タの読み出し、転送処理に要求されるリアルタイム性
を、障害データ発生時でも実現することが可能になる。
【0055】なお、動画データに対する転送要求元から
の転送要求の範囲は、上記の例のように、一つのパリテ
ィのブロックに対応する全てのデータのブロックにまた
がるものであるとはかぎらないが、要求された範囲に対
し、範囲に含まれるデータを回復するために必要なデー
タを全てデータディスク201から読み出し、転送要求
元には要求された範囲のみを転送することによって、以
上の処理方法を適用することができ、これにより障害デ
ータを検出後速やかに回復し、動画データの読み出しお
よび転送処理に要求されるリアルタイム性を障害データ
発生時でも実現することが可能になる。すなわち、例え
ば要求された範囲がブロック2、3であった場合には、
ブロック0、1、2、3をデータディスク201から読
み出し、ブロック2、3を転送要求元に転送するように
する。また例えば要求された範囲がブロック4、5であ
った場合には、ブロック4、5、6、7をデータディス
ク201から読み出し、ブロック4、5を転送要求元に
転送するようにする。
の転送要求の範囲は、上記の例のように、一つのパリテ
ィのブロックに対応する全てのデータのブロックにまた
がるものであるとはかぎらないが、要求された範囲に対
し、範囲に含まれるデータを回復するために必要なデー
タを全てデータディスク201から読み出し、転送要求
元には要求された範囲のみを転送することによって、以
上の処理方法を適用することができ、これにより障害デ
ータを検出後速やかに回復し、動画データの読み出しお
よび転送処理に要求されるリアルタイム性を障害データ
発生時でも実現することが可能になる。すなわち、例え
ば要求された範囲がブロック2、3であった場合には、
ブロック0、1、2、3をデータディスク201から読
み出し、ブロック2、3を転送要求元に転送するように
する。また例えば要求された範囲がブロック4、5であ
った場合には、ブロック4、5、6、7をデータディス
ク201から読み出し、ブロック4、5を転送要求元に
転送するようにする。
【0056】また、転送要求元において録画時の時系列
とは逆順に動画を再生する、いわゆる逆再生を行なうた
めに、転送要求元からの動画データの転送要求が図1の
ブロックの番号の逆順に連続したものとなることも考え
られるが、この場合にも以上の処理方法を同様に適用す
ることによって、障害データを検出後速やかに回復し、
動画データの読み出し、転送処理に要求されるリアルタ
イム性を、障害データ発生時でも実現することが可能に
なる。
とは逆順に動画を再生する、いわゆる逆再生を行なうた
めに、転送要求元からの動画データの転送要求が図1の
ブロックの番号の逆順に連続したものとなることも考え
られるが、この場合にも以上の処理方法を同様に適用す
ることによって、障害データを検出後速やかに回復し、
動画データの読み出し、転送処理に要求されるリアルタ
イム性を、障害データ発生時でも実現することが可能に
なる。
【0057】本実施例では、データディスク201のみ
に動画データを、パリティディスク202のみにパリテ
ィを分割して格納する、いわゆるRAIDレベル4のデ
ータ/パリティ配置を採用している。配置の効果につい
て以下に説明する。RAIDに対しデータの書き込みを
行なう場合には、データに対応したパリティも同時に書
き込む必要があるが、RAIDレベル4のデータ/パリ
ティ配置ではパリティを1台のパリティディスク202
に書き込むことになり、パリティディスク202に処理
が集中するため、データおよびパリティが全ディスクに
分散されている図8のごときRAIDレベル5のデータ
/パリティ配置と比較すると性能が低下する。しかし本
実施例の動画転送システムに要求される処理は動画デー
タの読み出しおよび転送処理であり、動画データの格納
および更新などの書き込み処理はごくまれにしか生じな
い。よってRAIDレベル4のデータ/パリティ配置に
おけるパリティディスク202への処理の集中は起こら
ない。RAIDレベル4のデータ/パリティ配置はRA
IDレベル5のデータ/パリティ配置に対し単純であ
り、かつ任意の対応するパリティとデータの配置関係が
一定であるため、RAIDレベル4のデータ/パリティ
配置を採用することによって上記処理の実現を簡単に
し、また動画データの読み出し、転送処理に要求される
リアルタイム性の実現を簡単にすることができる。
に動画データを、パリティディスク202のみにパリテ
ィを分割して格納する、いわゆるRAIDレベル4のデ
ータ/パリティ配置を採用している。配置の効果につい
て以下に説明する。RAIDに対しデータの書き込みを
行なう場合には、データに対応したパリティも同時に書
き込む必要があるが、RAIDレベル4のデータ/パリ
ティ配置ではパリティを1台のパリティディスク202
に書き込むことになり、パリティディスク202に処理
が集中するため、データおよびパリティが全ディスクに
分散されている図8のごときRAIDレベル5のデータ
/パリティ配置と比較すると性能が低下する。しかし本
実施例の動画転送システムに要求される処理は動画デー
タの読み出しおよび転送処理であり、動画データの格納
および更新などの書き込み処理はごくまれにしか生じな
い。よってRAIDレベル4のデータ/パリティ配置に
おけるパリティディスク202への処理の集中は起こら
ない。RAIDレベル4のデータ/パリティ配置はRA
IDレベル5のデータ/パリティ配置に対し単純であ
り、かつ任意の対応するパリティとデータの配置関係が
一定であるため、RAIDレベル4のデータ/パリティ
配置を採用することによって上記処理の実現を簡単に
し、また動画データの読み出し、転送処理に要求される
リアルタイム性の実現を簡単にすることができる。
【0058】<第二実施例>図6は本発明を用いた動画
転送システムのブロック図である。図1における第一実
施例との違いは、4台のデータディスク201と、デー
タディスク201の排他的論理和をパリティとして格納
した1台のパリティディスク202からなる構成が複数
組存在し、かつ図6において全てのデータディスク20
1にまたがってデータディスク201内のブロックにふ
ってある番号の順に連続してデータディスク201に動
画データが分配、格納されていることにある。これによ
り、データディスク201の台数は第一実施例に比べ増
加しているため、動画データの格納量について大容量を
実現することができる。
転送システムのブロック図である。図1における第一実
施例との違いは、4台のデータディスク201と、デー
タディスク201の排他的論理和をパリティとして格納
した1台のパリティディスク202からなる構成が複数
組存在し、かつ図6において全てのデータディスク20
1にまたがってデータディスク201内のブロックにふ
ってある番号の順に連続してデータディスク201に動
画データが分配、格納されていることにある。これによ
り、データディスク201の台数は第一実施例に比べ増
加しているため、動画データの格納量について大容量を
実現することができる。
【0059】さらに全てのデータディスク201にまた
がりデータディスク201内のブロックにふってある番
号の順に連続して動画データを分配、格納しているた
め、データディスク201を並列に動作させることによ
って高い転送性能を実現することができる。
がりデータディスク201内のブロックにふってある番
号の順に連続して動画データを分配、格納しているた
め、データディスク201を並列に動作させることによ
って高い転送性能を実現することができる。
【0060】ただし、データディスク201の1台に障
害が発生した場合でも、障害により利用できなくなった
データ(障害データ)を回復するために必要なデータお
よびパリティはそれぞれ3台のデータディスク201と
1台のパリティディスク202に格納されていることに
なり、すなわち障害に関係するデータディスク201お
よびパリティディスク202は計5台に過ぎないため、
構成の変化にともなう各データおよびパリティのアドレ
スを獲得するために用いる計算方法の変更を除けば、第
一実施例で示した手段についての変更は必要ない。よっ
て図1における第一実施例で示した処理方法を適用する
ことができる。処理方法では、データディスク201の
障害によって利用できなくなったデータ(障害データ)
を回復するために必要なパリティに対する読み出し要求
を、障害データの読み出し要求とともに生成しパリティ
ディスク202に送っているため、パリティは障害デー
タ検出とほぼ同時に利用可能となり、よって障害データ
検出後の速やかな回復が可能となる。
害が発生した場合でも、障害により利用できなくなった
データ(障害データ)を回復するために必要なデータお
よびパリティはそれぞれ3台のデータディスク201と
1台のパリティディスク202に格納されていることに
なり、すなわち障害に関係するデータディスク201お
よびパリティディスク202は計5台に過ぎないため、
構成の変化にともなう各データおよびパリティのアドレ
スを獲得するために用いる計算方法の変更を除けば、第
一実施例で示した手段についての変更は必要ない。よっ
て図1における第一実施例で示した処理方法を適用する
ことができる。処理方法では、データディスク201の
障害によって利用できなくなったデータ(障害データ)
を回復するために必要なパリティに対する読み出し要求
を、障害データの読み出し要求とともに生成しパリティ
ディスク202に送っているため、パリティは障害デー
タ検出とほぼ同時に利用可能となり、よって障害データ
検出後の速やかな回復が可能となる。
【0061】また、処理方法では、データディスク20
1およびパリティディスク202からバッファ108上
に1回読み出されたデータおよびパリティは、回復のた
めにデータおよびパリティを必要とするデータが全て正
常に転送されるまでは、バッファ108内に必ず保持さ
れ利用可能であることが保証されているため、回復のた
めの読み出し回数を低減でき、障害データ検出後の速や
かな回復が可能となる。
1およびパリティディスク202からバッファ108上
に1回読み出されたデータおよびパリティは、回復のた
めにデータおよびパリティを必要とするデータが全て正
常に転送されるまでは、バッファ108内に必ず保持さ
れ利用可能であることが保証されているため、回復のた
めの読み出し回数を低減でき、障害データ検出後の速や
かな回復が可能となる。
【0062】したがって処理方法を本実施例に適用する
ことによって、第一実施例と同様に障害データを検出後
速やかに回復し、動画データの読み出しおよび転送処理
に要求されるリアルタイム性を障害データ発生時でも実
現し、かつ大容量を実現し、高い転送性能を実現するこ
とが可能となる。
ことによって、第一実施例と同様に障害データを検出後
速やかに回復し、動画データの読み出しおよび転送処理
に要求されるリアルタイム性を障害データ発生時でも実
現し、かつ大容量を実現し、高い転送性能を実現するこ
とが可能となる。
【0063】<第三実施例>図7に本発明を用いた動画
転送システムの構成を示す。本動画転送システムは、複
数のMPUボード400と、ディスクI/F(インター
フェース)交換機能部500と、データディスク201
およびパリティディスク202をアレイ状に配置したデ
ィスク群200からなり、ネットワーク300によっ
て、動画データの転送要求元と接続されている。
転送システムの構成を示す。本動画転送システムは、複
数のMPUボード400と、ディスクI/F(インター
フェース)交換機能部500と、データディスク201
およびパリティディスク202をアレイ状に配置したデ
ィスク群200からなり、ネットワーク300によっ
て、動画データの転送要求元と接続されている。
【0064】MPUボード400は、MPU101とバ
ス変換部102とバッファ108とメモリ109とディ
スクI/F制御部105と、データ転送制御部106か
らなり、MPU101とバス変換部102とメモリ10
9はMPUバス104で接続され、ディスクI/F制御
部105とバス変換部102とデータ転送制御部106
は拡張バス107で接続されている。すなわちMPUバ
ス104と拡張バス107はバス変換部102で接続さ
れている。ディスクI/F制御部105はディスクI/
F交換機能部500とも接続されている。またデータ転
送制御部106はネットワーク300とも接続されてい
る。またメモリ109はバッファ108を持つ。バッフ
ァ108は転送要求元からの転送要求毎に用意される。
ス変換部102とバッファ108とメモリ109とディ
スクI/F制御部105と、データ転送制御部106か
らなり、MPU101とバス変換部102とメモリ10
9はMPUバス104で接続され、ディスクI/F制御
部105とバス変換部102とデータ転送制御部106
は拡張バス107で接続されている。すなわちMPUバ
ス104と拡張バス107はバス変換部102で接続さ
れている。ディスクI/F制御部105はディスクI/
F交換機能部500とも接続されている。またデータ転
送制御部106はネットワーク300とも接続されてい
る。またメモリ109はバッファ108を持つ。バッフ
ァ108は転送要求元からの転送要求毎に用意される。
【0065】ディスク群200はデータディスク201
とパリティディスク202からなり、それぞれのディス
クはディスクI/F交換機能部500に接続されてい
る。データディスク201には動画データが格納されて
いる。動画データは一つないし複数のブロックに分割さ
れ、図7においてデータディスク201内のブロックに
ふってある番号の順に連続してデータディスク201に
分配、格納される。具体的には、動画データ圧縮規格と
してEG2を用いれば、1秒間の動画のデータ量は約6
40キロバイト程もしくはそれ以上となるため、1ブロ
ックの大きさを64キロバイトとすれば、実際には一つ
の動画データは前記パリティディスク202の一つのブ
ロックに対応する各データディスク201のブロック全
てにまたがって格納されることが期待できる。パリティ
ディスク202のブロックには、対応するデータディス
ク201のブロックの排他的論理和がパリティ(冗長デ
ータ)として格納されている。例えばP0−3のブロッ
クにはデータディスク201のブロック0、1、2、3
のパリティが格納されている。また、1個のバッファ1
08は少なくとも(ブロックの大きさ)×((あるパリ
ティに対応する全てのデータの数すなわち4)+(ある
データに対応する全てのパリティの数すなわち1))×
2の大きさを持つ。
とパリティディスク202からなり、それぞれのディス
クはディスクI/F交換機能部500に接続されてい
る。データディスク201には動画データが格納されて
いる。動画データは一つないし複数のブロックに分割さ
れ、図7においてデータディスク201内のブロックに
ふってある番号の順に連続してデータディスク201に
分配、格納される。具体的には、動画データ圧縮規格と
してEG2を用いれば、1秒間の動画のデータ量は約6
40キロバイト程もしくはそれ以上となるため、1ブロ
ックの大きさを64キロバイトとすれば、実際には一つ
の動画データは前記パリティディスク202の一つのブ
ロックに対応する各データディスク201のブロック全
てにまたがって格納されることが期待できる。パリティ
ディスク202のブロックには、対応するデータディス
ク201のブロックの排他的論理和がパリティ(冗長デ
ータ)として格納されている。例えばP0−3のブロッ
クにはデータディスク201のブロック0、1、2、3
のパリティが格納されている。また、1個のバッファ1
08は少なくとも(ブロックの大きさ)×((あるパリ
ティに対応する全てのデータの数すなわち4)+(ある
データに対応する全てのパリティの数すなわち1))×
2の大きさを持つ。
【0066】ディスクI/F交換機能部500は各MP
Uボード400のディスクI/F制御部105とデータ
ディスク201またはパリティディスク202の間に、
それぞれ独立したデータ転送経路をデータ転送に必要な
期間確立する機能を持つ。
Uボード400のディスクI/F制御部105とデータ
ディスク201またはパリティディスク202の間に、
それぞれ独立したデータ転送経路をデータ転送に必要な
期間確立する機能を持つ。
【0067】失われた任意のデータは、対応するパリテ
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えばブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
ィと、パリティに対応する他のデータの排他的論理和か
ら回復することができる。例えばブロック2のデータ
は、ブロックP0−3のパリティとブロック0、1、3
のデータの排他的論理和から回復することができる。
【0068】第一実施例および第二実施例と同様に、M
PU101は、要求された動画データの物理位置(アド
レス)獲得手段と、データディスク201の障害によっ
て利用できなくなったデータ(障害データ)を回復する
ために必要なパリティのアドレス獲得手段と、障害デー
タを回復するために必要なデータのアドレス獲得手段
と、パリティおよびデータの排他的論理和を計算して障
害データを回復する手段と、データディスク201およ
びパリティディスク202に対し格納されているデータ
およびパリティの読み出し要求を生成して送る手段と、
連続したブロックの動画データに対する転送に対し、任
意のブロックのデータの転送が完了するまではデータを
回復するために必要なデータおよびパリティをバッファ
108内から廃棄しないようにバッファ108を管理す
る手段と、データ転送制御部106にバッファ108内
のデータを転送要求元へ転送させる手段を、MPU10
1内のソフトウェアとして持つ。
PU101は、要求された動画データの物理位置(アド
レス)獲得手段と、データディスク201の障害によっ
て利用できなくなったデータ(障害データ)を回復する
ために必要なパリティのアドレス獲得手段と、障害デー
タを回復するために必要なデータのアドレス獲得手段
と、パリティおよびデータの排他的論理和を計算して障
害データを回復する手段と、データディスク201およ
びパリティディスク202に対し格納されているデータ
およびパリティの読み出し要求を生成して送る手段と、
連続したブロックの動画データに対する転送に対し、任
意のブロックのデータの転送が完了するまではデータを
回復するために必要なデータおよびパリティをバッファ
108内から廃棄しないようにバッファ108を管理す
る手段と、データ転送制御部106にバッファ108内
のデータを転送要求元へ転送させる手段を、MPU10
1内のソフトウェアとして持つ。
【0069】図6における第二実施例との第一の違い
は、転送要求元からの転送要求に対する動画データの読
み出し、転送処理を制御する部位をMPUボード400
として基盤化し、MPUボード400を複数用いている
ことである。用いているMPUボード400の数を増や
すことによってより多くの転送要求を処理できるように
なるため、転送要求の増加に容易に対応でき、高い転送
要求処理性能を実現できる。
は、転送要求元からの転送要求に対する動画データの読
み出し、転送処理を制御する部位をMPUボード400
として基盤化し、MPUボード400を複数用いている
ことである。用いているMPUボード400の数を増や
すことによってより多くの転送要求を処理できるように
なるため、転送要求の増加に容易に対応でき、高い転送
要求処理性能を実現できる。
【0070】図6における第二実施例との第二の違い
は、データディスク201およびパリティディスク20
2がディスクI/F交換機能部500を介してディスク
I/F制御部105と接続されていることである。ディ
スクI/F交換機能部500は各MPUボード400の
ディスクI/F制御部105とデータディスク201ま
たはパリティディスク202の間に、それぞれ独立した
データ転送経路をデータ転送に必要な期間確立する機能
を持つ。これにより、各MPUボード400とデータデ
ィスク201およびパリティディスク202の間で高い
転送性能を実現し、転送要求元からの多数の転送要求に
対する処理に対応できる。
は、データディスク201およびパリティディスク20
2がディスクI/F交換機能部500を介してディスク
I/F制御部105と接続されていることである。ディ
スクI/F交換機能部500は各MPUボード400の
ディスクI/F制御部105とデータディスク201ま
たはパリティディスク202の間に、それぞれ独立した
データ転送経路をデータ転送に必要な期間確立する機能
を持つ。これにより、各MPUボード400とデータデ
ィスク201およびパリティディスク202の間で高い
転送性能を実現し、転送要求元からの多数の転送要求に
対する処理に対応できる。
【0071】なお、これらの相違点にもかかわらず、本
実施例に、第二実施例に適用した処理方法すなわち第一
実施例で示した処理方法を適用することは可能である。
処理方法では、データディスク201の障害によって利
用できなくなったデータ(障害データ)を回復するため
に必要なパリティに対する読み出し要求を、障害データ
の読み出し要求とともに生成しパリティディスク202
に送っているため、パリティは障害データ検出とほぼ同
時に利用可能となり、よって障害データ検出後の速やか
な回復が可能となる。
実施例に、第二実施例に適用した処理方法すなわち第一
実施例で示した処理方法を適用することは可能である。
処理方法では、データディスク201の障害によって利
用できなくなったデータ(障害データ)を回復するため
に必要なパリティに対する読み出し要求を、障害データ
の読み出し要求とともに生成しパリティディスク202
に送っているため、パリティは障害データ検出とほぼ同
時に利用可能となり、よって障害データ検出後の速やか
な回復が可能となる。
【0072】また、処理方法では、データディスク20
1およびパリティディスク202からバッファ108上
に1回読み出されたデータおよびパリティは、回復のた
めにデータおよびパリティを必要とするデータが全て正
常に転送されるまでは、バッファ108内に必ず保持さ
れ利用可能であることが保証されているため、回復のた
めの読み出し回数を低減でき、障害データ検出後の速や
かな回復が可能となる。
1およびパリティディスク202からバッファ108上
に1回読み出されたデータおよびパリティは、回復のた
めにデータおよびパリティを必要とするデータが全て正
常に転送されるまでは、バッファ108内に必ず保持さ
れ利用可能であることが保証されているため、回復のた
めの読み出し回数を低減でき、障害データ検出後の速や
かな回復が可能となる。
【0073】したがって処理方法を本実施例に適用する
ことによって、第二実施例と同様に障害データを検出後
速やかに回復し、動画データの読み出しおよび転送処理
に要求されるリアルタイム性を障害データ発生時でも実
現し、かつ転送要求元からの多数の転送要求を処理する
ことが可能となる。
ことによって、第二実施例と同様に障害データを検出後
速やかに回復し、動画データの読み出しおよび転送処理
に要求されるリアルタイム性を障害データ発生時でも実
現し、かつ転送要求元からの多数の転送要求を処理する
ことが可能となる。
【0074】
【発明の効果】本発明によれば、ディスクアレイ装置
(RAID)おける連続したデータに対する読み出しの
処理において、ディスク装置の障害により利用できない
データ(障害データ)が発生した際に、障害データの回
復処理を速やかに開始し、また回復に要するデータおよ
びパリティのディスクからの読み出し回数を低減するこ
とによって、要求を遅延することなく正常に処理するこ
とができる。
(RAID)おける連続したデータに対する読み出しの
処理において、ディスク装置の障害により利用できない
データ(障害データ)が発生した際に、障害データの回
復処理を速やかに開始し、また回復に要するデータおよ
びパリティのディスクからの読み出し回数を低減するこ
とによって、要求を遅延することなく正常に処理するこ
とができる。
【0075】さらに動画データなどのマルチメディアデ
ータをディスクアレイ装置(RAID)に格納してお
き、多数の転送要求元に同時に転送するシステムにおい
て、ディスク装置の障害により利用できないデータ(障
害データ)が発生した際に、障害データを速やかに回復
することで、動画データ転送システムでの動画データの
読み出しおよび転送処理に要求されるリアルタイム性を
障害データ発生時でも実現し、転送要求元における動画
などの間断なき再生を実現することができる。
ータをディスクアレイ装置(RAID)に格納してお
き、多数の転送要求元に同時に転送するシステムにおい
て、ディスク装置の障害により利用できないデータ(障
害データ)が発生した際に、障害データを速やかに回復
することで、動画データ転送システムでの動画データの
読み出しおよび転送処理に要求されるリアルタイム性を
障害データ発生時でも実現し、転送要求元における動画
などの間断なき再生を実現することができる。
【図1】本発明の第一実施例に係る動画転送システムの
ブロック図。
ブロック図。
【図2】本発明の第一実施例に係る動画転送システムの
MPUの持つ手段を示す説明図。
MPUの持つ手段を示す説明図。
【図3】本発明の第一実施例によるデータディスクに障
害が発生しない場合の動画データの読み出しおよび転送
の処理のフローチャート。
害が発生しない場合の動画データの読み出しおよび転送
の処理のフローチャート。
【図4】本発明の第一実施例によるデータディスクに障
害が発生した場合の動画データの読み出しおよび転送の
処理のフローチャート。
害が発生した場合の動画データの読み出しおよび転送の
処理のフローチャート。
【図5】本発明の第一実施例のバッファ管理テーブルの
一例を示す図である。
一例を示す図である。
【図6】本発明の第二実施例の動画転送システムのブロ
ック図。
ック図。
【図7】本発明の第三実施例の動画転送システムのブロ
ック図。
ック図。
【図8】従来例の動画転送システムのブロック図。
【図9】従来例の動画転送システムのMPUの持つ手段
を示す説明図。
を示す説明図。
【図10】従来例のディスクに障害が発生しない場合の
動画データの読み出しおよび転送の処理のフローチャー
ト。
動画データの読み出しおよび転送の処理のフローチャー
ト。
【図11】従来例のディスクに障害が発生した場合の動
画データの読み出しおよび転送の処理のフローチャー
ト。
画データの読み出しおよび転送の処理のフローチャー
ト。
【図12】RAIDレベル3およびRAIDレベル5の
データおよびパリティの配置図。
データおよびパリティの配置図。
100…ホストシステム、 101…MPU、 102…バス変換部、 103…メインメモリ、 104…MPUバス、 105…ディスクI/F制御部、 106…データ転送制御部、 107…拡張バス、 108…バッファ、 109…メモリ、 200…ディスク群、 201…データディスク、 202…パリティディスク、 203…ディスク、 204…データ領域、 205…パリティ領域、 300…ネットワーク。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 兼田 泰典 神奈川県川崎市麻生区王禅寺1099番地株式 会社日立製作所システム開発研究所内 (72)発明者 八木沢 育哉 神奈川県川崎市麻生区王禅寺1099番地株式 会社日立製作所システム開発研究所内
Claims (8)
- 【請求項1】データおよび前記データに対応する冗長デ
ータを分散して格納しそれぞれ独立して並列に入出力動
作を行なう複数のディスク装置をアレイ状に配置した記
憶装置と、転送要求元からの転送要求毎に用意されたバ
ッファと、前記転送要求元と接続し前記バッファ内のデ
ータを転送するデータ転送制御部と、MPUからなり、
前記転送要求元へデータを転送するアレイ型ディスクシ
ステムであって、 要求されたデータのアドレス獲得手段と、前記ディスク
装置の障害によって利用できなくなった障害データを回
復するために必要な冗長データのアドレス獲得手段と、
前記障害データを回復するために必要なデータのアドレ
ス獲得手段と、前記冗長データおよびデータを用いて前
記障害データを回復する手段と、前記ディスク装置に対
し格納されているデータおよび冗長データのバッファへ
の読み出し要求を生成して送る手段と、前記データ転送
制御部に前記バッファ内のデータを前記転送要求元へ転
送させる手段を備えることを特徴とするアレイ型ディス
クシステム。 - 【請求項2】請求項1において、連続した動画データに
対する転送に対し、任意のデータの転送が完了するまで
はデータを回復するために必要なデータおよび冗長デー
タをバッファ内から廃棄しないように前記バッファを管
理する手段を備えるアレイ型ディスクシステム。 - 【請求項3】請求項1または2において、前記複数のデ
ィスク装置をアレイ状に配置した記憶装置は、データの
みを格納する複数台のディスク装置と、データに対応す
る冗長データのみを格納する1台または複数台のディス
ク装置を、アレイ状に配置した記憶装置であるアレイ型
ディスクシステム。 - 【請求項4】請求項1または2において、前記複数のデ
ィスク装置をアレイ状に配置した記憶装置は、データお
よびデータに対応した冗長データを分散して格納した複
数のディスク装置を一単位として、複数単位の、複数の
ディスク装置をアレイ状に配置した記憶装置であるアレ
イ型ディスクシステム。 - 【請求項5】請求項1または2において、前記バッファ
および前記データ転送制御部および前記MPUと、前記
複数のディスク装置をアレイ状に配置した記憶装置とを
接続するために、前記バッファおよび前記データ転送制
御部および前記MPUと、個々のディスク装置との間
に、独立したデータ転送経路をデータ転送に必要な期間
確立することのできる交換機を用いるアレイ型ディスク
システム。 - 【請求項6】転送要求元からの転送要求毎に用意された
バッファと、前記転送要求元と接続し前記バッファ内の
データを転送するデータ転送制御部と、MPUからな
り、 データおよびデータに対応する冗長データを分散して格
納しそれぞれ独立して並列に入出力動作を行なう複数の
ディスク装置をアレイ状に配置した記憶装置とともに一
つまたは複数用いられることで、前記転送要求元へデー
タを転送するアレイ型ディスクシステムを構成するMP
Uボードであって、 要求されたデータのアドレス獲得手段と、前記ディスク
装置の障害によって利用できなくなった障害データを回
復するために必要な冗長データのアドレス獲得手段と、
前記障害データを回復するために必要なデータのアドレ
ス獲得手段と、前記冗長データおよびデータを用いて前
記障害データを回復する手段と、前記ディスク装置に対
し格納されているデータおよび冗長データのバッファへ
の読み出し要求を生成して送る手段と、前記データ転送
制御部に前記バッファ内のデータを前記転送要求元へ転
送させる手段を備えることを特徴とするMPUボード。 - 【請求項7】データおよび前記データに対応する冗長デ
ータを分散して格納しそれぞれ独立して並列に入出力動
作を行なう複数のディスク装置をアレイ状に配置した記
憶装置と、転送要求元からの転送要求毎に用意されたバ
ッファと、前記転送要求元と接続し前記バッファ内のデ
ータを転送するデータ転送制御部と、MPUを有する、
前記転送要求元へデータを転送するアレイ型ディスクシ
ステムの制御方法であって、転送要求元から転送要求の
あったデータをディスク装置から前記バッファへ読み出
すとともに、前記転送要求のあったデータを回復するた
めに必要な冗長データをディスク装置から前記バッファ
へ読み出し、前記転送要求のあったデータを回復するた
めに必要なデータが前記バッファ内に存在しない場合に
は、前記回復するために必要なデータをディスク装置か
ら前記バッファへ読み出し、転送要求元への転送要求の
あったデータ転送時においてディスク装置の障害により
利用できない障害データが発生した場合には、前記障害
データを回復するために必要なデータおよび冗長データ
を用いて、前記バッファ上に前記障害データを回復し、
前記転送要求元へ転送することを特徴とするアレイ型デ
ィスクシステムの制御方法。 - 【請求項8】請求項7において、転送要求元へ転送する
データに対し、転送が完了するまでは前記データを回復
するために必要な、前記バッファ内にあるデータおよび
パリティを前記バッファ内から廃棄しないアレイ型ディ
スクシステムの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6277392A JPH08137629A (ja) | 1994-11-11 | 1994-11-11 | アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6277392A JPH08137629A (ja) | 1994-11-11 | 1994-11-11 | アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08137629A true JPH08137629A (ja) | 1996-05-31 |
Family
ID=17582906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6277392A Pending JPH08137629A (ja) | 1994-11-11 | 1994-11-11 | アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08137629A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9900546B2 (en) | 2013-01-15 | 2018-02-20 | Mitsubishi Electric Corporation | Monitoring system and monitoring camera |
JP2021009646A (ja) * | 2019-07-03 | 2021-01-28 | 富士通株式会社 | ストレージ制御装置およびストレージ制御プログラム |
-
1994
- 1994-11-11 JP JP6277392A patent/JPH08137629A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9900546B2 (en) | 2013-01-15 | 2018-02-20 | Mitsubishi Electric Corporation | Monitoring system and monitoring camera |
JP2021009646A (ja) * | 2019-07-03 | 2021-01-28 | 富士通株式会社 | ストレージ制御装置およびストレージ制御プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5862403A (en) | Continuous data server apparatus and data transfer scheme enabling multiple simultaneous data accesses | |
JP3117390B2 (ja) | 複数のディスク間でデータ・セットを分配する方法及び関連する装置・方法 | |
US5896492A (en) | Maintaining data coherency between a primary memory controller and a backup memory controller | |
US5734812A (en) | Storage unit with parity generation function and storage systems using storage unit with parity generation analyzation | |
US20020049886A1 (en) | Data storage array apparatus storing error information without delay in data access, and method, program recording medium, and program for the same | |
WO2012075845A1 (zh) | 分布式文件系统 | |
JP2006227964A (ja) | ストレージシステム、処理方法及びプログラム | |
WO2001077829A2 (en) | Multi-device storage system with differing fault tolerant methodologies | |
US6098155A (en) | Apparatus and method for streamlining data transfer with existing interconnect bandwidth | |
US7337200B2 (en) | Storage sub-system having expanded data read | |
JP3096392B2 (ja) | Raidを使用する、フル・モーション・ビデオのネットワーク・サポートの方法および装置 | |
JPH10283124A (ja) | 記録再生装置 | |
JPH08137629A (ja) | アレイ型ディスクシステムおよびアレイ型ディスクシステムの制御方法 | |
JP3080584B2 (ja) | マルチメディア用記録システム | |
JP3428350B2 (ja) | 記憶装置システム | |
JP3584665B2 (ja) | 可搬媒体を用いたライブラリ記憶装置 | |
JP3288071B2 (ja) | 情報変換処理装置および情報転送制御方法 | |
JPH10326154A (ja) | アレイコントローラ及びデータサーバ | |
JP3552471B2 (ja) | データ記録再生装置および方法 | |
JP2003167678A (ja) | ディスクアレイシステム、ディスクアレイシステムにおけるロジカルユニットの引き継ぎ方法及び連携制御コントローラ | |
JP2002251332A (ja) | ディスク制御装置 | |
JPH06274282A (ja) | 磁気記録装置 | |
JP2868003B1 (ja) | 磁気ディスク装置 | |
JP3175999B2 (ja) | ディスクアレイ装置 | |
JPH09258914A (ja) | コンピュータシステムのデータ転送方式 |