(57)【特許請求の範囲】
【請求項１】
データの書込み要求を出力するデータ書込み・読み出し要求手段と、
データを格納する所定のクラスタ数を有する複数のディスクと、
前記データ書込み・読み出し要求手段からデータの書込み要求を受けたとき、初期データの格納時に前記書込み要求のあった書込みデータ量が前記所定のクラスタ数内に格納可能なデータ量であるとき、前記全ディスクに同一の書込みデータを格納し、以後、書込みデータ量が前記所定のクラスタ数を越えるごとに２重化になるまで多重化数を減らしながらデータ格納領域を拡張してデータを書込むディスク制御処理手段とを備えたことを特徴とするディスク制御装置。
【請求項２】
ディスク割付け用カウンタを有し、所定のクラスタ数を有する複数のディスクを多重化するためのプログラムを記録した記録媒体であって、
コンピュータに、
前記ディスク割付け用カウンタを初期化する初期化処理機能と、データ書込み時、前記所定のクラスタ数に相当する書込みデータ量ごとに前記カウンタをインクリメントし、当該カウンタのカウント値が前記所定のクラスタ数を越えるまで、前記複数のディスクに同一の書込みデータを書込んで多重化する第１の多重化処理機能と、前記書込みデータ量に対応する前記カウンタのカウント値が前記所定のクラスタ数を越えるごとに２重化になるまで多重化数を減らしながら前記ディスクのデータ格納領域を拡張する第２の多重化処理機能とを実現させるための前記プログラムを記録したコンピュータ読取可能な記録媒体。
【請求項３】
論理クラスタ番号によるデータ書込み・読み出し要求を出力する計算機と、
所定のクラスタ番号のデータ格納領域を有する複数のディスクと、
各ディスクの物理クラスタ番号を論理クラスタ番号に変換する第１変換テーブルと、前記論理クラスタ番号を前記物理クラスタ番号に変換する各ディスクごとの第２変換テーブルと、前記計算機から書込み要求を受けたとき、前記第１変換テーブルを参照し、かつ、前記複数のディスクの対応する物理クラスタ番号のデータ格納領域にデータを書込むデータ書込み制御手段と、前記計算機から前記論理クラスタ番号によるデータ読み出し要求を受けたとき、前記第２変換テーブルを参照して前記複数のディスクからデータを読み出すデータ読み出し制御手段とを有する制御装置とを備えたことを特徴とするディスク制御装置。
【請求項４】
請求項１に記載のディスク制御装置において、
前記データ書込み・読み出し要求手段からのデータの読み出し要求に基づき、前記複数のディスクに書込まれている多重化された所定のクラスタ数のデータ読み出し制御に対して複数のディスクからクラスタ位置情報を発生する位置情報発生手段と、この位置情報発生手段から発生される最初のディスクのクラスタ位置情報に基づき、全ディスクのクラスタ位置情報から同時に所定のクラスタ数に格納されるデータを読み出すデータ読み出し制御手段とをさらに付加したことを特徴とするディスク制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の磁気ディスク装置を備えたディスク制御装置および記録媒体に関する。
【０００２】
【従来の技術】
データ格納装置としては、磁気ディスク装置が一般的なデバイスであるが、信頼性に欠ける面があることから、２重化方式やＲＡＩＤ（Redundant Arrays of Independent Disk）構成を採用することにより、信頼性の低さを補っているのが現状である。
【０００３】
しかし、データの２重化方式は、同一データを２つずつ格納するので、格納されるデータの信頼性が高くなるが、その分記憶容量が半分（５０％）に減少する。
【０００４】
一方、ＲＡＩＤ構成は、例えば５台の磁気ディスク装置にデータを格納し、他の１台のディスク装置にパリティを格納する構成を採る場合、８３％のデータ格納領域となり、およそ１６％のデータ記憶容量が減少する。
【０００５】
そこで、従来、予めデータを蓄積できる容量をある一定の値に決めておき、その範囲内でデータを格納する，いわゆるスタティック(固定的）な構成によって運用されている。
【０００６】
【発明が解決しようとする課題】
しかし、以上のようなスタティックなデータ格納方法では、データ格納領域が大きいにも拘らずデータ量が少ない場合、本来であれば冗長度を高めて信頼性を上げることが可能であるが、そのような手段を講じないために信頼性が低いままとなり、磁気ディスク装置に無駄が生じる問題がある。
【０００７】
また、データ量が少ない場合、レスポンス性能を上げることが可能であるにも拘らず、その手立てが講じられていないのが現状である。
【０００８】
本発明は上記事情に鑑みてなされたもので、データ量に応じて動的にデータ格納領域を拡張しながら高い冗長性を維持するディスク制御装置を提供することにある。
【０００９】
また、本発明の他の目的は、レスポンス性能の向上を図るディスク制御装置を提供することにある。
【００１０】
さらに、本発明は、データ量に応じて動的にデータ格納領域を拡張しながら高い冗長性を持たせるうるプログラムを記録した記録媒体を提供することにある。
【００１１】
【課題を解決するための手段】
上記課題を解決するために、請求項１に対応する発明は、データの書込み要求を出力するデータ書込み・読み出し要求手段と、データを格納する所定のクラスタ数を有する複数のディスクと、前記データ書込み・読み出し要求手段からデータの書込み要求を受けたとき、初期データの格納時に前記書込み要求のあった書込みデータ量が前記所定のクラスタ数内に格納可能なデータ量であるとき、前記全ディスクに同一の書込みデータを格納し、以後、書込みデータ量が前記所定のクラスタ数を越えるごとに２重化になるまで多重化数を減らしながらデータ格納領域を拡張してデータを書込むディスク制御処理手段とを備えたディスク制御装置である。
【００１２】
本発明は、このような手段を講じたことにより、データの書込み要求があると、ディスク制御処理手段は、全ディスクにデータを書込んで多重化するが、書込みデータ量がディスクの所定のクラスタ数を越えたとき、全ディスクの半分のディスクにデータを上書きすることによりデータ格納領域を拡張する代わりに、多重化を初期段階の半分に落とし、更に書込みデータ量が多くなったとき、２重化になるまでデータ格納領域を拡張するものである。
【００１３】
別の発明は、ディスク割付け用カウンタを有し、所定のクラスタ数を有する複数のディスクを多重化するためのプログラムを記録した記録媒体であって、コンピュータに、前記ディスク割付け用カウンタを初期化する初期化処理機能と、データ書込み時、前記所定のクラスタ数に相当する書込みデータ量ごとに前記カウンタをインクリメントし、当該カウンタのカウント値が前記所定のクラスタ数を越えるまで、前記複数のディスクに同一の書込みデータを書込んで多重化する第１の多重化処理機能と、前記書込みデータ量に対応する前記カウンタのカウント値が前記所定のクラスタ数を越えるごとに２重化になるまで多重化数を減らしながら前記ディスクのデータ格納領域を拡張する第２の多重化処理機能とを実現させるための前記プログラムを記録したコンピュータ読取可能な記録媒体である。
【００１４】
このような手段を講じることにより、コンピュータが記録媒体に記録されるプログラムを読取ることにより、複数のディスクにデータを格納するに際し、書込みデータ量に応じて多重化を落としながらデータ格納領域を拡大でき、２重化になるまで多重化することにより、冗長性を確保可能となる。
【００１５】
さらに、別の発明は、論理クラスタ番号のデータ書込み要求を出力する計算機と、所定のクラスタ番号のデータ格納領域を有する複数のディスクと、各ディスクの物理クラスタ番号を論理クラスタ番号に変換する第１変換テーブル、前記論理クラスタ番号を前記物理クラスタ番号に変換する各ディスクごとの第２変換テーブル、前記計算機から論理クラスタ番号によるデータ書込み要求を受けたとき、前記第１変換テーブルを参照して論理クラスタ番号無しのとき２重化になるまで当該論理クラスタ番号を設定し、かつ、前記複数のディスクの対応する物理クラスタ番号のデータ格納領域にデータを書込むデータ書込み制御手段、前記計算機から前記論理クラスタ番号によるデータ読み出し要求を受けたとき、前記第２変換テーブルを参照して前記複数のディスクからデータを読み出すデータ読み出し制御手段を有する制御装置とを備えたディスク制御装置である。
【００１６】
この発明は、以上のような手段を講じたことにより、計算機から論理クラスタ番号のデータ書込み要求を受けると、データ書込み制御手段は、第１変換テーブルを参照し、各ディスクの物理クラスタに論理クラスタ番号が設定されていないとき、例えばディスク６台に対してデータを６重化構成とし、また書込み要求が有れば、３重化、２重化になるように論理クラスタ番号を設定するので、信頼性を上げることができる。
【００１７】
さらに、別の発明は、前述する請求項１に対応する発明の構成に、さらに前記データ書込み・読み出し要求手段からのデータの読み出し要求に基づき、前記複数のディスクに書込まれている多重化された所定のクラスタ数のデータ読み出し制御に対して複数のディスクからクラスタ位置情報を発生する位置情報発生手段と、この位置情報発生手段から発生される最初のディスクのクラスタ位置情報に基づき、全ディスクのクラスタ位置情報から同時に所定のクラスタ数に格納されるデータを読み出すデータ読み出し制御手段とを設けたディスク制御装置である。
【００１８】
このような手段を講じたことにより、請求項１に対応する発明で得られる作用効果を奏する他、あるディスクの最初のクラスタ位置情報を検出した後、全ディスクのクラスタ位置情報から同時に所定クラスタ数のデータを読み出すので、所要とするデータを短時間に読み出しできる。
【００１９】
【発明の実施の形態】
以下、本発明に係るディスク制御装置および記録媒体の実施の形態について図面を参照して説明する。
【００２０】
（第１の実施の形態）
図１ないし図９は本発明に係るディスク制御装置および記録媒体の一実施の形態を説明する図であって、図１はディスク制御装置の基本的な構成を示す図、図２ないし図９はデータ量に応じて動的にデータ格納領域を可変させたときの磁気ディスク装置のデータ格納状態を示す図である。
【００２１】
この実施の形態は、複数のデータ格納装置を設け、データの初期格納段階では、複数のデータ格納装置に同じデータを格納することにより多重化構成を採用して信頼性を上げ、データ量が増えるに従ってその多重化数を減らしながらデータ格納領域を拡張する例である。
【００２２】
以下、本発明装置の基本的な構成について説明する。
【００２３】
このディスク制御装置は、大きく分けて、データの読み出し・書込み要求を出力するデータ読み出し・書込み要求手段としてのホスト計算機１と、実際にデータを格納するデータ格納装置である例えば６台の磁気ディスク装置（以下、ディスクと呼ぶ）２１〜２６と、前記ホスト計算機１からアクセス要求を受けたとき、その要求内容に応じてディスク２１〜２６に対するデータの読み出し・書込み制御を実行する制御装置３とから成る。
【００２４】
この制御装置３は、ホスト計算機１との間でデータの読み出し・書込み要求および各ディスク２１〜２６に対する読み出し・書込みデータの授受を行うインターフェイス３１、データ読み出し要求に基づいてデータを一時的に保存するキャッシュメモリ３２、データ量に応じてディスクのデータ多重化構成を可変するプログラムを記憶する記録媒体３３、この記録媒体３３に記録されるプログラムを実行するＣＰＵで構成されたディスク制御処理部３４、この処理部３４による処理中データ，処理後データその他必要なデータを記憶するＲＡＭ３５、ホスト計算機１から読み出し・書込み時に出力される論理クラスタをディスク側の物理クラスタに変換する変換テーブル３６等が設けられている。
【００２５】
前記記録媒体３３としては、例えば磁気ディスク、磁気テープ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、フロッピーディスク、ＭＯ、ＣＤ−Ｒ、メモリカードなどが用いられる。
【００２６】
なお、本装置は、説明の便宜上、例えば６台のディスク２１〜２６を用い、各ディスク２１〜２６の内部はデータを細かく格納するためのＯＳ（Operating System）の最小単位であるクラスタと呼ぶ単位により管理するものとする。因みに、ここでは、ディスク１台のクラスタ番号は０〜９９，つまり１００クラスタに分けるものとする。また、一般的に、ファイルシステムはクラスタ数の小さい番号の順番に用いるように作られている。
【００２７】
次に、以上のような装置の動作について図２を参照して説明する。
【００２８】
制御装置３の動作が開始すると、ディスク制御処理部３４は、記録媒体３３に記録されるプログラム（図２参照）に従ってＲＡＭ３５などの不要データを消去し、さらに例えばＲＡＭなどに設けられるディスク割付け用カウンタを初期化処理（ＣＮ＝０）した後（Ｓ１：初期化処理機能）、ホスト計算機１からデータ書込み要求が有るか否かを判断する（Ｓ２）。
【００２９】
ここで、書込み要求があると、その書込みデータをキャッシュメモリ３２に一時的に保存するとともに、この書込みデータ取込み時或いはキャッシュメモリ３２へのデータ保存時、１クラスタに相当するデータ量に応じてカウンタＣＮを順次インクリメントするとともに、そのカウント値がクラスタ数９９を越えたか否かを判断し（Ｓ３）、未だクラスタ数を越えていない場合にはホスト計算機１から書込み要求のあった論理クラスタ番号に対する変換テーブル３６のディスク側物理クラスタ番号の若い順番に割り付けし（Ｓ４）、さらにデータ格納初期段階時，つまりクラスタ数９９を越えるまでは全部のディスク２１〜２６に同じデータを順次書込んでいく（Ｓ５、Ｓ６，図３参照：第１の多重化処理機能）。
【００３０】
従って、データ格納初期段階時、全部のディスク２１〜２６に同じデータを格納するので、データが６重化構成となり、非常に信頼性が高くなる。その結果、５台のディスクが破壊してもデータを失うことがなく、高い信頼性を確保できる。
【００３１】
一方、データ読み出し時、全てのディスク２１〜２６に読み出し要求をかけ、その中で一番最初に読み出し可能なディスクのデータを読み出すことにより、平均回転待ち時間が通常のディスクの１／６時間となり、速やかにデータの読み出し開始が可能となる。
【００３２】
引き続き、書込みデータ量が増えてきて、カウンタＣＮのカウント値がクラスタ数９９を越えた場合にはステップＳ７に移行し、当該カウンタＣＮのカウント値が１９９を越えるまではホスト計算機１から書込み要求のあった論理クラスタ番号に対し、変換テーブル３６のディスク側物理クラスタ番号１００〜１９９に割り付けする一方（Ｓ８）、３台のディスク２４〜２６に書込み要求データを順次上書きしていく（Ｓ９、Ｓ６、図４参照：第２の多重化処理機能）。
【００３３】
この場合には、６台のディスク２１〜２６のうち、３台のディスク２４〜２６がクラスタ番号１００〜１９９までのデータ書込み用となり、データの３重化構成となる。その結果、多重化構成は、６重化から３重化になるが、データの格納容量が倍に増え、一方、データ平均読み出し時間は１台のディスク平均回転待ち時間の１／３となる。
【００３４】
さらに、データ量が増えてカウンタＣＮのカウント値が２００以上になると、ステップＳ１０〜Ｓ１２，Ｓ６，Ｓ２，Ｓ３，Ｓ７の処理により、変換テーブル３６のクラスタ番号２００〜２９９に割り付けするとともに、書込みデータを図５に示す如く予め定めた２台のディスク２３，２４に順次上書きしていく（第２の多重化処理機能）。
【００３５】
従って、２台のディスク２３，２４がクラスタ番号２００〜２９９までの書込み領域となり、多重化構成も３重化から２重化となり、信頼性が下がるもののデータ格納容量が当初に比較して３倍となる。このとき、データ平均読み出し時間は１台のディスク平均回転待ち時間の１／３となる。
【００３６】
なお、冗長性を持たせる場合には以上のような処理で終了するが、冗長性が無くてもデータを保存したい場合、さらにクラスタ番号３００以上のデータ書込み要求があれば、図６に示すようにディスク２２と２３の二重化を外し、書込みデータをディスク２２に上書きし（Ｓ１３〜Ｓ１５）、クラスタ番号４００以上のデータ書込み時には図７に示すようにディスク２３，２４の二重化を外し、書込みデータをディスク２４に上書きし（Ｓ１６〜Ｓ１８）、クラスタ番号５００以上の場合には図８に示すようにディスク２５，２６の二重化を外し、書込みデータをディスク２６に上書きしていく（Ｓ１９〜Ｓ２１）。
【００３７】
よって、最終的には当初データ格納容量の６倍になるが、冗長性はなくなる。このままの状態ではデータの信頼性がなくなるので、信頼性を上げる観点からは二重化が外れる前、つまりステップＳ１２の処理で終了するのが望ましい。
【００３８】
一方、データ量が少なくなれば、そのデータ量に応じてデータ格納場所を、図８→図７→図６→図５→図４→図３のように動的に変更することも容易であり、常に最高の信頼性を確保可能な構成とすることができる。
【００３９】
従って、以上のような実施の形態によれば、データ格納初期段階では、全部のディスク２１〜２６に同じデータを格納するので、多重化数が大きくなり、非常に信頼性を高めることが可能である。ディスクのデータ格納領域にデータが満杯になれば、全部のディスクを幾つかに分け、多重化数を減らし、データ格納領域を拡張していく。その分データの冗長性が低くなるが、データの格納領域を有効に使用でき、データの冗長性も最大に保つことができる。
【００４０】
一方、データの読み出し要求時、一番速くデータを読み出せるディスクからデータを読み出すことにより、データ読み出しのレスポンスの性能を向上させることができる。
【００４１】
なお、データ量に応じてデータ格納領域および多重化構成を可変する構成について述べたが、例えば冗長性を失わずにデータ格納領域を増やす場合には、クラスタ番号が３００以上になったとき、図９に示すように５台のディスクをデータ格納用とし、１台のディスクをパリティ格納用とするＲＡＩＤ構成を採用することにより、図９に示すようにクラスタ番号４９９までデータを格納できる。
【００４２】
（第２の実施の形態）
図１０は本発明に係るディスク制御装置の他の実施形態を示す構成図である。
【００４３】
この実施の形態は、図１ではクラスタ番号の若い順番から書込み要求があることを前提としているが、全くランダムなクラスタ番号の書込み要求が発生したときには、定期的にクラスタを並び替える処理を行う例である。
【００４４】
このディスク制御装置は、図１と同一部分には同一符号を付してその詳しい説明を省略し、特に異なる部分について説明すると、例えば６台のディスク４１〜４６と、各ディスク４１〜４６毎に論理クラスタ番号と物理クラスタ番号とを変換する変換テーブル５１，５２〜５７（図１１、図１２参照）とを設けたことにある。
【００４５】
前記ディスク４１〜４６は、説明を単純化するために、それぞれ５クラスタで構成され、６重化と３重化との間の変化とし、多重化のレベルは６重化、３重化、２重化までの３レベルとし、かつ、この２重化のときに取りうるクラスタ数は１５（３台のディスク）であることから、論理クラスタ番号は０から１４までとする。
【００４６】
一方、変換テーブル５１，５２〜５７は、論理クラスタ番号と物理クラスタ番号とを変換するテーブルであり、ホスト計算機１から書込み要求のあったクラスタ番号を論理クラスタとし、物理クラスタ番号は若い順番に割付けるものとする。なお、論理クラスタ番号とはホスト計算機１から要求される書込み時のクラスタ番号であり、一方、物理クラスタ番号は実際にディスク４１〜４６に書き込まれるクラスタ番号である。
【００４７】
図１１に示す変換テーブル５１は物理クラスタ番号を論理クラスタ番号に変換するテーブルであり、データの書込み時に参照される。図１２に示す変換テーブル５２〜５７は、論理クラスタ番号から物理クラスタ番号に変換するテーブルであり、データの読み出し時に参照される。
【００４８】
また、本装置では、変換テーブルのクラスタ毎に有効／無効を示す値を定義し、あるクラスタが無効（ｎｏｔ  ｕｓｅｄ）になったとき、他のディスクの無効なクラスタと組み合わせて、データを多重化する。一般に、ファイルシステムでは、ファイルを消去するとその部分のクラスタは他へ転用するので、有効か無効かの判断は可能となる。
【００４９】
物理クラスタ・論理クラスタ変換テーブル５１は、メモリなどの速い記憶装置が用いられ、ホスト計算機１から論理クラスタ番号による書込み要求がきたとき、当該論理クラスタ番号から物理クラスタ番号を求めるテーブルを参照し、該当ディスクの物理クラスタにデータを書込む。一方、論理クラスタ・物理クラスタ変換テーブル５２〜５７は、は、同様にメモリなどの速い記憶装置が用いられ、ホスト計算機１から読み出し要求がきたとき、この論理クラスタ番号から物理クラスタ番号を求めるテーブルを参照してデータを読み出す。
【００５０】
次に、以上のように構成された装置の動作について説明する。
【００５１】
なお、説明の便宜上、例えば以下のようなクラスタ番号の順序でアクセスされた時の動作を説明する。
【００５２】
（１）  クラスタ１３→１０→１１→９→５の順序で書込み
（２）  クラスタ１→２→４→６→８の順序で更に書込み
（３）  クラスタ９消去→８消去→４消去
（４）  クラスタ１４書込み
（５）  クラスタ１３書込み
以下、具体的に説明する。
【００５３】
（１）  クラスタ１３→１０→１１→９→５の順序で書込み
今、ホスト計算機１から論理クラスタ番号によるデータ書込み要求が来ると、ディスク制御処理部３４は、書込みデータを取り込んでキャッシュメモリ３２に一時的に保存する一方、変換テーブル５１を参照し、より高い多重化となるクラスタを検索する。
【００５４】
最初の状態は、変換テーブル５１〜５７の全てのクラスタがｎｏｔ  ｕｓｅｄとなっているので（図１１〜図１３参照）、変換テーブル５１の全ディスクに対応する物理クラスタ０，１，２，３，４に論理クラスタ１３，１０，１１，９，５を設定し（図１４参照）、また変換テーブル５２〜５７の該当する論理クラスタ１３，１０，１１，９，５にそれぞれ物理クラスタ０，１，２，３，４を設定し（図１５参照）、全ディスク４１〜４６の物理クラスタ０，１，２，３，４にそれぞれデータを書込んでいく（図１６参照）。その結果、データは完全な６重化となる。
【００５５】
（２）  クラスタ１→２→４→６→８の順序で更に書込み
さらに、ホスト計算機１から論理クラスタによるデータの書込み要求が来ると、ディスク制御処理部３４は、書込みデータを取り込んでキャッシュメモリ３２に一時保存し、同様に変換テーブル５１を参照するが、全てのクラスタが使用されていることが分かるので、６重化されているクラスタのうち、適宜なクラスタを３重化にダウンさせ、空いたクラスタにデータを書込むことになる。
【００５６】
すなわち、ディスク制御処理部３４は、図１７ないし図１９に示すように変換テーブル５１でのディスク４４〜４６に対応する物理クラスタ０，１，２，３，４に論理クラスタ１，２，４，６，８を設定し、また変換テーブル５２〜５７の該当する論理クラスタ１，２，４，６，８にそれぞれ物理クラスタ０，１，２，３，４を設定し、該当するディスク４４〜４６のクラスタ０，１，２，３，４にそれぞれデータを書込んでいく。その結果、データを書き終えたときは、データは３重化の状態になる（図１９参照）。
【００５７】
（３）  クラスタ９消去→８消去→４消去について
その後、ホスト計算機１からクラスタ９→８→４の消去要求が来ると、ディスク制御処理部３４は、図２０ないし図２２に示すように変換テーブル５１の論理クラスタ９，８，４、変換テーブル５２〜５４の論理クラスタ９、および変換テーブル５５〜５７の論理クラスタ８，４を消去し、使われなくなったエリアにそれぞれｎｏｔ  ｕｓｅｄを示すコードを格納し、さらにディスク４１〜４６の該当クラスタのデータを消去し、再使用可能状態に設定する。
【００５８】
（４）  クラスタ１４書込みについて
クラスタ１４のデータ書込み時、図２３ないし図２５に示すように変換テーブル５１を参照し、全てのディスク４１ないし４６に対応する物理クラスタにおいてｎｏｔ  ｕｓｅｄであると判断したとき、論理クラスタ１４を設定し、さらにテーブル５２〜５４の論理クラスタ１４に物理クラスタ３、テーブル５４〜５６の論理クラスタ１４に物理クラスタ２を設定し、さらにディスク４１〜４６にクラスタ１４の（５）  クラスタ１３書込み
クラスタ１３のデータ書込み時、図２６ないし図２８に示すように変換テーブル５１を参照すると、ディスク４１〜４３の物理クラスタ０に既に論理クラスタ１３が設定されているが、６重化する場合にはディスク４４〜４６に対応する物理クラスタ４がｎｏｔ  ｕｓｅｄとなっているので、この部分に論理クラスタ１３を設定し、変換テーブル５５〜５７の論理クラスタ１３に物理クラスタ４を設定し、ディスク４１〜４６の該当部分にクラスタ１３のデータを書き込むことにより、論理クラスタ１３のデータは６重化となる。
【００５９】
なお、データの読み出し時は、変換テーブル５２〜５７を参照して物理クラスタを取得し、該当するディスク４１〜４６全てに読み出し要求をかけ、そのうち一番速く読み出したディスクのデータを取得する。そして、読み出し完了時点において読み出しに間に合わなかった他のディスクに対し、読み出し要求をキャンセルする。
【００６０】
従って、以上のような実施の形態によれば、ランダムに論理クラスタ番号のデータ書込み要求が有っても、変換テーブル５１を参照し、常にデータの多重化を図りながらディスク４１〜４６にデータを書込むことができる。
【００６１】
なお、データの読み出し時、変換テーブル５１を参照する代わりに変換テーブル５２〜５７を検索し、論理クラスタ番号から物理クラスタ番号を取得するようにしてもよい。
【００６２】
また、この実施の形態は、６重化と３重化とを構成変更する例について述べたが、３重化と２重化、２重化とＲＡＩＤ構成との構成変更等、データ格納容量とデータの信頼性を常に考慮しつつ変更制御することもできる。よって、結果的に、平均回転待ち時間についても、信頼性と共に変化し、常に最良の状態を維持させることができる。
【００６３】
（第３の実施の形態）
図２９は本発明に係るディスク制御装置の他の実施形態を示す構成図である。
【００６４】
この実施の形態は、多重化（例えば３重化）されたディスクデータの読み出し時間を短縮する例である。
【００６５】
同図において１はデータの読み出し要求を出力するホスト計算機、６１〜６３は各クラスタにデータを格納するディスク、６４はホスト計算機１のデータ読み出し要求に対するデータの読み出し制御および各ディスク６１〜６３のクラスタ位置を検出する制御装置である。
【００６６】
前記ディスク６１〜６３は、実際にデータを格納するディスク本体６５、ディスクヘッド６６およびディスク制御部６７からなり、これらディスクヘッド６６、ディスク制御部６７にてディスク回転位置情報、ひいてはクラスタ位置情報を発生し、制御装置６４に通知する機能をもっている。
【００６７】
次に、以上のような装置の動作について説明する。
【００６８】
なお、各ディスク６１〜６３は、説明の便宜上，ディスク一回転に対して所定のクラスタ数である例えば８つの物理クラスタが存在し、クラスタ０〜７にはそれぞれ既にデータが格納され、これらクラスタ０〜７に格納されるデータをホスト計算機１が読み出すときの動作例について説明する。
【００６９】
今、クラスタ番号とディスクヘッド６６のヘッド位置とが図２９に示す位置関係にあるとき、ホスト計算機１から所定のクラスタ数０〜７までの読み出し要求が出力すると、制御装置６４は、各ディスク６１〜６３のデータの読み出し制御を実行する。
【００７０】
このとき、通常のデータ読み出し制御では、ディスク６１〜６３から図３０に示すようなクラスタ番号順にクラスタ番号であるクラスタ位置情報が発生し制御装置６４に通知する。ここで、制御装置６４は、読み出し要求後、最も先に検出したディスク６３のクラスタ７から読み出しを開始し、当該ディスク６３が一巡する間に発生されるクラスタ位置情報０，１，２，３，４，５，６，７に基づいて該当クラスタに格納されるデータを順次読み出し、クラスタ７のデータを読み出し後に読み出し終了となる。
【００７１】
これに対し、多重化された本装置によるデータ読み出し制御では、ディスク６３のクラスタ７からデータ読み出し開始としたとき、このクラスタ７を含んで図３１に示すように全ディスク６１〜６３のクラスタ位置情報に基づいて同時に全ディスク６１〜６３からクラスタ０，１，２，３，４，５，６のデータを読み出し、全クラスタ０〜７に格納されたデータを読み出した後に読み出しを終了する。
【００７２】
その結果、データ読み出し性能が飛躍的に向上し、平均回転待ち時間が最高でも１クラスタ分の台数分の１の時間となり、図の場合には１／３クラスタ分の時間しかかからない。最低であっても、平均回転待ち時間の台数分の１，つまり１／３しかかからず、データ読み出し時間を大幅に短縮できる。
【００７３】
なお、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
【００７４】
【発明の効果】
以上説明したように本発明によれば、複数のディスクにデータを格納するに際し、データ量に応じて動的にデータ格納領域を拡張しながら常に高い冗長性をもたせつつデータを格納でき、信頼性の向上を図ることができる。
【００７５】
また、データ読み出しに際し、複数のディスクのうち最も速いディスクのデータを読み出すことにより、レスポンスの性能を大幅に向上できる。
【００７６】
さらに、本発明は、データ量に応じて動的にデータ格納領域を拡張しながら高い冗長性を確保するプログラムを記録した記録媒体を提供できる。
【図面の簡単な説明】
【図１】  本発明に係るディスク制御装置の一実施の形態を示す構成図。
【図２】  本発明装置および記録媒体のプログラム動作を説明するフローチャート。
【図３】  ６重化構成としたディスクデータ配列例を説明する図。
【図４】  ３重化構成としたディスクデータ配列例を説明する図。
【図５】  ２重化構成としたディスクデータ配列例を説明する図。
【図６】  一部２重化無し構成としたデータ配列例を説明する図。
【図７】  一部２重化無し構成としたデータ配列例を説明する図。
【図８】  ２重化無し構成としたデータ配列例を説明する図。
【図９】  ＲＡＩＤ構成としたデータ配列例を説明する図。
【図１０】  本発明に係るディスク制御装置の他の実施形態を示す構成図。
【図１１】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図１２】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図１３】  クラスタに対する各ディスクのデータ有無状態を示す図。
【図１４】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図１５】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図１６】  クラスタに対する各ディスクのデータ格納状態を示す図。
【図１７】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図１８】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図１９】  クラスタに対する各ディスクのデータ格納状態を示す図。
【図２０】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図２１】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図２２】  クラスタに対する各ディスクのデータ格納状態を示す図。
【図２３】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図２４】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図２５】  クラスタに対する各ディスクのデータ格納状態を示す図。
【図２６】  物理クラスタ・論理クラスタ変換テーブルのテーブル内容を説明する図。
【図２７】  論理クラスタ・物理クラスタ変換テーブルのテーブル内容を説明する図。
【図２８】  クラスタに対する各ディスクのデータ格納状態を示す図。
【図２９】  本発明に係るディスク制御装置の他の実施形態を示す構成図。
【図３０】  多重化構成時における通常のデータ読み出し時間を説明する図。
【図３１】  多重化構成時における本発明装置のデータ読み出し時間を説明する図。
【符号の説明】
１…ホスト計算機
３，６４…制御装置
２１〜２６，４１〜４６，６１〜６３…ディスク
３３…記録媒体
３４…ディスク制御処理部
３６，５１〜５７…変換テーブル
【図１】
0004040797.tif 000002
【図２】
0004040797.tif 000003
【図３】
0004040797.tif 000004
【図４】
0004040797.tif 000005
【図５】
0004040797.tif 000006
【図６】
0004040797.tif 000007
【図７】
0004040797.tif 000008
【図８】
0004040797.tif 000009
【図９】
0004040797.tif 000010
【図１０】
0004040797.tif 000011
【図１１】
0004040797.tif 000012
【図１２】
0004040797.tif 000013
【図１３】
0004040797.tif 000014
【図１４】
0004040797.tif 000015
【図１５】
0004040797.tif 000016
【図１６】
0004040797.tif 000017
【図１７】
0004040797.tif 000018
【図１８】
0004040797.tif 000019
【図１９】
0004040797.tif 000020
【図２０】
0004040797.tif 000021
【図２１】
0004040797.tif 000022
【図２２】
0004040797.tif 000023
【図２３】
0004040797.tif 000024
【図２４】
0004040797.tif 000025
【図２５】
0004040797.tif 000026
【図２６】
0004040797.tif 000027
【図２７】
0004040797.tif 000028
【図２８】
0004040797.tif 000029
【図２９】
0004040797.tif 000030
【図３０】
0004040797.tif 000031
【図３１】
0004040797.tif 000032