JPH09231015A - 記憶装置および記憶装置システム - Google Patents
記憶装置および記憶装置システムInfo
- Publication number
- JPH09231015A JPH09231015A JP8040945A JP4094596A JPH09231015A JP H09231015 A JPH09231015 A JP H09231015A JP 8040945 A JP8040945 A JP 8040945A JP 4094596 A JP4094596 A JP 4094596A JP H09231015 A JPH09231015 A JP H09231015A
- Authority
- JP
- Japan
- Prior art keywords
- data
- record
- redundant
- storage
- redundant data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1009—Cache, i.e. caches used in RAID system with parity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
ードの更新に伴うパリティレコードの更新処理に要する
時間を短縮し、記憶装置サブシステムの性能向上を図
る。 【解決手段】制御装置(1300)からパリティの更新に必
要な情報として、更新前後のデータレコードの値から求
めた中間値、または、更新前後のデータそのものをパリ
ティレコードを格納したディスク装置(1304)に転送す
る。ディスク装置では、更新前のパリティレコードを読
み出し、読み出した更新前のパリティと、制御装置から
受け取った情報を基にパリティレコードの更新値を生成
する。生成された更新値は、更新値の生成後、記憶媒体
(1304)上で、読み書きヘッドが最も早く位置付く有効
なデータを格納していない空きレコード(1503)に格納
される。
Description
おける記憶装置サブシステムに係り、特に、キャッシュ
メモリを有する記憶装置サブシテムの高性能化、高信頼
化に関する。
装置サブシステムの一つとして、従来より、磁気ディス
クを記憶媒体とするディスクシステムが用いられてい
る。このようなディスクシステムの高性能化、高信頼化
を実現するための技術として、例えば、エー.シー.エ
ム.シグモッド コンファレンス プロシーディング,19
88年,6月,109−116ページに掲載されているパタ
ーソン等の論文(D. Patterson et al : A Case for Re
dundant Arrays of Inexpensive Disks(RAID), ACMSIGM
OD conference proceeding, Chicago, IL, June 1-3,19
88, pp.109-116、以下、パターソン論文と呼ぶ)に開示
されるようなディスクアレイシステムが知られている。
ディスクアレイシステムでは、物理的には複数のディス
ク装置を、処理装置に対しては1台の論理的なディスク
装置に見せかけることで高性能化を実現している。ま
た、データを格納したディスク装置に障害が発生した場
合、障害が発生したディスク装置に記憶されているデー
タの回復を行うことを可能とする冗長データをデータを
記憶したディスク装置とは別のディスク装置に格納して
おくことにより高信頼化を達成している。
テム上の冗長データの配置方法について、以下に述べる
いくつかの技術が開示されている。第1のデータ配置方
法は、まったく同じ内容のデータを2つのディスク装置
に格納する方法であり、RAID1(レイド1)、ある
いは、2重書きと呼ばれる。第2のデータ配置方法は、
処理装置装置が、論理的なディスク装置との間で、リー
ド/ライト処理を行う際の、リード/ライト単位となる
データの集合であるレコードを分割して、複数のディス
ク装置に格納する方法である。このようなデータ配置方
法は、RAID3と呼ばれる。RAID3では、レコー
ドを分割したそれぞれの分割単位から冗長データが作成
される。また、第3のデータ配置方法では、RAID3
のようにレコードを分割せずに、1つのレコードは1つ
のディスク装置に格納し、別々のディスク装置に格納さ
れた複数のレコードから冗長データを作成する。このよ
うなデータの配置方法には、RAID4、RAID5と
呼ばれるものがある。
タを格納したレコードは、データレコードと呼ばれ、冗
長データを格納したレコードは、パリティレコードと呼
ばれる。また、複数のディスク装置に、データを分割す
る単位をストライプと呼んでいる。ストライプは、レコ
ードの集合であり、データレコードで構成されるストラ
イプを、データストライプと呼び、パリティレコードで
構成されるストライプを、パリティストライプと呼ぶ。
通常、ディスクアレイシステムでは、1つ以上のm個の
データストライプから1つ以上n個のパリティストライ
プが作成される。以下、これらm+n個のストライプの
集合をパリティグループと呼ぶ。これらm+n個のスト
ライプは、別々のディスク装置に格納される。パリティ
グループ内のパリティストライプの数がn個であれば、
n台までのディスク装置に障害が発生しても、そのディ
スク装置内のデータを回復することが可能である。
に伴いパリティレコードも書き替える必要が生ずる。例
えば、パリティグループ内の1つのデータレコードだけ
が書き替えられた場合には、書き変えられた内容と、そ
のデータレコードの更新前の値、パリティレコードの更
新前の値とから、パリティレコードの更新値が作成され
る。このようなパリティレコードの更新処理を効率よく
行いシステムの高性能化を実現する技術として、次のよ
うな技術がある。
開示される技術では、データレコードに対する更新処理
をキャッシュ上で実行し、パリティレコードの更新値の
作成、データレコード、パリティレコードのディスク装
置への書き込みは後から実行する。パリティレコードの
更新値の作成を開始する前に、同一パリティグループ内
のデータレコードにライト処理が発生した場合、複数の
ライト処理に対して、パリティレコードの更新値の作成
をまとめて実行することにより高性能化を実現してい
る。
には、ディスクアレイにおけるライト処理を効率化する
ために動的マッピングという技術が開示されている。こ
の技術は、ライト処理が発生するとそのデータレコード
を書き込むディスク上の位置を変えるというものであ
る。具体的には、ライトされたデータだけで、パリティ
グループを構成し、これらのデータからパリティデータ
を作成し、ディスクアレイを構成するディスクに書き込
みを行うというものである。ただし、以上の処理を実行
するためには、パリティグループ全体のデータストライ
プを空き領域にする必要がある。
E93−45(茂木他:仮想ストライピングによるRA
ID5型ディスクアレイの性能評価、1993年 9月、信学
会技報Vol.25-No.251、pp.69-75、以下、茂木論文と呼
ぶ)ではさらに効率的な技術が開示されている。本論文
では、パリティグループそのもののディスク上の位置を
動的に変更するために、より効率的にパリティグループ
全体のデータストライプを空き領域にすることができ
る。
は、パリティレコードの更新に必要な情報をパリティレ
コードを格納したディスク装置に転送し、ディスク装置
側でパリティレコードの更新値を作成することで、デー
タ更新時に発生する制御装置とディスク装置との間のデ
ータ転送の回数を削減し、ディスクアレイシステムの高
性能化を図る技術が開示されている。
は、ディスク装置上のデータストライプ、パリティスト
ライプに、空き状態のレコードを適当な割合で確保し、
パリティレコードの更新値を元々の場所ではなく、空き
領域に書き込むことにより、書き込み時間を短縮する技
術が開示されている。ここに示されている空き領域は、
先の、PCT WO 91/20025号や、茂木論文
で開示されている空き領域とは異なるものである。特開
平4−230512号公報に開示される技術では、パリ
ティレコードの更新値の生成が終了した後、パリティレ
コード、データレコードの更新値を書き込む際、元々の
場所でなく、空き領域に、更新値を書き込む。これによ
り、パリティレコードの元々の格納場所は、空き領域に
なる。これに対して、PCT WO 91/20025
号、あるいは茂木論文で開示されている技術では、パリ
ティグループ全体が空き領域になっている領域に対し、
新たなライトデータだけで新たにパリティグループを構
成して、そのパリティグループ全体をディスク装置に書
き込む。元々データを格納していた場所は空き領域とし
て管理する。したがって、両者の間には、次の2つの点
で本質的な相違がある。
術では、空き領域の選択がパリティレコードの更新値の
生成後であるのに対し、PCT WO 91/2002
5、あるいは茂木論文の技術では、パリティレコードの
更新値の生成の前、すなわち、書き込みを行うパリティ
グループを選択した時に、ディスク装置のどの領域にデ
ータを書き込むのかが、決まったことになる。
術では、1つのパリティグループを構成するデータレコ
ード、パリティレコードは変化しない。他方、PCT
WO91/20025、あるいは茂木論文の技術では、
1つのパリティグループを構成するデータレコードの集
合は動的に変化する。
2号公報に開示された技術では、ディスクアレイを制御
する制御装置が、ディスク装置に、データレコードの読
み込み要求、書き込み要求、パリティレコードの読み込
み要求、書き込み要求と計4回の要求を発行する。さら
に、パリティレコードの更新値も制御装置が生成する。
例えば、制御装置には、更新前のデータレコードと更新
後のデータレコードが用意されている状況で、ディスク
装置内で、記憶媒体から更新前のパリティレコードの読
み込みが完了したとする。当然、ディスク装置は、媒体
から読み込んだ更新前のパリティレコードを送ろうとす
る。しかし、通常、制御装置とディスク装置の間のデー
タ転送路は、他のディスク装置と共有されていることが
多いため、データ転送路が占有されていて、直ちに、更
新前のパリティレコードを送る処理には入れない可能性
がある。また、制御装置に更新前のパリティレコードが
送られてから、パリティレコードの更新値を作成処理が
開始するまでにも、制御装置が別の仕事を行っているた
め、時間を要する可能性がある。さらに、パリティレコ
ードの更新値の生成が完了した後、この値をディスク装
置に送るまでにも、ディスク装置、データ転送路の共有
資源を確保する必要があり、競合時には待ち時間が発生
する可能性がある。
ードの更新値を作成し、この更新値をディスク装置に送
るという方法をとったのでは、更新前の値を読み出して
から、更新後の値を書き込むまでに、かなりの時間を要
する可能性が充分あることになる。このため、更新前の
値のすぐ後に、空いたレコードが存在しても、更新後の
値がディスク装置に送られてくる前に、ヘッドが空いた
レコード上を、通過してしまうので、性能向上効果が得
られにくくなる。このため、特開平4−230512号
公報の技術では、原理的に、読み出した直後の領域が空
き領域であっても、その領域に、データレコードの更新
値を書き込むことは実質的に困難である。
ディスク装置に、パリティレコードの更新値を作成する
機能をもたせることで、制御装置の負荷はある程度分散
させることができる。しかし、制御装置の負荷を軽減す
るという点では、検討の余地を残していた。また、パリ
ティレコードの更新後の値は、更新前の値を読み出した
場所に書き込まれるため、更新前の値を読み出してか
ら、更新後の値を書き込むまでに、最低でもディスク1
回転分の時間を必要としていた。
時に、その更新前の値を読み出してから、更新後の値を
書き込むまでの時間を短縮し、記憶装置サブシステムの
性能向上を図ることにある。
ードの更新に伴う制御装置の負荷を軽減することにあ
る。
に、本発明の記憶装置サブシステムでは、制御装置は、
更新前のデータレコードと更新後のデータレコードから
生成したパリティレコードの更新値を得るための中間値
をディスク装置に送る。ディスク装置では、更新前のパ
リティレコードを読み出すと、制御装置から受け取った
中間値と読み出した更新前のパリティレコードの値か
ら、パリティレコードの更新値を生成する。デイスク装
置内部では、とくに競合資源がないため、すぐにこの処
理の実行に入れる。さらに、パリティレコードの更新値
を生成した後、空いた領域があれば、その領域に、生成
したパリティレコードの更新値を書き込む。具体的に
は、例えば、パリティレコードを読み出しながら、パリ
ティレコードの更新値を生成する回路をディスク装置内
に設ける。これにより、更新前のパリティレコードの読
み出しを行った、直後の領域に書き込みを行うことがで
き、更新前の値を読み出してから、更新後の値を書き込
むまでの時間を短縮することができる。
置は、ディスク装置に、データレコードの更新値を送
る。ディスク装置は、更新前のデータレコードを読み出
し、空いた領域に、データレコードの更新値を書き込
む。この場合も、特に競合資源はないため、空き領域が
あれば、読み出した直後の領域に、データレコードの更
新値を書き込むことができる。したがって、この場合
も、更新前の値を読み出してから、更新後の値を書き込
むまでの時間を短縮することができる。
値を読み出してから、更新後の値を書き込むまでに必要
な処理を実行させることにより、極めて短時間で更新値
を書き込むことができる。
発明の記憶装置サブシステムは、制御装置が、処理装置
からライト要求を受けると、更新後のデータとともに更
新前のデータをパリティレコードを格納するディスク装
置に送る。パリティレコードを格納するディスク装置で
は、更新前のパリティレコードを読み出し、制御装置か
ら受け取った更新前後のデータ、及び読み出した更新前
のパリティレコードの値からパリティレコードの更新値
を作成する。
タをパリティレコードを格納するディスク装置に転送し
てディスク装置側でパリティレコードの更新値を作成す
ることで、制御装置の負荷をより軽減することができ
る。
き、実施例に従い説明する。
ムの一実施例における構成を示すブロック図である。計
算機システムは、処理装置1300、制御装置130
5、および、複数台のディスク装置1304により構成
する。処理装置1300は、CPU1301、主記憶1
302、および、チャネル1303により構成される。
制御装置1305は、処理装置1300からのリード/
ライト要求にしたがって、処理装置1300と、ディス
ク装置1304の間で、転送処理を実行する。制御装置
1305は、1つ以上のディスクアレイ制御プロセッサ
1310、キャッシュメモリ(以下、単にキャッシュと
略す)1308、ディレクトリ1309、不揮発性メモ
リ1400、および、不揮発性メモリ管理情報1401
を含む。キャッシュ1308は、ディスク装置1304
の中のアクセス頻度の高いデータをロード格納する。デ
ィレクトリ1309には、キャッシュ1308の管理情
報を格納する。不揮発性メモリ1400は、不揮発の媒
体であり、キャッシュ1308と同様に、ディスク装置
1304の中のアクセス頻度の高いデータをロードして
おく。不揮発性メモリ管理情報1401も不揮発の媒体
であり、不揮発性メモリ1400の管理情報を格納す
る。なお、キャッシュ1308や、ディレクトリ130
9が不揮発化されていてもよい。さらに、制御装置13
05が、不揮発性メモリ1400、および、不揮発性メ
モリ管理情報1401を含まなくてもよい。ディスクア
レイ制御プロセッサ1310は、制御装置1305内
で、処理装置1300からのリード/ライト要求を受け
取り、キャッシュ1308等を利用し、処理装置130
0とディスク装置1304の間でデータの転送処理を実
行する機能をもつ。
らのライト要求を、キャッシュ1308、あるいは、キ
ャッシュ1308と不揮発性メモリ1400にデータを
格納した段階で完了させる。ディスク装置1304への
データの書き込みは、後から、制御装置1305が実行
する。この処理をライトアフタ処理と呼ぶ。
ロセッサ1311、記憶媒体1312、演算回路131
4、読み書きヘッド1315を含む。ディスク制御プロ
セッサ1311は、読み書きヘッド1315を利用し
て、記憶媒体1312と制御装置1305の間のデータ
転送を制御する。バッファ1313には、記憶媒体13
12と制御装置1305の間で転送されるデータ等を格
納する。演算回路1314は、記憶媒体1312から読
み出したデータに所定の演算を施すために使用する。な
お、演算をディスク制御プロセッサ1311により実行
することで、演算回路1314を不要とすることができ
る。
304との間で、リード/ライトするデータの単位は、
レコード1701と呼ばれる。図3は、本実施例におけ
るレコードの考え方をまとめたものである。処理装置1
300が制御装置との間でリード/ライトするレコード
をデータレコード1700と呼ぶ。一方、パリティレコ
ード1702は、ディスク装置1304に障害が発生
し、データレコード1700の内容が消失した時、その
消失した内容を回復する処理に用いるレコードである。
この場合、データレコード1700の値が変更される
と、これに対応して、パリティレコード1702の内容
も変更する必要が生ずる。なお、ここでは、m個のデー
タレコード1700から、n個のパリティレコード17
02を生成するものとする。これにより、n個のデータ
レコード1700の内容が失われても回復可能である。
ードを物理レコードと呼ぶ。本実施例においては、ディ
スク装置1304上に格納されている物理レコードに
は、物理データレコード1500、物理パリティレコー
ド1501、空きレコード1503の3種類が存在す
る。物理データレコード1500は、データレコード1
700の内容を格納した物理レコード1502である。
一方、物理パリティレコード1501は、パリティレコ
ード1702の内容を格納する。本実施例では、性能向
上のために、ディスク装置1304において、空いた状
態の領域が必要になる。空きレコード1503は、その
ための物理レコードである。
アレイでのパリティグループの構成である。本実施例で
は、新しい値をディスク装置1304に書き込む際、そ
れまで値を格納していた物理データレコード1500や
物理パリティレコード1501ではなく、空きレコード
1503に格納する。ただし、性能向上のためには、も
ともとの物理データレコード1500や物理パリティレ
コード1501の近くの空きレコード1503を選択す
る必要がある。以上から、本実施例では、論理ストライ
プと物理ストライプ1612という考え方を用いる。な
お、論理ストライプと物理ストライプをあわせてストラ
イプと呼ぶ。論理ストライプは、データレコード170
0、あるいは、パリティレコード1702の集合であ
る。データレコード1700の集合の方を、論理データ
ストライプ1613と呼び、パリティレコード1702
の集合の方を、論理パリティストライプ1614と呼
ぶ。物理ストライプ1612には、物理データストライ
プ1615、物理パリティストライプ1616がある。
物理データストライプ1615は、物理データレコード
1500と空きレコード1503の集合であり、物理パ
リティストライプ1616は、物理パリティレコード1
501と空きレコード1503の集合である。論理スト
ライプと物理ストライプは1対1に対応する。データレ
コード1700を新たに空きレコード1503に格納す
る場合、そのデータレコード1700を含む論理ストラ
イプに対応する物理ストライプ内の空きレコード150
3を選択する。これは、パリティレコード1702につ
いても同様である。新たに値を格納された物理レコード
は、物理データレコード1500、あるいは、物理パリ
ティレコード1501となり、それまで物理データレコ
ード1500、あるいは、物理パリティレコード150
1だった物理レコードが空きレコード1503となる。
プ1613とn個の論理パリティストライプ1614
が、論理ストライプグループ1617を構成する。同様
に、m個の物理データストライプ1615とn個の物理
パリティストライプ1616が、物理ストライプグルー
プ1618を構成する。なお、同一物理ストライプグル
ープ1618内の物理ストライプは、異なったディスク
装置1304に割り当てる。論理ストライプグループ1
617と物理ストライプグループ1618をあわせてス
トライプグループと呼ぶ。図4では、各物理ストライプ
の長さは等しい。確かに、複数の物理パリティストライ
プ1615を常に同一のディスク装置1304に格納す
る場合には、各物理ストライプの長さは等しくする必要
がある。しかし、物理パリティストライプ1616を配
置するディスク装置を循環させる場合、図5に示すよう
に、物理パリティストライプ1616と物理データスト
ライプ1615の長さを変えても問題ない。さらに、物
理パリティストライプ1616と物理データストライプ
1615のどちらか一方は、空きレコード1503をま
ったく設けなくともよい。空きレコード1503をまっ
たく設けない場合、データレコード1700、パリティ
レコード1702は常に同じ物理レコードに値を書き込
むことになる。物理パリティストライプ1616と物理
データストライプ1615の両方に、空きレコード15
03をまったく設けないとすると本発明の意味がなくな
るため、少なくとも物理パリティストライプ1616と
物理データストライプ1615のどちらか一方は、空き
レコード1503をもつものとする。
の概要を表す機能ブロック図である。
ータレコード1700の更新値、データレコード170
0の更新前の値、および、パリティレコード1701の
更新前の値により、作成することができる。
110は、処理装置1300からライト要求を受け付
け、当該ライト要求において受け取ったデータレコード
1700の更新値を、更新後データ100として、キャ
ッシュ1308、不揮発メモリ1400に格納する。格
納が完了すると、制御装置1305は、当該ライト要求
の完了を処理装置に報告する。なお、本発明は、以下の
処理を、当該ライト要求の完了を報告する前に実行して
も有効である。
ージ部111とディスク装置1304内のデータ書き込
み部112の処理について説明する。データデステージ
部111は、データレコード1700の更新前の値であ
る更新前データ101がキャッシュ1308に存在する
かチェックする。存在する場合、更新前データ101と
更新後データ100からパリティレコードを作成するた
めの中間値、すなわち、パリティ中間値102を作成
し、キャッシュ1308、不揮発メモリ1400に格納
する。この後、データデステージ部111は、更新後デ
ータ100をディスク装置1304に書き込むよう、要
求を発行する。物理データストライプ1615が空きレ
コード1503を含む場合、ディスク装置1304内の
データ書き込み部112は、更新後データ100は、も
ともと割り当てられていた物理データレコード1500
か、空きレコード1503に書き込めばよいことにな
る。これにより、ディスク装置1304のアクセス時間
を短縮させることができる。
8に存在しない場合、データデステージ部111は、デ
ィスク装置1304に対し、更新前データ101に対応
する物理データレコード1500から更新前データ10
1を読み出し、さらに、更新後データ100を、空きレ
コード1503に書き込むよう要求する。ディスク装置
1304内のデータ書き込み部112は、更新後データ
100を任意の空きレコード1503に書き込めるた
め、ディスク装置1304のアクセス時間を短縮させる
ことができる。さらに、データ書き込み部112は、更
新前データ101と更新後データ100からパリティ中
間値102を作成し、パリティ中間値102を制御装置
1305に送る。制御装置1305のデータデステージ
部111は、受け取ったパリティ中間値102をキャッ
シュ1308、不揮発メモリ1400に格納する。以上
は、ディスク装置1304が、パリティ中間値102を
作成する場合の説明であるが、パリティ中間値102
は、制御装置1305が作成してもよい。この場合、デ
ィスク装置1304のデータ書き込み部111は、読み
出した更新前データ101を制御装置1304に送る。
制御装置1305のデータデステージ部111は、更新
前データ101と更新後データ100とからパリティ中
間値102を作成し、キャッシュ1308、不揮発メモ
リ1400に格納する。
テージ部113とディスク装置1304内のパリティ書
き込み部114の処理について説明する。パリティデス
テージ部113は、パリティレコード1700の更新前
の値である更新前パリティ103がキャッシュ1308
に存在するかチェックする。存在する場合、更新前パリ
ティ103とパリティ中間値102パリティレコード1
702の更新値、すなわち、更新後パリティ104を作
成し、キャッシュ1308、不揮発メモリ1400に格
納する。この後、パリティデステージ部113は、更新
後パリティ104をディスク装置1304に書き込むよ
う、要求を発行する。物理パリティストライプ1616
が空きレコード1503を含む場合、ディスク装置13
04内のパリティ書き込み部114は、更新後パリティ
104は、もともと割り当てられていた物理パリティレ
コード1501か、空きレコード1503に書き込めば
よいことになる。これにより、ディスク装置1304の
アクセス時間を短縮させることができる。
08に存在しない場合、パリティデステージ部113
は、ディスク装置1304に対し、更新前パリティ10
3に対応する物理パリティレコード1501から更新前
パリティ103を読み出し、読み出した更新前パリティ
103と制御装置1305から送ったパリティ中間値1
02から更新後パリティ104を作成し、さらに、更新
後パリティ104を、空きレコード1503、あるい
は、もともとの更新前パリティ101に対応する物理デ
ータレコードに書き込むよう要求する。ディスク装置1
304内のデータ書き込み部112は、更新後パリティ
104を、任意の空きレコード1503に書き込めるた
め、ディスク装置1304のアクセス時間を短縮させる
ことができる。
る。キャッシュ1308は、複数のセグメント2000
に分割されている。各セグメント2000には、論理デ
ータストライプ1613、あるいは、論理パリティスト
ライプ1614が格納される。セグメントポインタ20
01は、未割り当て状態にあるセグメント2000を結
合する。不揮発メモリ1400の構造は、キャッシュ1
308と同様でよいため、説明を省略する。
ある。ディレクトリ1309は、マッピング情報210
0、空きレコードビットマップ2101、キャッシュ割
当情報2102、セグメント管理情報2103、空きセ
グメントキューポインタ2104、空きセグメント管理
情報キューポインタ2105から構成される。なお、セ
グメント管理情報2103は、キャッシュ1308内の
セグメント2000の数だけ存在する。ただし、後述す
るように、セグメント2000に1対1に対応するわけ
ではない。なお、マッピング情報2100、空きレコー
ドビットマップ2101は、ディスク装置1304にも
つ場合もあり、この時には、制御装置1305は、マッ
ピング情報2100、空きレコードビットマップ210
1を持つ必要はない。以下、各情報を詳細に説明する。
なお、不揮発メモリ管理情報1401の構造は、ディレ
クトリ1309と同様であるため、詳細な説明は行わな
い。
である。マッピング情報2100は、論理データレコー
ド1700、及び、論理パリティレコード1702が、
どの物理データレコード1500、あるいは、どの物理
パリティレコード1501に割り当ててあるかを表して
いる。レコードエントリ2200は、データレコード1
700、あるいは、パリティレコード1702に対応し
て存在する情報である。レコードエントリ2200に
は、対応するレコードが割り当ててある物理レコードの
物理レコードアドレスが設定される。
1の構造図である。空きレコード状態2300は、物理
データレコード、及び、物理パリティレコードに対応し
て、その物理レコードが、空きレコード1503である
かそうでないかを表す。
構造図である。論理ストライプ(論理データストライプ
1613、及び、論理パリティストライプ1614)が
キャッシュ1308に格納されているかどうかを表す。
ストライプ割当ポインタ2400は、論理ストライプ単
位に対応して設けられる情報である。ストライプ割当ポ
インタ2400は、対応する論理ストライプ1611が
キャッシュ1308に格納されていれば、そのキャッシ
ュセグメントを管理するセグメント管理情報2103を
ポイントする。対応する論理ストライプ1611がキャ
ッシュ1308に格納されていなければヌル値となる。
中で本発明に関係した情報を表したものである。
ャッシュ内のセグメント2000の1つをポイントする
ポインタである。そのセグメント管理情報2103が、
論理データストライプのセグメント管理情報2103の
場合、ポイントされるセグメント2000には、パリテ
ィレコード1702の更新値を作成していないデータレ
コード1700の値が格納されている。また、そのセグ
メント管理情報2103が、論理パリティストライプ1
612のセグメント管理情報2103である場合、更新
前セグメントポインタ2500は、パリティレコード1
702の更新値を作成する際に生成されるパリティレコ
ードの中間値102を格納するセグメント2000をポ
イントする。
ッシュ内のセグメント2000の1つをポイントするポ
インタである。更新後セグメントポインタ2501は、
そのセグメント管理情報2103が論理データストライ
プ1611のセグメント管理情報2103である場合、
新たに作成されたパリティレコード1702の更新値を
格納したセグメント2000をポイントしている。ま
た、そのセグメント管理情報2103が物理パリティレ
コード1501のセグメント管理情報2103の場合、
更新前パリティ103、更新後パリティ104の値を、
本ポインタが示すセグメント2200に格納する。
論理ストライプ内のレコード(データレコード、あるい
は、パリティレコード)のうち、更新前セグメントポイ
ンタ2500がポイントするセグメント2000の中
に、値が格納されているレコードを示すためのビットマ
ップを保持している。
対応する論理ストライプ内のレコードのうち、更新前セ
グメントポインタ2500がポイントするセグメント2
000の中に、その値がまだディスク装置1304に書
き込まれていないデータレコード1700、あるいは、
パリティレコード1702を表すビットマップである。
論理ストライプ内のレコードのうち、更新後セグメント
ポインタ2501がポイントするセグメント2000の
中に、値が格納されているデータレコード1700、あ
るいは、パリティレコード1702を表すビットマップ
である。
更新後セグメントポインタ2501でポイントするセグ
メント2200に格納されているデータレコード170
0、あるいは、パリティレコード1702の中で、その
値がまだディスク装置1304に書き込まれていないデ
ータレコード1700、あるいは、パリティレコード1
702を表すビットマップである。
管理情報2103が使用中であることを表すふらぐであ
り、空きポインタ2507は、空き状態にあるセグメン
ト管理情報2103を相互に結合するためのポインタで
ある。
グメント管理情報キューの構造図である。図に示すよう
に、空きセグメントキューは、空きセグメントキューポ
インタ2104を先頭として、空き状態にあるセグメン
ト2000をそのセグメントポインタ2001でチェー
ン状に結合して構成されている。また、空きセグメント
管理情報キューは、空きセグメント管理情報キューポイ
ンタ2105を先頭として、空き状態にあるセグメント
管理情報2103をその空きポインタ2507でチェー
ン状に結合して構成されている。
ファ1313の構造である。バッファ1313は、デー
タ格納領域1200、マッピング情報2100、空きレ
コードビットマップ2101から構成される。データ格
納領域1200には、記憶媒体1312と制御装置13
05の間で転送されるデータを格納する。マッピング情
報2100、空きレコードビットマップ2101は、制
御装置1305に含まれる場合、バッファ1313には
もつ必要がない。なお、マッピング情報2100、空き
レコードビットマップ2101は、バッファ1313に
含まれる場合、バッファ1313は不揮発化しておくこ
とが望ましい。また、バッファ1313に含まれるマッ
ピング情報2100、空きレコードビットマップ210
1は、当該ディスク装置1304に含まれる論理ストラ
イプ、物理ストライプの情報である。なお、マッピング
情報2100、空きレコードビットマップ2101の構
造自体は、制御装置1305上に含む場合(図8、図
9)と同様であるため説明を省略する。
求受付部110の処理フローである。
00からライト要求を受け付けた時、動作を開始する。
ステップ1000では、当該ライト要求において受け取
ったデータレコード1700に、キャッシュ1308、
あるいは、不揮発メモリ1400が割り当てられている
かどうかを、ディレクトリ1309、不揮発メモリ管理
情報1401のセグメント割当情報2102を参照して
確認する。割り当てられている場合、ステップ1002
にジャンプする。割り当てられていない場合、ステップ
1001でセグメント2000を割り当てる。具体的に
は、セグメント管理情報2103の更新前セグメントポ
インタ2500が、割り当てたセグメント2000を示
すようにする。ステップ1002では、ライト要求受付
部110は、処理装置1300からライトデータ、すな
わち、更新後データ104を受付け、キャッシュ130
8、および、不揮発メモリ1400に、更新後データ1
04格納する。このとき、ディレクトリ1309、不揮
発メモリ管理情報1401のセグメント割当情報210
2の中の必要な情報を更新する。具体的には、更新前ビ
ットマップ2503の対応するビットをオンにする。以
上で、動作を終了する。
ージ部111の処理フローを図15に示す。データデス
テージ部111は、ステップ1100で、デステージす
べきデータレコード1700があるかどうかを、セグメ
ント管理情報2103をサーチして見つける。具体的に
は、更新前ビットマップ2503がオンの論理データス
トライプ1611に割り当てたセグメント管理情報21
03を見つける。見つかった場合、以下の処理を実行す
る。
ージ部111は、この論理データストライプ1613に
対応する論理パリティストライプ1614にキャッシュ
1308、不揮発メモリ1400が割り当てられている
か、セグメント割当情報2103を参照して、チェック
する。割り当てられている場合、ステップ1103にジ
ャンプする。割り当てられていない場合、ステップ11
02で、キャッシュ1308、不揮発メモリ1400の
セグメント2000を割り当てる。
ップ1103で、データレコード1700の更新前の
値、すなわち、更新前データ101が、キャッシュ13
08に存在するかチェックする。具体的には、更新前ビ
ットマップ2503がオンのデータレコード1700に
対応する更新後ビットマップ2504がオンになってい
るかチェックする。存在しない場合、ステップ1107
にジャンプする。存在する場合、ステップ1104で、
パリティ中間値作成ルーチンをコールする。
テップ1105で、更新後データ100をディスク装置
1304に書き込むよう、要求を発行する。ここで、制
御装置1305とディスク装置1304の機能分担によ
って、要求の具体的な内容が異なってくる。まず、第1
に、論理ストライプと物理ストライプの変換(データレ
コード1700、パリティレコード1702から、物理
データレコード1500、物理パリティレコード150
2への変換)をディスク装置1304が実行する場合で
ある。この場合、図16に示すように、データデステー
ジ部111は、書き込みを行うデータレコード1701
を指定し、ディスク装置1304側で、書き込みを行う
物理レコード1502を決定する。第2に、論理ストラ
イプと物理ストライプの変換を、制御装置1305が実
行する場合、さらに、2つの方法が考えられる。図17
に示す方法は、制御装置1305が、物理ストライプの
中のすべての空きレコード1503と元々当該データレ
コード1700が格納されていた物理レコードを通知
し、ディスク装置1304が指定された物理レコードの
中で最初に見つけた物理レコードに、受け取ったデータ
を書き込むものである。この場合、ディスク装置130
4は、実際に書き込みを行った物理レコードを制御装置
1305に報告する。一方、制御装置1305は受け取
った情報にしたがって、マッピング情報2100を変更
することになる。また、図18に示す方法は、制御装置
1305が、更新後データ103を書き込む物理レコー
ドを直接指定する方法である。この場合、ディスク装置
1304は、指定された物理レコードに受け取ったデー
タを書き込むだけである。したがって、書き込み時間を
短縮するには、ディスク装置1304の読み書きヘッド
1315の位置を制御装置1305が認識して、どの物
理レコードに書き込むのが、書き込み時間を短縮できる
か計算する必要がある。このため、制御装置1305
は、図18に示すように、ディスク装置1304から、
読み書きヘッド1315の位置を通知してもらうよう要
求する。ディスク装置1304は、要求にしたがって、
この位置を制御装置1305に通知する。
コード1700の内容を物理データレコード1500に
書き込んでいるだけである。したがって、図4に示すよ
うなパリティレコード1702を含まない場合にも適用
可能である。パリティレコード1702を含まない場合
には、ストライプ1610の構成は図35に示すような
構成となる。さらに、データレコード1700の内容を
2つ以上の物理レコード1501に書き込んだ場合に
も、図16〜図18に示した処理は、適用可能である。
この場合のストライプ1610の構成は図36に示すよ
うな構成となる。
ステージ要求の完了を待つため、一度処理を完了する。
置1304からのデータの書き込み完了通知を受け取る
と再び処理を開始する。ステップ1106で、対応する
セグメント管理情報2103の更新後ダーティセグメン
ト2505をオフする。なお、マッピング情報2100
を制御装置1305で管理している場合、書き込みを行
った物理レコード1502にしたがって、マッピング情
報2100を更新する。以上で、処理を完了する。
データ101が、キャッシュ1308に存在しない場合
は、ステップ1107で、更新前データ101を格納す
るためのセグメント2000が割り当てられていれるか
どうかをチェックし、割り当てられていない場合、セグ
メント2000を割り当てる。
ップ1108で、ディスク装置1304に、更新前デー
タ101に対応する物理データレコード1500から更
新前データ101を読み出し、さらに、更新後データ1
00を、空きレコード1503に書き込むよう要求す
る。この場合も、制御装置1305とディスク装置13
04の機能分担によって、要求の具体的な内容が異なっ
てくる。まず、第1に、論理ストライプと物理ストライ
プの変換をディスク装置1305が実行する場合であ
る。この場合、図19に示すように、データデステージ
部111は、読み出しと書き込みを行うデータレコード
1700を指定するだけである。ディスク装置1304
は、指定されたデータレコード1700がどの物理レコ
ードに対応しているか認識し、さらに、どの物理レコー
ドが空きレコード1503になっているか把握する。
の変換を、制御装置1305が実行する場合である。こ
の場合は、さらに、3つの方法が考えられる。まず、図
20に示す方法は、制御装置1305が、物理ストライ
プの中のすべての空きレコード1503を通知する。デ
ィスク装置1304が最初に見つけた空きレコード15
03に、受け取ったデータを書き込み、指定を受けた物
理レコードを読み出す。残りの2つの方法は、制御装置
1305が、データをどの物理レコードに書き込むかを
直接指定する方法である。図21に示す方法は、制御装
置1305が、書き込み時間を短縮するために、ディス
ク装置1304の読み書きヘッド1415の位置を制御
装置1305が認識して、どの物理レコード1502に
書き込むのが、書き込み時間を短縮できるか計算する。
このため、制御装置1305は、図21に示すように、
ディスク装置1304から、読み書きヘッド1415の
位置を通知してもらうよう要求する。ディスク装置13
04は、要求にしたがって、この位置を制御装置130
5に通知する。
1500の読み出しを最初に実行し、次に、空きレコー
ド1503の書き込みを実行する場合である。この場合
には、物理データレコード1500の後にある空きレコ
ード1503の中で、最も近くにある空きレコード15
03を、データを書き込むべき物理レコードとして選択
する。
ィスク装置1304からの報告を待つため、一度処理を
完了する。
報告を受け取ると、データデステージ部111は再び処
理を開始する。ステップ1110で、データデステージ
部111は、ディスク装置1304から、読み出した物
理データレコード1500を受け取り、セグメント20
00に格納する。この後、ステップ1109で、ディス
ク装置1304から、デステージ要求の完了報告を受
取、対応するセグメント管理情報2103の更新前ダー
ティセグメント2503をオフする。さらに、この後、
セグメント管理情報2102の中の対応する更新後ビッ
トマップ2504をセットする。なお、マッピング情報
2100を制御装置1305で管理している場合、書き
込みを行った物理レコード1502にしたがって、マッ
ピング情報2100を更新する。
部111は、パリティ中間値作成ルーチンをコールす
る。以上で、処理を完了する。
処理フローである。ステップ2300では、すでに、パ
リティ中間値102が作成されているかどうかをチェッ
クする。具体的には、論理パリティストライプ1614
に割り当てたセグメント管理情報2103の中の対応す
る更新前ビットマップ2503がオンになっているかチ
ェックする。作成ずみの場合、ステップ2303へジャ
ンプする。ステップ2301では、更新前データ101
と更新後データ100からパリティ中間値102を作成
し、キャッシュ1308、不揮発メモリ1400内の、
論理パリティストライプ1614に割り当てたセグメン
ト2000に格納する。ステップ2302では、論理パ
リティストライプ1614に割り当てたセグメント管理
情報2103の中の対応する更新前ビットマップ250
2、更新前ダーティビットマップ2503をオンにす
る。この後、ステップ2304にジャンプする。
11は、更新前データ101、更新後データ100、さ
らに作成済みのパリティ中間値103とから、新たなパ
リティ中間値103を作成し、キャッシュ1308、不
揮発メモリ1400内の、論理パリティストライプ16
14に割り当てたセグメント2000に格納する。
イプ1611に割り当てたセグメント管理情報2103
の中の更新前セグメントポインタ2500が示すセグメ
ント2000内の更新前ビットマップ2502がオンの
データレコード1700の内容を、更新後セグメントポ
インタ2501が示すセグメント2000の対応位置に
コピーする。さらに、更新前ビットマップ2502がオ
ンのビットを、更新後ビットマップ2504にコピーす
る。
イプ1611に割り当てたセグメント管理情報2103
の中の論理データストライプ更新前ダーティビットマッ
プ2503がオンのビットを、更新後ダーティビットマ
ップ2505にコピーする。
イプ1611に割り当てたセグメント管理情報2103
の中の更新前セグメントポインタ2500が示すセグメ
ント2000を空き状態にする。加えて、更新前ビット
マップ2502、および、更新前ダーティビットマップ
2503をオフにし、更新前セグメントポインタ250
0をヌルにする。
ャッシュ1308、ディレクトリ1309だけでなく、
不揮発メモリ1400、不揮発メモリ管理情報1401
についても、同様に実行される。
タ書き込み部112の処理フローである。まず、ステッ
プ2400では、制御装置1305から受け取った情報
を解析する。マッピング情報2100をディスク装置1
304で管理する場合には、関係する論理ストライプの
中から、空きレコード1503がどれかを認識する。ス
テップ2401では、制御装置1305から書き込みを
行うデータを受け取る。次に、ステップ2402で、読
み書きヘッド1413の位置付けを実行する。ステップ
2403では、読み書きヘッド1413が、どの物理レ
コード1502に位置付いたかを認識する。
1502が、読み出しを指定された物理レコード150
2であるか判断する。そうであれば、ステップ2408
へジャンプする。ステップ2405では、当該物理レコ
ード1502は書き込みを指定された物理レコード15
02、あるいは、書き込みを行ってよい物理レコード1
502か判断する。そうであれば、ステップ2410へ
ジャンプする。
が当該物理ストライプ1618に含まれるか判断する。
そうであれば、次の物理レコードの処理に入るため、ス
テップ2404にジャンプする。含まれない場合、ステ
ップ2408で、当該物理ストライプの最初の物理レコ
ードに位置付くよう、読み書きヘッド1413の位置付
けを実行する。この後、ステップ2403にジャンプす
る。
413が位置付いた物理レコードを読み出す。そして、
ステップ2409で、書き込みが完了したかをチェック
する。完了していない場合、ステップ2404にジャン
プする。完了している場合、ステップ2412へジャン
プする。
413が位置付いた物理レコードにライトデータを書き
込む。ステップ2411では、物理レコードの読み出し
を行う必要があるか判断し、読み出しの必要がまだ有れ
ば、ステップ2404へジャンプする。
02の読み出しを行ったかチェックし、読み出していれ
ば、物理レコード1502を制御装置1305に送る。
ステップ2413では、要求の完了を制御装置1305
に報告する。なお、ディスク装置1304がマッピング
情報を持つ場合、完了報告を返す前に、マッピング情報
2100を更新する。
ティ中間値102の作成機能を持たない場合の、データ
デステージ部111、データ書き込み部112の処理フ
ローである。図25、図26は、ディスク装置1304
側に、パリティ中間値102の作成機能を持った場合
の、データデステージ部111、データ書き込み部11
2の処理フローである。それぞれの処理フローで、図1
5、図23、図24の処理フローと同一の番号が付され
たステップは、それらにおける対応する処理と同じ処理
内容を持つ。以下、処理内容が異なる部分のみ説明を行
う。
ジ部111が、ディスク装置1304から、更新前デー
タ101ではなく、パリティ中間値102を受け取る。
この場合、ステップ2500で、作成ずみのパリティ中
間値102があるかチェックする。パリティ中間値がな
い場合、ステップ2502のキャッシュ1308、不揮
発性メモリ1400それぞれのパリティストライプ16
12に対応するセグメント2000に、パリティ中間値
102をコピーする。さらに、ステップ2504で、対
応する更新前ビットマップ2502と更新前ダーティビ
ットマップ2503をセットする。この後、ステップ2
304へジャンプする。ステップ2505では、ディス
ク装置1304から受け取ったパリティ中間値102と
作成済みのパリティ中間値102から、最新のパリティ
中間値102を作成し、キャッシュ1308、不揮発性
メモリ1400それぞれのパリティストライプ1612
に対応するセグメント2000の方に、パリティ中間値
102をコピーする。(ステップ2304〜2306
は、図23に示したとおりの内容であるため、説明を省
略する。)図26の処理フローでは、データ書き込み部
112が、ステップ2600で、読み出した物理レコー
ド1502と受け取ったライトデータとからパリティ中
間値102を作成し、ステップ2601で作成したパリ
ティ中間値102を制御装置1305に送る点のみが異
なる。
デステージ部113の処理フローである。パリティデス
テージ部113は、ステップ2700で、デステージす
べきパリティレコード1702があるかどうかを、セグ
メント管理情報2103をサーチして見つける。具体的
には、更新前ビットマップ2503がオンの論理パリテ
ィストライプ1612に割り当てたセグメント管理情報
2103を見つける。見つかった場合、以下の処理を実
行する。
113は、パリティレコード1702の更新前の値が、
キャッシュ1308に存在するかチェックする。具体的
には、更新前ビットマップ2503がオンのデータレコ
ード1700に対応する更新後ビットマップ2504が
オンになっているかチェックする。存在しない場合、ス
テップ2707にジャンプする。存在する場合、ステッ
プ2702以下のステップで、更新後パリティ104の
作成処理に入る。ステップ2702では、パリティ中間
値102と更新前パリティ103とから更新後パリティ
104を作成し、キャッシュ1308、不揮発性メモリ
1400のセグメント2000に格納する。ステップ2
703では、対応する更新前ビットマップ2502、更
新前ダーティビットマップ2504をオンにする。
ットマップ2503、更新前ビットマップ2502をオ
フする。ステップ2705では、更新前セグメントポイ
ンタ2500が示すセグメントを空き状態にし、更新前
セグメントポインタ2500をヌルにする。
ャッシュ1308、ディレクトリ1309だけでなく、
不揮発メモリ1400、不揮発メモリ管理情報1401
についても、同様に実行される。
ステップ2706で、更新後パリティ104をディスク
装置1304に書き込むよう、要求を発行する。この要
求は、データデステージ部111がディスク装置130
4に更新後データ101を書き込む際の内容と同様であ
る。具体的には、図16〜図18に示した更新後データ
のディスク装置への書き込み要求と同様に行われる。し
たがって、この要求に対しては、ディスク装置1304
のデータ書き込み部112が動作する。データ書き込み
部112の処理内容は、図24に示した処理フローの通
りである。
ステージ要求の完了を待つため、一度処理を完了する。
完了通知を受け取ると、パリティデステージ部113は
再び処理を開始する。ステップ2707で、対応するセ
グメント管理情報2103の更新後ダーティセグメント
2505をオフする。なお、マッピング情報2100を
制御装置1305で管理している場合、書き込みを行っ
た物理レコード1502にしたがって、マッピング情報
2100を更新する。以上で、処理を完了する。
パリティ103が、キャッシュ1308に存在しない場
合、ステップ2708で、更新前データ101を格納す
るためのセグメント2000が割り当てられていれるか
どうかをチェックし、割り当てられていない場合、セグ
メント2000を割り当てる。具体的には、更新後セグ
メントポインタ2501が割り当てたセグメント200
0を示すようにする。
テップ2708で、ディスク装置1304に、更新前パ
リティ103に対応する物理データレコード1500か
ら更新前データ101を読み出し、さらに、制御装置1
305から受け取ったパリティ中間値102と読み出し
た更新前パリティ103とから更新後パリティ104を
作成し、更新後パリティ104を空きレコード1503
に書き込むよう要求する。この場合も、制御装置130
5とディスク装置1304の機能分担によって、要求の
具体的な内容が異なってくる。まず、第1に、論理スト
ライプと物理ストライプの変換をディスク装置1305
を実行する場合である。この場合、図28に示すよう
に、パリティデステージ部113は、読み出しと書き込
みを行うパリティレコード1701を指定し、パリティ
中間値102を送信する。ディスク装置1304は、該
当する物理レコード1501から更新前パリティ102
を読み出し、更新後パリティ104を作成し、最初に見
つけた空きレコード1502に、更新後パリティ104
を書き込む。
トライプ1612の変換を、制御装置1305が実行す
る場合である。この場合は、さらに、2つの方法が考え
られる。まず、図29に示す方法は、制御装置1305
が、更新前パリティ103が格納された物理レコード、
すなわち、読み出しを行う物理レコードと、物理ストラ
イプ1613の中のすべての空きレコード1503、す
なわち、書き込みを行う1つ以上の物理レコードを通知
する。ディスク装置1304は、指定された物理レコー
ドから更新前パリティ103を読み出し、更新後パリテ
ィ104を作成し、指定された物理レコードの中で、最
初に見つけた物理レコードに、作成した更新後パリティ
104を書き込む。
305が、更新後パリティ104を書き込む物理レコー
ド1502を直接指定する。制御装置1305は、更新
前パリティ103を読み出してから、更新後パリティ1
04を作成する時間を考慮して、作成が完了してから、
最も近くにある空きレコード1503を、データを書き
込むべき物理レコードとして選択する。なお、ディスク
装置1304が、更新前パリティ103の読み込みと更
新後パリティ104の作成を並列に実行可能な場合、制
御装置1305は、読み出しを行う物理レコードの後で
最も近くにある空きレコード1503を選択すればよい
ことになる。パリティデステージ部113は、この後、
パリティ生成を含むデステージ要求の完了を待つため、
一度処理を完了する。
求完了通知を受け取ると、データデステージ部113は
再び処理を開始する。ステップ2710で、ディレクト
リ1309、不揮発メモリ管理情報の対応するセグメン
ト管理情報2103の更新前ダーティセグメント250
3、更新前ビットマップ2502をオフする。さらに、
ステップ2711で、更新前セグメントポインタ250
0が示すセグメントを空き状態にし、更新前セグメント
ポインタ2500をヌル値にする。なお、マッピング情
報2100を制御装置1305で管理している場合、書
き込みを行った物理レコード1502にしたがって、マ
ッピング情報2100を更新する。以上で、処理を完了
する。
ティ書き込み部114の処理フローである。まず、ステ
ップ3100では、制御装置1305から受け取った情
報を解析する。マッピング情報2100をディスク装置
1304で管理する場合は、ここで、関係する論理スト
ライプ1618の中から、空きレコード1503がどれ
かを認識する。そして、ステップ3101では、制御装
置1305からパリティ中間値102を受け取る。
13の位置付けを実行し、ステップ3103では、読み
書きヘッド1413が読み出しを行う物理レコードに位
置付つくまで待つ。
を読み出し、読み出した物理レコードとパリティ中間値
102とから更新後パリティ104を作成する。読み出
し処理と更新後パリティ104の作成処理は、並列に実
行可能である。
部114では、最初に見つけた空きレコード、制御装置
1305が指定した複数の物理レコードの中で最初に見
つけた物理レコード、あるいは、制御装置1305が指
定した物理レコードに、更新後パリティ104を書き込
む。この後、パリティ書き込み部114は、要求の完了
を制御装置1305に報告する。なお、ディスク装置1
304がマッピング情報を持つ場合、完了報告を返す前
に、マッピング情報2100を更新する。
ードの更新に伴うパリティレコードの更新の際、パリテ
ィの作成処理の一部をディスク装置側で実施するため、
制御装置の処理負荷をある程度軽減することができる。
さらに、各ディスク装置は、制御装置からの書き込み要
求に対して、制御装置から受け取った情報、あるいは、
自らが作成した情報を、読み書きヘッドがもっとも早く
位置付く空きレコードの書き込むので、制御装置から要
求に対する応答時間を短くすることができる。
装置の作成した更新後パリティを制御装置に送り、制御
装置内のキャッシュに格納するようにしてもよい。これ
により、次の更新後パリティの作成が、制御装置で可能
になり、ディスク装置から物理レコードを読みださず
に、更新後パリティを書き込むことが可能になる。
ド1702の更新を行う場合、制御装置1305から
は、パリティ中間値102を送っている。更新前データ
101がキャッシュ1308に存在する場合、パリティ
中間値102の計算は、制御装置1305が実行してい
る。制御装置1305の負荷を軽減するという観点から
は、この計算をディスク装置1305に分散した方が、
効果的である。図35は、このような観点からの動作概
要を表している。図では、制御装置1305内のパリテ
ィデステージ部112が、ディスク装置1305内のパ
リティ書き込み部114に、更新前データ101と更新
後データ100を送る。パリティデステージ部114で
は、更新前データ101と更新後データ100からパリ
ティ中間値102を作成する。この後、記憶媒体131
2から更新前パリティ103を読み出し、読み出した更
新前パリティ103とパリティ中間値102とから、更
新後パリティ104を生成して、記憶媒体1312に、
更新後パリティ104を書き込む。もちろん、パリティ
中間値102を生成せずに、更新前データ101と更新
後データ100と更新前パリティ103とから、直接、
更新後パリティ104を生成してもよい。
の具体的なインターフェイスについては、図28〜図3
0に示した考え方をそのまま用いることができる。これ
を、図36〜図39にまとめる。図28〜図30と図3
6〜図39の相違は、以下のとおりである。
304に送る情報が、パリティ中間値102から、更新
前データ101と更新後データ100に代わっている。
1304へ、更新前データ101と更新後データ100
の2つの情報を送る。ディスク装置1304では、更新
前データ101と更新後データ100から更新後パリテ
ィ104を生成して、記憶媒体1313に書き込む。こ
こで、この2つの情報を別々に送信したのでは、制御装
置1305とディスク装置1304の転送オーバヘッド
が増加する。このため、2つの情報を一括して送信する
ことが望ましい。また、制御装置1305がこれらの情
報を送信する際、指定する情報の長さは、更新前データ
101と更新後データ100を合わせた長さ、あるい
は、ディスク装置1305に書き込む更新後パリティ1
04の長さ(更新前データ101、更新後データ100
単独の長さ)とすることができる。なお、パリティレコ
ード1702の更新を行う際に、制御装置1304が、
パリティレコード1702を格納したディスク装置13
05に更新前データ101と更新後データ100を送る
という方式は、図39に示すような場合にも適用でき
る。具体的には、更新前パリティ103を読み出した物
理レコード1502に更新後パリティ104を必ず書き
込むという場合、すなわち、パリティレコード1702
を常に同じ物理レコード1502に格納する場合にであ
る。この場合の効果は、制御装置1305の負荷を軽減
するということである。
第2の実施例における計算機システムの構成を示すブロ
ック図である。第1の実施例における計算機システムと
の構成上の相違は、処理装置1300に直接ディスク装
置1304が接続されている点にある。本実施例では、
キャッシュ1308、ディレクトリ1304は、処理装
置1300の主記憶1302上に実現される。処理装置
1300の主記憶1302は、不揮発化されていても、
いなくてもかまわない。処理装置1300上では、応用
プログラム300と管理プログラム301が実行され
る。キャッシュ1308、ディレクトリ1309、およ
び、パリティグループ等の管理機能は、管理プログラム
301がもつ。また、本実施例では、データレコード1
700を、応用プログラム300が直接リード/ライト
するレコードことになる。すなわち、本実施例において
は、応用プログラム300が、第1の実施例における図
2の処理装置1300に、管理プログラム301が同じ
く図2の制御装置1305に相当すると考えることがで
きる。したがって、図1において、制御装置1305内
に設けられる各機能を実現する構成要素は、管理プログ
ラム301内に設けられることになる。このため、管理
プログラム301内に実現されている各構成要素の機能
については、ここでは、説明を省略する。また、詳細な
内容についても、第1の実施例で説明した内容をそのま
ま適用できるため、説明を省略する。
個のデータレコード1700に対し、n個のパリティレ
コード1702を作成する場合について述べた。しか
し、本発明は、パリティレコード1702がない場合に
ついても有効である。この場合、論理ストライプグルー
プ1617と物理ストライプグループの関係は、図33
に示すようになる。この時には、データレコードライト
部111は、更新後データ100をディスク装置130
4に書き込むよう要求することになる。ディスク装置1
304側では、更新前データ101が格納されている物
理データレコード1500か、当該物理データストライ
プ1615の中の空きレコード1503の中で、最初位
置ついた物理レコード1502に更新後データを書き込
む。これにより、ディスク装置1304のアクセス時間
を短縮することができる。制御装置1305とディスク
装置の間のインターフェイスについては、図17〜図1
8に示したいずれかに準じればよい。
ード1700を2つ以上の物理レコード1502に書き
込む場合も、本発明は有効である。図34は、この場合
の論理ストライプグループ1617と物理ストライプグ
ループの関係を示してある。この場合も、ディスク装置
1304側では、更新前データ101が格納されている
物理データレコード1500か、当該物理データストラ
イプ1615の中の空きレコード1503の中で、最初
位置ついた物理レコード1502に更新後データを書き
込む。これにより、ディスク装置1304のアクセス時
間を短縮することができる。制御装置1305とディス
ク装置の間のインターフェイスについても、図17〜図
18に示したいずれかを用いればよい。
イト処理を高速化するため、(1)ディスク装置の記憶
媒体上に適当な比率で空き領域を設け、(2)ディスク
装置側に、データの読み書き、冗長データの作成を一括
して実行する機能をもたせる。ディスクアレイにおいて
は、処理装置からライト要求を受け付けると、受け付け
たデータの書き込みだけでなく、新たな冗長データの作
成、および、この冗長データのディスク書き込みが発生
する。新たな冗長データの作成のためには、旧いデータ
と冗長データが必要であり、これらをディスク装置から
読み出す。つまり、合計で4回のディスクアクセスが必
要である。一方、本発明を適用すると、データの場合、
旧いデータの読み出しと新しいデータの書き込みがほと
んど1回のディスクアクセス程度の時間で実行できる。
同様に、古い冗長データの読み出しと新しい冗長データ
の書き込みがほとんど1回のディスクアクセス程度の時
間で実行できる。したがって、本発明によりライト処理
によるディスクアクセス数を半分程度に抑えることがで
きる。
表す機能ブロック図である。
ロック図である。
るための概念図である。
方を説明するための概念図である。
するための概念図である。
情報キューの構造図である。
図である。
場合における更新後データ書き込み時の制御装置とディ
スク装置の機能分担を説明する概念図である。
における更新後データ書き込み時の制御装置とディスク
装置の機能分担を説明する概念図である。
における更新後データ書き込み時の制御装置とディスク
装置の機能分担を説明する概念図である。
場合における更新前データ読み出し、及び更新後データ
書き込みの際の制御装置とディスク装置の機能分担を説
明する概念図である。
における更新前データ読み出し、及び更新後データ書き
込みの際の制御装置とディスク装置の機能分担を説明す
る概念図である。
における更新前データ読み出し、及び更新後データ書き
込みの際の制御装置とディスク装置の機能分担を説明す
る概念図である。
における更新前データ読み出し、及び更新後データ書き
込みの際の制御装置とディスク装置の機能分担を説明す
る概念図である。
である。
合のデータデステージ部の処理フロー図である。
合のデータ書き込み部の処理フロー図である。
る。
場合における更新前パリティ読み出し、更新後パリティ
作成、及び書き込みの際の制御装置とディスク装置の機
能分担を説明する概念図である。
における更新前パリティ読み出し、更新後パリティ作
成、及び書き込みの際の制御装置とディスク装置の機能
分担を説明する概念図である。
における更新前パリティ読み出し、更新後パリティ作
成、及び書き込みの際の制御装置とディスク装置の機能
分担を説明する概念図である。
ブロック図である。
構成を説明するための概念図である。
書き込んだ場合のストライプの構成を説明するための概
念図である。
機能ブロック図である。
置にマッピング機能を割り当てた場合の更新前パリティ
読み出し、更新後パリティ作成、及び書き込み実行時の
制御装置とディスク装置の機能分担を説明する概念図で
ある。
マッピング機能を割り当てた場合の更新前パリティ読み
出し、更新後パリティ作成、及び書き込みの実行時の制
御装置とディスク装置の機能分担を説明する概念図であ
る。
マッピング機能を割り当てた場合の更新前パリティ読み
出し、更新後パリティ作成、及び書き込みの実行時の制
御装置とディスク装置の機能分担を説明する概念図であ
る。
に更新後データ100と更新前データを送り、ディスク
装置1304が、パリティレコード1702を常に同じ
物理レコード1502に格納する場合の処理概念図であ
る。
05・・・制御装置、1308・・・キャッシュメモリ、13
09・・・ディレクトリ、1310・・・ディスクアレイ制御
プロセッサ、1311・・・ディスク制御プロセッサ、1
312・・・記憶媒体。
Claims (34)
- 【請求項1】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムに適した記憶装置であって、
前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納した状態と、前記通常データと前記冗長
データのいずれも格納していない状態とがあり、前記冗
長データを作成するための情報を前記制御装置から受け
取る手段と、前記冗長データを作成するための情報を前
記記憶媒体から読みだす手段と、前記冗長データを作成
するための情報から前記冗長データを作成する手段と、
作成した前記冗長データをそれまで前記通常データと前
記冗長データのいずれも格納していなかったレコードに
格納する手段とを有することを特徴とする記憶装置。 - 【請求項2】前記レコードが、前記通常データ又は前記
冗長データを格納した状態、及び前記通常データと前記
冗長データのいずれも格納していない状態のいずれの状
態にあるかを識別する情報を保持する手段を有すること
を特徴とする請求項1記載の記憶装置。 - 【請求項3】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納した状態と、前記通常データと前記冗長
データのいずれも格納していない状態とがあり、 前記制御装置は、前記レコードが、前記通常データ又は
前記冗長データを格納している状態、及び前記通常デー
タと前記冗長データのいずれも格納していない状態のい
ずれの状態にあるかを識別するための情報を保持する手
段と、前記冗長データを作成するための情報、前記冗長
データを作成するための情報が格納されているレコード
のアドレス、及び前記冗長データを書き込むべきレコー
ドとしての複数の候補を前記記憶装置に送る手段と、前
記記憶装置から前記冗長データを実際に書き込んだレコ
ードのアドレスを受け取る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情
報、前記冗長データを作成するための情報が格納されて
いるレコードのアドレス、及び前記冗長データを書き込
むべきレコードとしての複数の候補を前記制御装置から
受け取る手段と、前記冗長データを作成するための情報
を前記制御装置から指定されたレコードから読みだす手
段と、前記冗長データを作成するための情報から前記冗
長データを作成する手段と、前記制御装置から受け取っ
た前記冗長データを書き込むべきレコードとしての複数
の候補の中から、作成した冗長データを書き込むレコー
ドを選択し、該選択したレコードに前記作成した冗長デ
ータを書き込む手段と、前記冗長データを書き込んだレ
コードを前記制御装置に通知する手段とを有することを
特徴とする記憶装置システム。 - 【請求項4】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、前記通常データと前記
冗長データのいずれも格納していない状態とがあり、 前記制御装置は、前記レコードが、前記通常データ又は
前記冗長データを格納している状態、及び前記通常デー
タと前記冗長データのいずれも格納していない状態のい
ずれの状態にあるかを識別するレコード格納状態情報
と、前記レコード格納状態情報を参照し、前記冗長デー
タを格納するためのレコードを決定する手段と、前記冗
長データを作成するための情報、前記冗長データを作成
するための情報が格納されているレコードのアドレス、
及び、前記冗長データを書き込むべきレコードとして決
定したレコードを前記記憶装置に送る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情
報、前記冗長データを作成するための情報が格納されて
いるレコードのアドレス、及び前記冗長データを書き込
むべきレコードを前記制御装置から受け取る手段と、前
記冗長データを作成するための情報を前記制御装置から
指定されたレコードから読みだす手段と、前記冗長デー
タを作成するための情報から前記冗長データを作成する
手段と、作成した前記冗長データを前記制御装置から指
定されたレコードに書き込む手段とを有することを特徴
とする記憶装置システム。 - 【請求項5】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムに適した記憶装置であって、
前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、前記通常データと前記
冗長データのいずれも格納していない状態とがあり、前
記記憶媒体に書き込む通常データを前記制御装置から受
け取る手段と、前記冗長データを作成するための情報を
前記記憶媒体から読みだして前記制御装置に送る手段
と、前記制御装置から受け取った前記通常データを、そ
れまで前記通常データと前記冗長データのいずれも格納
していなかったレコードに格納する手段とを有すること
を特徴とする記憶装置。 - 【請求項6】前記レコードが、前記通常データ又は前記
冗長データを格納している状態か、前記通常データと前
記冗長データのいずれも格納していない状態かを識別す
る情報を保持する手段を有することを特徴とする請求項
5記載の記憶装置。 - 【請求項7】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、前記通常データと前記
冗長データのいずれも格納していない状態とがあり、 前記制御装置は、前記レコードが、前記通常データ又は
前記冗長データを格納している状態にあるか、前記通常
データと前記冗長データのいずれも格納していない状態
にあるかを識別する情報を保持する手段と、前記冗長デ
ータを作成するための情報が格納されているレコードの
アドレス、前記通常データ、及び前記通常データを書き
込むべきレコードとしての複数の候補を前記記憶装置に
送る手段と、前記記憶装置から、前記通常データを実際
に書き込んだレコードのアドレスを前記記憶装置から受
け取る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情報
が格納されているレコードのアドレス、前記通常デー
タ、及び前記通常データを書き込むべきレコードとして
複数の候補を前記制御装置から受け取る手段と、前記冗
長データを作成するための情報を前記記憶媒体から読み
だして前記制御装置に送る手段と、前記制御装置から受
け取った前記通常データを書き込むべきレコードとして
複数の候補の中から、実際に前記冗長データを書き込む
レコードを選択し、選択したレコードに前記通常データ
を書き込む手段と、前記通常データを書き込んだレコー
ドを前記制御装置に通知する手段とを有することを特徴
とする記憶装置システム。 - 【請求項8】複数台の記憶装置と、該記憶装置の制御を
行う制御装置とを備え、m個(m≧1)の通常データと
前記通常データを回復するためのn個(n≧1)の冗長
データによりデータグループを構成し、該データグルー
プ内の前記通常データ及び前記冗長データをそれぞれ異
なる記憶装置の記憶媒体上にレコードを格納単位として
記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり前記制
御装置は、前記レコードが、前記通常データ又は前記冗
長データを格納している状態か、前記通常データと前記
冗長データのいずれも格納していない状態かを識別する
レコード格納状態情報を保持し、前記レコード格納状態
情報を参照して前記通常データを格納するためのレコー
ドを決定する手段と、前記冗長データを作成するための
情報が格納されているレコードのアドレス、前記通常デ
ータ、及び前記通常データを書き込むべきレコードとし
て決定したレコードを前記記憶装置に送る手段とを有
し、 前記記憶装置は、前記冗長データを作成するための情報
が格納されているレコードのアドレス、前記通常デー
タ、及び前記通常データを書き込むべきレコードとして
決定したレコードを前記制御装置から受け取る手段と、
前記冗長データを作成するための情報を前記記憶媒体か
ら読みだして前記制御装置に送る手段と、前記冗長デー
タを作成するための情報から前記冗長データを作成する
手段と、前記通常データを、前記制御装置から指定され
たレコードに書き込む手段とを有することを特徴とする
記憶装置システム。 - 【請求項9】前記記憶装置に設けられ、前記記憶媒体上
にデータを読み書きする読み書きヘッドが、前記記憶媒
体のどの位置に位置付いているかを表わす位置情報を前
記制御装置に送る手段と、前記制御装置に設けられ、前
記記憶装置から前記位置情報を受け取る手段とを有し、
前記決定手段は、前記レコード格納状態情報と前記位置
情報とに基づき、前記通常データを格納するためのレコ
ードを決定することを特徴とする請求項8記載の記憶装
置システム。 - 【請求項10】複数台の記憶装置と、該記憶装置の制御
を行う制御装置とを備え、m個(m≧1)の通常データ
と前記通常データを回復するためのn個(n≧1)の冗
長データによりデータグループを構成し、該データグル
ープ内の前記通常データ及び前記冗長データをそれぞれ
異なる記憶装置の記憶媒体上にレコードを格納単位とし
て記憶する記憶装置システムに適した記憶装置であっ
て、前記レコードが採り得る状態に、少なくとも1つ以
上の前記データグループに属する前記通常データ又は前
記冗長データを格納している状態と、前記通常データと
前記冗長データのいずれも格納していない状態とがあ
り、前記冗長データ又は前記通常データを前記制御装置
から受け取る手段と、受け取った前記冗長データ又は前
記通常データを、それまで前記通常データと前記冗長デ
ータのいずれも格納していない状態にあるレコードに格
納する手段とを有することを特徴とする記憶装置。 - 【請求項11】前記レコードが、前記通常データ又は前
記冗長データを格納している状態にあるか、前記通常デ
ータと前記冗長データのいずれも格納していない状態に
あるかを識別するレコード格納情報を保持しており、前
記格納手段は、前記レコード格納情報を参照して前記通
常データを書き込むレコードを決定することを特徴とす
る請求項10記載の記憶装置。 - 【請求項12】複数台の記憶装置と、該記憶装置の制御
を行う制御装置とを備え、m個(m≧1)の通常データ
と前記通常データを回復するためのn個(n≧1)の冗
長データによりデータグループを構成し、該データグル
ープ内の前記通常データ及び前記冗長データをそれぞれ
異なる記憶装置の記憶媒体上にレコードを格納単位とし
て記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、前記通常データと前記
冗長データのいずれも格納していない状態とがあり、 前記制御装置は、前記レコードが、前記通常データ又は
前記冗長データを格納している状態にあるか前記通常デ
ータと前記冗長データのいずれも格納していない状態に
あるかを識別する情報を保持する手段と、前記冗長デー
タ又は前記通常データを書き込むべきレコードとしての
複数の候補、及び前記冗長データ又は前記通常データを
前記記憶装置に送る手段と、前記記憶装置から前記冗長
データ又は前記通常データを実際に書き込んだレコード
のアドレスを受け取る手段とを有し、 前記記憶装置は、前記冗長データ又は前記通常データを
書き込むべきレコードとしての複数の候補、及び、前記
冗長データ又は前記通常データを前記制御装置から受け
取る手段と、前記冗長データを作成するための情報を前
記制御装置から指定されたレコードから読みだす手段
と、前記冗長データを作成するための情報から前記冗長
データを作成する手段と、前記冗長データ又は前記通常
データをそれまで前記通常データと前記冗長データのい
ずれも格納していない状態にあるレコードに格納する手
段とを有することを特徴とする記憶装置システム。 - 【請求項13】複数台の記憶装置と、該記憶装置の制御
を行う制御装置とを備え、m個(m≧1)の通常データ
と前記通常データを回復するためのn個(n≧1)の冗
長データによりデータグループを構成し、該データグル
ープ内の前記通常データ及び前記冗長データをそれぞれ
異なる記憶装置の記憶媒体上にレコードを格納単位とし
て記憶する記憶装置システムであって、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記制御装置は、前記レコードが前記通常データ又は前
記冗長データ格納している状態にあるか、前記通常デー
タと前記冗長データのいずれも格納していない状態にあ
るかを識別するレコード格納状態情報保持し、前記記憶
装置から前記記憶媒体上に情報を読み書きする読み書き
ヘッドが前記記憶媒体のどの位置に位置付いているかを
表す位置情報を受け取る手段と、前記レコード格納状態
情報と前記位置情報とから、前記冗長データ又は通常デ
ータを格納するためのレコードを決定する手段と、前記
冗長データ又は前記通常データを書き込むべきレコー
ド、前記冗長データ又は前記通常データを前記記憶装置
に送る手段とを有し、 前記記憶装置は、前記冗長データ又は前記通常データを
書き込むべきレコード、及び前記冗長データ又は前記通
常データを前記制御装置から受け取る手段と、前記冗長
データ又は前記通常データを前記制御装置から指定され
たレコードに書き込む手段とを有することを特徴とする
記憶装置システム。 - 【請求項14】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有する計算機
システムの前記記憶装置として適しており、記憶媒体上
の格納単位をレコードとする記憶装置であって、前記レ
コードが採り得る状態に、少なくとも1つ以上の前記デ
ータグループに属する前記通常データ又は前記冗長デー
タを格納している状態と、前記通常データと前記冗長デ
ータのいずれも格納していない状態とがあり、前記冗長
データを作成するための情報をから処理装置から受け取
る手段と、前記冗長データを作成するための情報を前記
記憶媒体から読みだす手段と、前記冗長データを作成す
るための情報から前記冗長データを作成する手段と、作
成した前記冗長データをそれまで前記通常データと前記
冗長データのいずれも格納していない状態にあるレコー
ドに格納する手段とを有することを特徴とする記憶装
置。 - 【請求項15】前記レコードが、前記通常データ又は前
記冗長データを格納している状態にあるか、前記通常デ
ータと前記冗長データのいずれも格納していない状態に
あるかを識別する情報を保持する手段を有することを特
徴とする請求項14記載の記憶装置。 - 【請求項16】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、前記通常データと前記
冗長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態にあるか、前記通常デ
ータと前記冗長データのいずれも格納していない状態に
あるかを識別する情報を保持する手段と、前記冗長デー
タを作成するための情報、前記冗長データを作成するた
めの情報が格納されているレコードのアドレス、及び前
記冗長データを書き込むべきレコードとしての複数の候
補を前記記憶装置に送る手段と、前記記憶装置から前記
冗長データを実際に書き込んだレコードのアドレスを受
け取る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情
報、前記冗長データを作成するための情報が格納されて
いるレコードのアドレス、及び前記冗長データを書き込
むべきレコードとしての複数の候補を前記処理装置から
受け取る手段と、前記冗長データを作成するための情報
を前記処理装置から指定されたレコードから読みだす手
段と、前記冗長データを作成するための情報から前記冗
長データを作成する手段と、前記処理装置から受け取っ
た前記冗長データを書き込むべきレコードとしての複数
の候補の中から、作成した前記冗長データを実際に書き
込むレコードを選択し、該選択したレコードに前記作成
した冗長データを書き込む手段と、前記冗長データを書
き込んだレコードを前記処理装置に通知する手段とを有
することを特徴とする計算機システム。 - 【請求項17】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データを格納している状態と、記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態にあるか、前記通常デ
ータと前記冗長データのいずれも格納していない状態に
あるかを識別するレコード格納状態情報を保持してお
り、前記レコード格納状態情報を参照して前記冗長デー
タを格納するためのレコードを決定する手段と、前記冗
長データを作成するための情報、前記冗長データを作成
するための情報が格納されているレコードのアドレス、
及び前記冗長データを書き込むべきレコードとして決定
したレコードを前記記憶装置に送る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情
報、前記冗長データを作成するための情報が格納されて
いるレコードのアドレス、及び前記冗長データを書き込
むべきレコードを前記処理装置から受け取る手段と、前
記冗長データを作成するための情報を前記処理装置から
指定されたレコードから読みだす手段と、前記冗長デー
タを作成するための情報から前記冗長データを作成する
手段と、作成した前記冗長データを前記処理装置から指
定されたレコードに書き込む手段とを有することを特徴
とする計算機システム。 - 【請求項18】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有する計算機
システムの前記記憶装置として適しており、記憶媒体上
の格納単位をレコードとする記憶装置であって、前記レ
コードが採り得る状態に、少なくとも1つ以上の前記デ
ータグループに属する前記通常データ又は前記冗長デー
タ格納している状態と、前記通常データと前記冗長デー
タのいずれも格納していない状態とがあり、前記記憶媒
体に書き込む通常データを処理装置から受け取る手段
と、前記冗長データを作成するための情報を前記記憶媒
体から読みだして前記処理装置に送る手段と、前記処理
装置から受け取った前記通常データをそれまで前記通常
データと前記冗長データのいずれも格納してい状態にあ
るレコードに格納する手段とを有することを特徴とする
記憶装置。 - 【請求項19】前記レコードが、前記通常データ又は前
記冗長データ格納している状態にあるか、前記通常デー
タと前記冗長データのいずれも格納していない状態にあ
るかを識別する情報を保持する手段を有することを特徴
とする請求項18記載の記憶装置。 - 【請求項20】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態か、前記通常データと
前記冗長データのいずれも格納していない状態かを識別
する情報を保持する手段と、前記冗長データを作成する
ための情報が格納されているレコードのアドレス、前記
通常データ、及び前記通常データを書き込むべきレコー
ドとしての複数の候補を前記記憶装置に送る手段と、前
記記憶装置から前記通常データを実際に書き込んだレコ
ードのアドレスを受け取る手段とを有し、 前記記憶装置は、前記冗長データを作成するための情報
が格納されているレコードのアドレス、前記通常デー
タ、及び前記通常データを書き込むべきレコードとして
の複数の候補を前記処理装置から受け取る手段と、前記
冗長データを作成するための情報を前記記憶媒体から読
みだして前記処理装置に送る手段と、前記処理装置から
受け取った前記通常データを書き込むべきレコードとし
ての複数の候補の中から、実際に前記冗長データを書き
込むレコードを選択し、該選択したレコードに前記通常
データを書き込む手段と、前記通常データを書き込んだ
レコードを前記処理装置に通知する手段とを有すること
を特徴とする計算機システム。 - 【請求項21】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態か、前記通常データと
前記冗長データのいずれも格納していない状態かを識別
するレコード格納状態情報を保持し、前記レコード格納
状態情報を参照して前記通常データを格納するためのレ
コードを決定する手段と、前記冗長データを作成するた
めの情報が格納されているレコードのアドレス、前記通
常データ、及び前記通常データを書き込むべきレコード
として決定したレコードを前記記憶装置に送る手段とを
有し、 前記記憶装置は、前記冗長データを作成するための情報
が格納されているレコードのアドレス、前記通常デー
タ、及び前記通常データを書き込むべきレコードとして
決定したレコードを前記処理装置から受け取る手段と、
前記冗長データを作成するための情報を前記記憶媒体か
ら読みだして前記処理装置に送る手段と、前記冗長デー
タを作成するための情報から前記冗長データを作成する
手段と、前記通常データを前記処理装置から指定された
レコードに書き込む手段とを有することを特徴とする計
算機システム。 - 【請求項22】前記記憶装置に設けられ、前記記憶媒体
上に情報を読み書きするための読み書きヘッドが前記記
憶媒体のどの位置に位置付いているかを表す位置情報を
前記処理装置に送る手段と、前記処理装置に設けられ、
前記記憶装置から前記位置情報を受け取る手段とを有
し、前記決定手段が、前記レコード格納状態情報と前記
位置情報から前記通常データを格納するためのレコード
を決定することを特徴とする請求項21記載の計算機シ
ステム。 - 【請求項23】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有する計算機
システムの前記記憶装置として適しており、記憶媒体上
の格納単位をレコードとする記憶装置であって、前記レ
コードが採り得る状態に、少なくとも1つ以上の前記デ
ータグループに属する前記通常データ又は前記冗長デー
タを格納している状態と、前記通常データと前記冗長デ
ータのいずれも格納していない状態とがあり、前記冗長
データ又は前記通常データを処理装置から受け取る手段
と、前記冗長データ又は前記通常データをそれまで前記
通常データと前記冗長データのいずれも格納していない
状態にあるレコードに格納する手段とを有することを特
徴とする記憶装置。 - 【請求項24】前記レコードが、前記通常データ又は前
記冗長データ格納している状態か、前記通常データと前
記冗長データのいずれも格納していない状態かを識別す
るレコード格納情報を保持しており、前記格納手段は、
前記レコード格納情報を参照して前記通常データを書き
込むレコードを決定することを特徴とする請求項23記
載の記憶装置。 - 【請求項25】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態か、前記通常データと
前記冗長データのいずれも格納していない状態かを識別
する情報を保持する手段と、前記冗長データ又は前記通
常データを書き込むべきレコードとしての複数の候補、
及び前記冗長データ又は前記通常データを前記記憶装置
に送る手段と、前記記憶装置から、前記冗長データ又は
前記通常データを実際に書き込んだレコードのアドレス
を受け取る手段とを有し、 前記記憶装置は、前記冗長データ又は前記通常データを
書き込むべきレコードとしての複数の候補、及び前記冗
長データ又は前記通常データを前記処理装置から受け取
る手段と、前記冗長データを作成するための情報を前記
処理装置から指定されたレコードから読みだす手段と、
前記冗長データを作成するための情報から前記冗長デー
タを作成する手段と、前記冗長データ又は前記通常デー
タをそれまで前記通常データと前記冗長データのいずれ
も格納していない状態にあるレコードに格納する手段と
を有することを特徴とする計算機システム。 - 【請求項26】m個(m≧1)の通常データと前記通常
データを回復するためのn個(n≧1)の冗長データに
よりデータグループが構成され、1つのデータグループ
内のm個の通常データを分散して格納するm個の記憶装
置と、該1つのデータグループ内のn個の冗長データを
分散して格納するさらにn個の記憶装置と、これらm+
n個の記憶装置が接続される処理装置とを有し、前記記
憶装置がレコードを格納単位とする計算機システムであ
って、 前記レコードが採り得る状態に、少なくとも1つ以上の
前記データグループに属する前記通常データ又は前記冗
長データ格納している状態と、前記通常データと前記冗
長データのいずれも格納していない状態とがあり、 前記処理装置は、前記レコードが、前記通常データ又は
前記冗長データ格納している状態か、前記通常データと
前記冗長データのいずれも格納していない状態かを識別
するレコード格納状態情報を保持し、前記記憶装置か
ら、前記記憶媒体上に情報を読み書きする読み書きヘッ
ドが前記記憶媒体のどの位置に位置付いているかを表す
位置情報を受け取る手段と、前記レコード格納状態情報
と前記位置情報とから、前記冗長データ又は通常データ
を格納するためのレコードを決定する手段と、前記冗長
データ又は前記通常データを書き込むべきレコード、及
び前記冗長データ又は前記通常データを前記記憶装置に
送る手段とを有し、 前記記憶装置は、前記冗長データ又は前記通常データを
書き込むべきレコード、及び前記冗長データ又は前記通
常データを前記処理装置から受け取る手段と、前記冗長
データ又は前記通常データを前記処理装置から指定され
たレコードに書き込む手段とを有することを特徴とする
計算機システム。 - 【請求項27】記憶媒体上へのデータの格納単位をレコ
ードとし、処理装置に接続される制御装置により制御さ
れる記憶装置であって、前記レコードが採り得る状態
に、データを格納している状態と、データを格納してい
ない状態とがあり、データを前記制御装置から受け取る
手段と、受け取ったデータを、それまでデータを格納し
ていない状態にあるレコードに格納する手段とを有する
ことを特徴とする記憶装置。 - 【請求項28】前記レコードが、データを格納している
状態か、データを格納していない状態かを識別するレコ
ード格納情報を保持しており、前記格納手段は、前記レ
コード格納情報に基づいて前記受け取ったデータを格納
するレコードを決定することを特徴とする請求項27記
載の記憶装置。 - 【請求項29】処理装置に接続される制御装置と、記憶
媒体上へのデータの格納単位をレコードとし、前記制御
装置により制御される記憶装置とを有する記憶装置シス
テムであって、 前記レコードの採り得る状態に、データを格納している
状態と、データを格納していない状態とがあり、 前記制御装置は、前記レコードが、データを格納してい
る状態か、データを格納していない状態かを識別するレ
コード格納情報を保持する手段と、データを書き込むべ
きレコードとしての複数の候補、及び書き込むべきデー
タを前記記憶装置に送る手段と、前記記憶装置から、前
記書き込むべきデータを実際に書き込んだレコードのア
ドレスを受け取る手段とを有し、 前記記憶装置は、前記データを書き込むべきレコードと
しての複数の候補、及び前記書き込むべきデータを前記
制御装置から受け取る手段と、前記書き込むべきデータ
をそれまでデータを格納していない状態にあるレコード
に格納する手段と、前記書き込むべきデータを実際に書
き込んだレコードのアドレスを前記制御装置に通知する
手段とを有することを特徴とする記憶装置システム。 - 【請求項30】処理装置に接続される制御装置と、記憶
媒体上へのデータの格納単位をレコードとし、前記制御
装置により制御される記憶装置とを有する記憶装置シス
テムであって、 前記レコードの採り得る状態に、データを格納している
状態と、データを格納していない状態とがあり、 前記制御装置は、前記レコードが、データを格納してい
る状態か、データを格納していない状態かを識別するレ
コード格納情報を保持する手段と、前記記憶装置から前
記記憶媒体上にデータを読み書きするための読み書きヘ
ッドが前記記憶媒体のどの位置に位置付いているかを表
す位置情報を受け取ると手段と、前記レコード格納状態
情報と前記位置情報からデータを格納するためのレコー
ドを決定する手段と、データを書き込むべきレコード、
及び該レコードに書き込まれるべきデータを前記記憶装
置に送る手段とを有し、 前記記憶装置は、前記データを書き込むべきレコード、
及び前記書き込まれるべきデータを前記制御装置から受
け取る手段と、前記書き込まれるべきデータを前記制御
装置から指定されたレコードに書き込む手段とを有する
ことを特徴とする記憶装置システム。 - 【請求項31】記憶媒体上へのデータの格納単位をレコ
ードとし、処理装置に接続される記憶装置であって、前
記レコードが採り得る状態に、データを格納している状
態と、データを格納していない状態とがあり、データを
前記処理装置から受け取る手段と、受け取ったデータ
を、それまでデータを格納していない状態にあるレコー
ドに格納する手段とを有することを特徴とする記憶装
置。 - 【請求項32】前記レコードが、データを格納している
状態か、データを格納していない状態かを識別するレコ
ード格納情報を保持しており、前記格納手段は、前記レ
コード格納情報に基づいて前記受け取ったデータを格納
するレコードを決定することを特徴とする請求項31記
載の記憶装置。 - 【請求項33】処理装置と、記憶媒体上へのデータの格
納単位をレコードとし、前記処理装置に接続された記憶
装置とを有する計算機システムであって、 前記レコードの採り得る状態に、データを格納している
状態と、データを格納していない状態とがあり、 前記処理装置は、前記レコードが、データを格納してい
る状態か、データを格納していない状態かを識別するレ
コード格納情報を保持する手段と、データを書き込むべ
きレコードとしての複数の候補、及び書き込むべきデー
タを前記記憶装置に送る手段と、前記記憶装置から、前
記書き込むべきデータを実際に書き込んだレコードのア
ドレスを受け取る手段とを有し、 前記記憶装置は、前記データを書き込むべきレコードと
しての複数の候補、及び前記書き込むべきデータを前記
処理装置から受け取る手段と、前記書き込むべきデータ
をそれまでデータを格納していない状態にあるレコード
に格納する手段と、前記書き込むべきデータを実際に書
き込んだレコードのアドレスを前記処理装置に通知する
手段とを有することを特徴とする計算機システム。 - 【請求項34】処理装置と、記憶媒体上へのデータの格
納単位をレコードとし、前記処理装置に接続された記憶
装置とを有する計算機システムであって、 前記レコードの採り得る状態に、データを格納している
状態と、データを格納していない状態とがあり、 前記処理装置は、前記レコードが、データを格納してい
る状態か、データを格納していない状態かを識別するレ
コード格納情報を保持する手段と、前記記憶装置から前
記記憶媒体上にデータを読み書きするための読み書きヘ
ッドが前記記憶媒体のどの位置に位置付いているかを表
す位置情報を受け取ると手段と、前記レコード格納状態
情報と前記位置情報からデータを格納するためのレコー
ドを決定する手段と、データを書き込むべきレコード、
及び該レコードに書き込まれるべきデータを前記記憶装
置に送る手段とを有し、 前記記憶装置は、前記データを書き込むべきレコード、
及び前記書き込まれるべきデータを前記処理装置から受
け取る手段と、前記書き込まれるべきデータを前記処理
装置から指定されたレコードに書き込む手段とを有する
ことを特徴とする計算機システム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP04094596A JP3713788B2 (ja) | 1996-02-28 | 1996-02-28 | 記憶装置および記憶装置システム |
| US08/797,606 US5958078A (en) | 1996-02-28 | 1997-02-07 | Storage unit and storage unit subsystem |
| US09/327,158 US6098191A (en) | 1996-02-28 | 1999-06-03 | Storage unit and storage unit subsystem |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP04094596A JP3713788B2 (ja) | 1996-02-28 | 1996-02-28 | 記憶装置および記憶装置システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH09231015A true JPH09231015A (ja) | 1997-09-05 |
| JP3713788B2 JP3713788B2 (ja) | 2005-11-09 |
Family
ID=12594655
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP04094596A Expired - Fee Related JP3713788B2 (ja) | 1996-02-28 | 1996-02-28 | 記憶装置および記憶装置システム |
Country Status (2)
| Country | Link |
|---|---|
| US (2) | US5958078A (ja) |
| JP (1) | JP3713788B2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008004069A (ja) * | 2006-06-20 | 2008-01-10 | Korea Advanced Inst Of Science & Technol | 行列ストライプキャッシュを利用したraidシステムの入出力性能を向上させる方法 |
| WO2014016860A1 (en) | 2012-07-23 | 2014-01-30 | Hitachi, Ltd. | Raid storage system and rebuild process |
| JP2015518186A (ja) * | 2012-04-27 | 2015-06-25 | 株式会社日立製作所 | ストレージシステム及びストレージ制御装置 |
| JP2019504369A (ja) * | 2016-11-25 | 2019-02-14 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データチェック方法および記憶システム |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6874101B2 (en) * | 1991-01-31 | 2005-03-29 | Hitachi, Ltd. | Storage unit subsystem |
| US6115788A (en) * | 1998-02-20 | 2000-09-05 | Seagate Technology, Inc. | Multi-drive array with improved data transfer rate performance |
| US6151685A (en) * | 1998-05-15 | 2000-11-21 | International Business Machines Corporation | System and method for recovering a segment directory for a log structured array |
| US6754661B1 (en) * | 1999-07-13 | 2004-06-22 | Microsoft Corporation | Hierarchical storage systems for holding evidentiary objects and methods of creating and operating upon hierarchical storage systems |
| JP3951547B2 (ja) * | 2000-03-24 | 2007-08-01 | 株式会社日立製作所 | レプリケーションによるホスト間データ共有方式 |
| US6619545B2 (en) | 2002-01-15 | 2003-09-16 | International Business Machines Corporation | Kiosk having a people presence detector to determine if a kiosk item is to be presented to a customer |
| US6826656B2 (en) | 2002-01-28 | 2004-11-30 | International Business Machines Corporation | Reducing power in a snooping cache based multiprocessor environment |
| US7007220B2 (en) * | 2002-03-01 | 2006-02-28 | Broadlogic Network Technologies, Inc. | Error correction coding across multiple channels in content distribution systems |
| US7118622B2 (en) * | 2004-05-19 | 2006-10-10 | Engelhard Corporation | Organic dyes suitable for use in drugs and cosmetics laked onto a platy titanium dioxide pigment |
| US7318190B2 (en) * | 2004-06-10 | 2008-01-08 | Intel Corporation | Storage device parity computation |
| US7467281B2 (en) * | 2004-06-10 | 2008-12-16 | Intel Corporation | Mapping data blocks to storage blocks to wrap around storage devices |
| US8583865B1 (en) * | 2007-12-21 | 2013-11-12 | Emc Corporation | Caching with flash-based memory |
| US8245111B2 (en) * | 2008-12-09 | 2012-08-14 | Intel Corporation | Performing multi-bit error correction on a cache line |
| US8850114B2 (en) | 2010-09-07 | 2014-09-30 | Daniel L Rosenband | Storage array controller for flash-based storage devices |
| WO2013160972A1 (en) * | 2012-04-27 | 2013-10-31 | Hitachi, Ltd. | Storage system and storage apparatus |
| US9569303B2 (en) * | 2014-08-08 | 2017-02-14 | Kabushiki Kaisha Toshiba | Information processing apparatus |
| WO2016194095A1 (ja) | 2015-06-01 | 2016-12-08 | 株式会社日立製作所 | 情報処理システム、ストレージ装置及び記憶デバイス |
| KR102703983B1 (ko) * | 2016-11-07 | 2024-09-10 | 삼성전자주식회사 | Raid 방식으로 데이터를 저장하는 스토리지 장치 |
| CN109725824A (zh) * | 2017-10-27 | 2019-05-07 | 伊姆西Ip控股有限责任公司 | 用于向存储系统中的盘阵列写入数据的方法和设备 |
Family Cites Families (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US34100A (en) * | 1862-01-07 | Improved step-ladder | ||
| USRE34100E (en) | 1987-01-12 | 1992-10-13 | Seagate Technology, Inc. | Data error correction system |
| JP2783369B2 (ja) * | 1989-12-22 | 1998-08-06 | シーゲイト テクノロジー インターナショナル | 並列伝送装置に於ける読み込み失敗チャンネルのデータ再生復元方法並びに装置 |
| US5375128A (en) * | 1990-10-18 | 1994-12-20 | Ibm Corporation (International Business Machines Corporation) | Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders |
| JPH04245342A (ja) * | 1991-01-30 | 1992-09-01 | Toshiba Corp | 分散型データベースシステム |
| JP2913917B2 (ja) * | 1991-08-20 | 1999-06-28 | 株式会社日立製作所 | 記憶装置および記憶装置システム |
| US5729397A (en) * | 1992-12-31 | 1998-03-17 | International Business Machines Corporation | System and method for recording direct access storage device operating statistics |
| US5689678A (en) * | 1993-03-11 | 1997-11-18 | Emc Corporation | Distributed storage array system having a plurality of modular control units |
| JP3687111B2 (ja) * | 1994-08-18 | 2005-08-24 | 株式会社日立製作所 | 記憶装置システムおよび記憶装置の制御方法 |
-
1996
- 1996-02-28 JP JP04094596A patent/JP3713788B2/ja not_active Expired - Fee Related
-
1997
- 1997-02-07 US US08/797,606 patent/US5958078A/en not_active Expired - Fee Related
-
1999
- 1999-06-03 US US09/327,158 patent/US6098191A/en not_active Expired - Fee Related
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008004069A (ja) * | 2006-06-20 | 2008-01-10 | Korea Advanced Inst Of Science & Technol | 行列ストライプキャッシュを利用したraidシステムの入出力性能を向上させる方法 |
| JP2015518186A (ja) * | 2012-04-27 | 2015-06-25 | 株式会社日立製作所 | ストレージシステム及びストレージ制御装置 |
| US9262265B2 (en) | 2012-04-27 | 2016-02-16 | Hitachi, Ltd. | Storage system and storage control apparatus |
| WO2014016860A1 (en) | 2012-07-23 | 2014-01-30 | Hitachi, Ltd. | Raid storage system and rebuild process |
| US9047220B2 (en) | 2012-07-23 | 2015-06-02 | Hitachi, Ltd. | Storage system and data management method |
| US9411527B2 (en) | 2012-07-23 | 2016-08-09 | Hitachi, Ltd. | Storage system and data management method |
| JP2019504369A (ja) * | 2016-11-25 | 2019-02-14 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データチェック方法および記憶システム |
| US10303374B2 (en) | 2016-11-25 | 2019-05-28 | Huawei Technologies Co.,Ltd. | Data check method and storage system |
Also Published As
| Publication number | Publication date |
|---|---|
| US5958078A (en) | 1999-09-28 |
| JP3713788B2 (ja) | 2005-11-09 |
| US6098191A (en) | 2000-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH09231015A (ja) | 記憶装置および記憶装置システム | |
| JP2501752B2 (ja) | コンピユ―タ・システムのストレ―ジ装置及びデ―タのストア方法 | |
| US5881311A (en) | Data storage subsystem with block based data management | |
| US6912669B2 (en) | Method and apparatus for maintaining cache coherency in a storage system | |
| US7228381B2 (en) | Storage system using fast storage device for storing redundant data | |
| JP3409859B2 (ja) | 制御装置の制御方法 | |
| US7032070B2 (en) | Method for partial data reallocation in a storage system | |
| JP3944449B2 (ja) | 計算機システム、磁気ディスク装置、および、ディスクキャッシュ制御方法 | |
| US5600816A (en) | System and method for managing data in a cache system for a disk array | |
| JP3505093B2 (ja) | ファイル管理システム | |
| JP3176157B2 (ja) | ディスクアレイ装置及びそのデータ更新方法 | |
| JP2003256150A (ja) | 記憶制御装置および記憶制御装置の制御方法 | |
| JP2002259062A (ja) | 記憶装置システム及び記憶装置システムにおけるデータの複写方法 | |
| CN111857540B (zh) | 数据存取方法、装置和计算机程序产品 | |
| JPH06259197A (ja) | アレイ型ディスクシステムの制御方式 | |
| JPH0863298A (ja) | ディスクアレイ装置 | |
| JP3400328B2 (ja) | データ記憶方法およびデータ記憶装置 | |
| JP3687111B2 (ja) | 記憶装置システムおよび記憶装置の制御方法 | |
| JPH07200187A (ja) | ディスクアレイ装置 | |
| JP2003131818A (ja) | クラスタ構成ストレージにおけるクラスタ間raid構成 | |
| JP3730609B2 (ja) | 冗長化論理ディスクに対するライトスルー処理方法、ライトスルー処理用プログラム及びディスクコントローラ | |
| US6360296B1 (en) | Disk control apparatus | |
| JP4708669B2 (ja) | パス冗長化装置及び方法 | |
| JPH10312246A (ja) | 記憶装置サブシステム | |
| JPH09265435A (ja) | 記憶装置システム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040818 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040907 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041102 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050802 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050815 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080902 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090902 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090902 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100902 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110902 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120902 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130902 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |