(57)【要約】【課題】  ディスクアレイ装置において、電源障害が発生し、無停電電源装置に備えたバッテリーから電力の供給を受けているとき、簡単な制御で、ディスクアレイの消費電力を低減すること。【解決手段】  記憶装置アレイに電力を供給する商用電源に異常が発生したとき、上記商用電源に代替して上記記憶装置アレイに電力を供給するバックアップ電源手段を備えたアレイ型記憶装置において、電源異常信号を受信すると、記憶装置アレイを構成する個々のまたは複数の記憶装置が、互いに時間的に重複することなく、または一部のみ時間的に重複して、電力の供給の開始とデータアクセスと電力の供給の停止とからなる一連の動作を行うように制御する記憶装置個別制御手段とを備える。【選択図】  図１
2005352746.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置をアレイ化してなる記憶装置アレイと、
上記記憶装置アレイへのデータアクセスと電力の供給とを制御するアレイ制御手段と、
上記記憶装置アレイに電力を供給する商用電源に異常が発生したとき、上記商用電源に異常が発生したことを通知する電源異常信号を上記アレイ制御手段に出力し、上記商用電源に代替して上記記憶装置アレイに電力を供給するバックアップ電源手段とを備えたアレイ型記憶装置であって、
上記アレイ制御手段は、上記電源異常信号を受信する電源異常信号受信手段と、
上記電源異常信号受信手段により上記電源異常信号を受信すると、上記記憶装置アレイを構成する個々のまたは複数の記憶装置が、互いに時間的に重複することなく、または一部のみ時間的に重複して、電力の供給の開始とデータアクセスと電力の供給の停止とからなる一連の動作を行うように制御する記憶装置個別制御手段とを備えることを特徴とするアレイ型記憶装置。
【請求項２】
上記記憶装置個別制御手段は、ＲＡＩＤフォーマットされた記憶領域フォーマットに基づいて上記データアクセスを行うことを特徴とする請求項１に記載のアレイ型記憶装置。
【請求項３】
上記アレイ制御手段は、さらに、上記記憶装置アレイへのデータアクセスに関する命令に対する応答を待機する許容時間を示す応答待機許容時間を記憶する応答待機許容時間記憶手段と、上記電源異常信号受信手段により上記電源異常信号を受信すると、上記応答待機許容時間記憶手段に記憶された上記応答待機許容時間を再設定する応答待機許容時間再設定手段とを備えることを特徴とする請求項１に記載のアレイ型記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置をアレイ化してなる記憶装置アレイと、上記記憶装置アレイへのデータアクセスと電力の供給とを制御するアレイ制御手段と、上記記憶装置アレイに電力を供給する商用電源に異常が発生したとき、上記商用電源に異常が発生したことを通知する電源異常信号を上記アレイ制御手段に出力し、上記商用電源に代替して上記記憶装置アレイに電力を供給するバックアップ電源手段とを備えたアレイ型記憶装置に関する。
【背景技術】
【０００２】
近年、情報機器の処理能力の向上、通信ネットワークの広帯域化により、動画、静止画をはじめとする大容量マルティメディア・データが諸所で取り扱われるようになり、これらの蓄積に好適な高速・大容量・高信頼性ストレージへのニーズが高まっている。特に、広帯域ネットワークを介した高品位動画配信は、今後、市場の急拡大が強く見込まれる分野であり、この蓄積に好適なストレージ・ソリューションの提供は急務である。
【０００３】
高速・大容量・高信頼性ストレージを実現する技術のひとつとして、Ｄ．Ｐａｔｔｅｒｓｏｎ等により提案されたＲＡＩＤが広く知られており（Ｄ．Ｐａｔｔｅｒｓｏｎ  ｅｔ  ａｌ．Ａ  Ｃａｓｅ  ｆｏｒ  Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ（ＲＡＩＤ）、ｉｎＡＣＭ、ＳＩＧＭＯＤ  Ｃｏｎｆｅｒｅｎｃｅ、Ｃｈｉｃａｇｏ、ＩＬ、Ｊｕｎｅ  １９８８）、上記技術を利用したディスクアレイ装置が製品化されている。
【０００４】
一般に、ディスクアレイ装置では、ディスク装置への書き込みデータを一旦、キャッシュメモリに格納し、その後、ディスク装置に書き込む。したがって、キャッシュメモリにディスク装置への書き込みが完了していないデータが存在する状態において、商用電源に瞬断、停電等の電源障害が発生すると、書き込みデータが消失する危険性がある。
【０００５】
そこで、無停電電源装置（以下、ＵＰＳ）を備え、電源障害発生時には、ＵＰＳに備えたバッテリーから供給される電力を用いて、キャッシュメモリに存在する書き込みデータをディスク装置に書き込む、いわゆるキャッシュ・フラッシュ等の終了処理を行ってから、ディスクアレイ装置を停止することが広く行われている。
【０００６】
その際に、消費電力を低減し、定格出力の小さなバッテリーを備えることを可能にする技術が提案されている。（特許文献１、特許文献２、特許文献３参照）
特開平１１−３２７８１１号公報には、バックアップディスクと非バックアップディスクが存在し、ＡＣ電源の電力供給が停止すると、補助電源が稼動し、ＡＣ電源の代わりに電力供給を行う段階を有するディスクアレイの制御方法において、前記バックアップディスクと前記非バックアップディスクを制御するコントローラから個々の前記ディスクの電源を投入切断するスイッチを備える段階と、バックアップディスクがバックアップ状態に移行したことにより、前記コントローラが前記非バックアップディスクの電源を切断する段階を有することを特徴とするディスクアレイの制御方法が提案されている。
【０００７】
また、特開２００−３５７０５９号公報には、複数の記憶媒体と、各記憶媒体へのアクセスを制御すると共にアクセスデータを一時的に格納するキャッシュメモリを有するディスク制御装置および停電発生時に給電を行うバックアップ電源を備えたディスクアレイ装置において、前記記憶媒体のユーザデータ領域とは別領域に形成されたキャッシュ退避領域と、前記停電発生時、前記キャッシュメモリの内容をそのまま前記記憶媒体のライトキャッシュ退避領域にコピーする高速書込み手段とを備えたことを特徴とするディスクアレイ装置、また、上記ディスクアレイ装置において、前記記憶媒体毎に設けられた電源供給オン／オフ手段と、前記停電発生時、前記キャッシュ退避領域を有しない記憶媒体に対応する前記電源オン／オフ手段をオフ制御する電源制御手段とを設けたことを特徴とするディスクアレイ装置が提案されている。
【０００８】
また、特許第２８５６３３６号公報には、ＣＰＵ等の上位装置に接続されて使用され、多くのディスク装置と、ディスクの回転やヘッドの位置およびデータ処理等を制御する制御装置とを有して、上位装置から転送されてくるデータを分割し、該分割データを同時にディスク装置毎に並列に授受するパラレル処理によりデータの読み書きを行うアレイディスク装置において、上記の多くのディスク装置を複数の該ディスク装置からなるグループ単位に分け、少なくとも一部のグループ相互間では、ヘッドが位置付けされたトラック位置を変えるためヘッドを移動させるシークの開始タイミングを異ならせるよう制御し、同一グループ内では、上記シークの開始タイミングをすべてのディスク装置について同じに、もしくは一部のディスク装置相互間で異ならせるよう制御する手段を上記制御装置に備えることを特徴とするアレイディスク装置が提案されている。
【特許文献１】特開平１１−３２７８１１号公報
【特許文献２】特開２００−３５７０５９号公報
【特許文献３】特許第２８５６３３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、特開平１１−３２７８１１号公報、または特開平１１−３２７８１１号公報では、キャッシュメモリに記憶したデータを複数のディスク装置に退避する場合に、データを退避するディスク装置、個々の制御方法について言及がなかった。終了処理を行う間、データを退避する複数のディスク装置を同時に動作させ続けるならば、その消費電力は無視できない値となり、定格出力の大きなバッテリーが必要となる。
【００１０】
また、上記提案では、キャッシュメモリに記憶したデータを退避するための特別なディスク装置、またはディスク装置もしくはディスクアレイ上の記憶領域を備えるため、ディスクアレイの容量効率が低下する。さらに、電源復帰時に、特別なディスク装置、または記憶領域に退避したデータを本来書き込むべきディスク装置に回復する処理が必要となり、装置復帰時間が増大する。
【００１１】
また、特許第２８５６３３６号公報では、ディスクアレイを構成する複数のディスク装置、個々の磁気ディスク媒体を回転するスピンドルモータと制御回路に供給する電力の制御に関して言及がない。終了処理を行う間、実施例にあるように、ディスクアレイを構成する複数のディスク装置の磁気ディスク媒体を回転するスピンドルモータと制御回路に電力を供給し続けるならば、その消費電力は無視できない値となり、定格出力の大きなバッテリーが必要となる。
【００１２】
さらに、上記提案では、ディスクアレイに、例えば、磁気ディスク媒体の回転数が異なる等、特性の異なるディスク装置が混在する場合、所望の効果を得るための制御が複雑になる。
【００１３】
そこで、本発明は、ディスクアレイ装置において、電源障害が発生し、無停電電源装置に備えたバッテリーから電力の供給を受けているとき、簡単な制御で、ディスクアレイの消費電力を低減することを目的としてなされた。
【００１４】
さらに、本発明は、ＲＡＩＤ構成された複数のディスク装置からなるディスクアレイを備えたディスクアレイ装置において、電源障害発生時にキャッシュメモリに記憶したデータを退避するための特別なディスク装置、またはディスク装置もしくはディスクアレイ上の記憶領域を備えることを必要とせずに、ディスクアレイの容量効率を向上し、また、電源復帰時の装置復帰時間を短縮することを目的としてなされた。
【課題を解決するための手段】
【００１５】
本発明では、上記課題を解決するため、複数の記憶装置をアレイ化してなる記憶装置アレイと、上記記憶装置アレイへのデータアクセスと電力の供給とを制御するアレイ制御手段と、上記記憶装置アレイに電力を供給する商用電源に異常が発生したとき、上記商用電源に異常が発生したことを通知する電源異常信号を上記アレイ制御手段に出力し、上記商用電源に代替して上記記憶装置アレイに電力を供給するバックアップ電源手段とを備えたアレイ型記憶装置において、上記アレイ制御手段に、上記電源異常信号を受信する電源異常信号受信手段と、上記電源異常信号受信手段により上記電源異常信号を受信すると、上記記憶装置アレイを構成する個々のまたは複数の記憶装置ごとに、互いに時間的に重複することなく、または互いに一部のみ時間的に重複して、電力の供給の開始とデータアクセスと電力の供給の停止とからなる一連の動作を行う記憶装置個別制御手段とを備えることを特徴とする。
【００１６】
また、本発明では、上記課題を解決するため、上記記憶装置個別制御手段は、ＲＡＩＤフォーマットされた記憶領域フォーマットに基づいて、上記データアクセスを行うこととしてもよい。
【００１７】
また、本発明では、上記課題を解決するため、上記アレイ制御手段に、さらに、上記記憶装置アレイへのデータアクセスに関する命令に対する応答を待機する許容時間を示す応答待機許容時間を記憶する応答待機許容時間記憶手段と、上記電源異常信号受信手段により上記電源異常信号を受信すると、上記応答待機許容時間記憶手段に記憶された上記応答待機許容時間を再設定する応答待機許容時間再設定手段とを備えてもよい。
【発明の効果】
【００１８】
以上、説明してきたように、本発明、請求項１によれば、アレイ型記憶装置において、電源障害が発生し、無停電電源装置に備えたバッテリーから電力の供給を受けているとき、簡単な制御で、記憶装置アレイの消費電力を低減すること可能となる。
【００１９】
請求項２によれば、さらに、ＲＡＩＤ構成された複数の記憶装置からなる記憶装置アレイを備えたアレイ型記憶装置において、電源障害発生時にキャッシュメモリに記憶したデータを退避するための特別な記憶装置、または記憶装置もしくは記憶装置アレイ上の記憶領域を備えることを必要とせずに、記憶装置アレイの容量効率を向上し、また、電源復帰時の装置復帰時間を短縮することが可能となる。
【００２０】
また、請求項３によれば、記憶装置アレイへのデータアクセスに関する命令に対する応答を待機する許容時間が規定されているアレイ型記憶装置において、上記効果を実現するアレイ型記憶装置を提供することが可能となる。
【発明を実施するための最良の形態】
【００２１】
（第１の実施形態）
図１に本発明になるディスクアレイ装置のブロック図を示す。ディスクアレイ装置はホスト装置１００、アレイコントローラ２００、ディスクアレイ３００、無停電電源装置（以下、ＵＰＳ）４００からなる。ホスト装置はＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、記憶装置インターフェース回路１０４、無停電電源装置インターフェース回路（以下、ＵＰＳ  Ｉ／Ｆ回路）１０５からなる。アレイコントローラ２００はＭＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、キャッシュメモリ２１０、パリティー演算回路２０４、ホスト装置インターフェース回路（以下、ホスト装置Ｉ／Ｆ回路）２０５、ハードディスクドライブインターフェース回路（以下、ＨＤＤ  Ｉ／Ｆ回路）２０６〜２０９からなる。ディスクアレイ３００はＲＡＩＤ５にて構成された複数のハードディスクドライブ（以下、ＨＤＤ）３０１〜３０４からなる。ＵＰＳ４００はバッテリー４０１を備える。
【００２２】
なお、本実施の形態では、記憶装置アレイを構成する記憶装置をＨＤＤとした形態について説明するが、本発明になるアレイ型記憶装置において、記憶装置アレイを構成する記憶装置は、ＨＤＤに限定されることなく、光ディスクドライブ、光磁気ディスクドライブ、さらには半導体記憶装置等、他の種類の記憶装置であってもよい。
【００２３】
ホスト装置１００は、アレイコントローラ２００にディスクアレイ３００のコンフィグレーションに関する命令、ディスクアレイ３００へ／からのデータの書き込み／読み出しに関する命令を発行する。また、アレイコントローラ２００にディスクアレイ３００への書き込みデータを転送する。
【００２４】
アレイコントローラ２００は、ホスト装置１００からの命令を受領すると、上記命令を解釈して、ディスクアレイ３００のコンフィグレーション、ディスクアレイ３００へ／からのデータの書き込み／読み出しを行う。アレイコントローラ２００は、ホスト装置１００からディスクアレイ３００へのデータ書き込み命令と書き込みデータとを受領すると、上記書き込みデータをまずキャッシュメモリ２１０に記憶し、その後、上記キャッシュメモリに記憶した書き込みデータをディスクアレイ３００の構成に基づいて再構成し、上記再構成したデータに対してパリティーデータを生成して、ディスクアレイ３００を構成するＨＤＤ３０１〜３０４の一部または全部にデータ書き込み命令を発行して、上記再構成したデータと上記パリティーデータとを分散して書き込む。また、ホスト装置１００からディスクアレイ３００からのデータ読み出し命令を受領すると、ディスクアレイ３００の構成に基づき、ＨＤＤ３０１〜３０４の一部または全部にデータ読み出し命令を発行して、キャッシュメモリ２１０にデータを読み出し、上記読み出したデータを再構成して、ホスト装置１００に転送する。
【００２５】
ＵＰＳ４００は、商用電源５００から電力の供給を受け、上記電力をホスト装置１００、アレイコントローラ２００、ＨＤＤ３０１〜３０４に供給する。しかし、商用電源５００に瞬断、停電等の電源障害が発生したときには、バッテリー４０１から電力を供給する。また、その際、ホスト装置１００に、商用電源５００に異常が発生したことを通知する電源異常通知信号を送信する。
【００２６】
以上、述べてきたことはディスクアレイ装置の一般的な動作である。以下、本発明になるディスクアレイ装置に特徴的な動作について説明する。
【００２７】
はじめに、商用電源５００に異常が発生したときのホスト装置１００の動作を図２のフローチャートを参照して説明する。
【００２８】
ホスト装置１００は、ステップＳ２０１において、ＵＰＳ４００から電源異常通知信号を受領すると、ステップＳ２０２において、アレイコントローラ２００に、電源異常時における終了処理を行うことを命令する電源異常終了処理命令を発行する。そして、ステップＳ２０３において、アレイコントローラ２００が終了処理を完了したことを通知する終了処理完了通知の受領を待機し、上記終了処理完了通知を受領すると、ステップＳ２０４において、アレイコントローラ２００への電力の供給を停止する。
【００２９】
次に、商用電源５００に異常が発生したときのアレイコントローラの動作を図３のフローチャートを参照して説明する。
【００３０】
アレイコントローラ２００は、ステップＳ３０１において、ホスト装置１００から電源異常終了処理命令を受領すると、ステップＳ３０２において、ＨＤＤ３０１〜３０４を停止する。
【００３１】
そして、ステップＳ３０３において、キャッシュメモリ２１０に存在し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきデータであって、書き込みが未完了のデータ、または、パリティー演算回路２０４にて生成し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータが存在するか否かを判別する。
【００３２】
ここで、ステップＳ３０３において、上記書き込みが未完了のデータ／パリティーデータが存在する場合、ステップＳ３０４において、ＨＤＤ３０１に対して、後述のステップＳ３０５〜Ｓ３１２における処理を開始する。一方、ステップＳ３０３において、上記書き込みが未完了のデータ／パリティーデータが存在しない場合、ステップＳ３１４において、ホスト放置１００に終了処理完了通知を発行する。
【００３３】
ステップＳ３０５において、ＨＤＤ３０１に、パリティーデータの生成のために、読み出すべきデータ／パリティーデータが存在するか否かを判別する。
【００３４】
ここで、ステップＳ３０５において、上記読み出すべきデータ／パリティーデータが存在する場合、ステップＳ３０９において、ＨＤＤ３０１を起動する。一方、ステップＳ３０５において、上記読み出すべきデータ／パリティーデータが存在しない場合、ステップＳ３０６において、キャッシュメモリ２１０に存在し、ＨＤＤ３０１に書き込むべきデータであって、書き込みが未完了のデータ、または、パリティー演算回路２０４にて生成し、ＨＤＤ３０１に書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータが存在するか否かを判別する。
【００３５】
ここで、ステップＳ３０６において、上記書き込みが未完了のデータ／パリティーデータが存在する場合、ステップＳ３０７において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在するか否かを判別する。一方、ステップＳ３０６において、上記書き込みが未完了のデータ／パリティーデータが存在しない場合、ステップＳ３１２〜Ｓ３１３において、ＨＤＤ３０２に対して、ステップＳ３０５〜Ｓ３１２における処理を開始する。
【００３６】
上記ステップＳ３０７において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在しない場合、ステップＳ３０９において、ＨＤＤ３０１を起動する。一方、上記ステップＳ３０７において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在する場合、ステップＳ３０８において、キャッシュメモリ２１０に現在、存在するデータ／パリティーデータから、上記パリティーデータの生成が可能か否かを判別する。
【００３７】
ここで、ステップＳ３０８において、上記パリティーデータの生成が可能である場合、ステップＳ３０９において、ＨＤＤ３０１を起動する。一方、ステップＳ３０８において、上記パリティーデータの生成が可能でない場合、ステップＳ３１２〜Ｓ３１３において、ＨＤＤ３０２に対して、ステップＳ３０５〜Ｓ３１２における処理を開始する。
【００３８】
上記ステップＳ３０９において、ＨＤＤ３０１が立ち上がると、ステップＳ３１０において、ＨＤＤ３０１に対して、後述のデータ／パリティーデータの読み出し／書き込み処理を行い、上記データ／パリティーデータ・読み出し／書き込み処理が完了すると、ステップＳ３１１において、ＨＤＤ３０１を停止し、ステップＳ３１２〜Ｓ３１３において、ＨＤＤ３０２に対して、ステップＳ３０５〜Ｓ３１２における処理を開始し、ステップＳ３０５〜Ｓ３１２において、ＨＤＤ３０２に対して、ＨＤＤ３０１に対するのと同様の処理を行う。さらに、以降、ＨＤＤ３０３、３０４に対しても同様の処理を行っていく。
【００３９】
そして、ステップＳ３１２において、ＨＤＤ３０４に対して、ステップＳ３０５〜Ｓ３１２における処理を完了したと判別すると、再び、ステップＳ３０３において、キャッシュメモリ２１０に存在し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきデータであって、書き込みが未完了のデータ、または、パリティー演算回路２０４にて生成し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータが存在するか否かを判別する。
【００４０】
ここで、ステップＳ３０３において、上記書き込みが未完了のデータ／パリティーデータが存在する場合、ステップＳ３０４において、ＨＤＤ３０１に対して、再びステップＳ３０５〜Ｓ３１２における処理を開始する。一方、ステップＳ３０３において、上記書き込みが未完了のデータ／パリティーデータが存在しない場合、ステップＳ３１４において、ホスト放置１００に終了処理完了通知を発行する。
【００４１】
次に、図４を参照して、上記ステップＳ３１０におけるデータ／パリティーデータ・読み出し／書き込み処理について説明する。
【００４２】
アレイコントローラ２００は、ステップＳ４０１において、前述ステップＳ３０４またはＳ３１３において指定されたＨＤＤ（以下、ＨＤＤｉ）に、パリティーデータの生成のために、読み出すべきデータ／パリティーデータが存在するか否かを判別し、上記読み出すべきデータ／パリティーデータが存在する場合、ステップＳ４０２において、ＨＤＤｉにデータ読み出し命令を発行し、上記読み出すべきデータ／パリティーデータを読み出す。
【００４３】
続いて、ステップＳ４０３において、キャッシュメモリ２１０に存在し、ＨＤＤｉに書き込むべきデータであって、書き込みが未完了のデータ、または、パリティー演算回路２０４にて生成し、ＨＤＤｉに書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータが存在するか否かを判別する。
【００４４】
ここで、ステップＳ４０３において、上記書き込みが未完了のデータ／パリティーデータが存在する場合、ステップＳ４０４において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在するか否かを判別する。一方、ステップＳ４０４において、上記書き込みが未完了のデータ／パリティーデータが存在しない場合、データ／パリティーデータ・読み出し／書き込み処理を終了する。
【００４５】
上記ステップＳ４０４において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在しない場合、ステップＳ４０７において、ＨＤＤｉにデータ書き込み命令を発行し、上記書き込みが未完了のデータをＨＤＤｉに書き込む。一方、上記ステップＳ４０４において、上記書き込みが未完了のデータ／パリティーデータには、パリティーデータが存在する場合、ステップＳ４０４において、キャッシュメモリ２１０に現在、存在するデータ／パリティーデータから、上記パリティーデータの生成が可能か否かを判別する。
【００４６】
ここで、ステップＳ４０５において、上記パリティーデータの生成が可能である場合、ステップＳ４０６において、パリティー演算回路２０４にて、上記パリティーデータを生成し、ステップＳ４０７において、ＨＤＤｉにデータ書き込み命令を発行し、上記書き込みが未完了のデータ／パリティーデータをＨＤＤｉに書き込む。一方、ステップＳ４０５において、上記パリティーデータの生成が可能でない場合、データ／パリティーデータ・読み出し／書き込み処理を終了する。
【００４７】
さらに、商用電源５００に異常が発生したときのアレイコントローラの動作を、図５〜１０の具体例を用いて説明する。
【００４８】
図５は、アレイコントローラ２００がホスト装置１００から電源異常終了処理命令を受領し、ＨＤＤ３０１〜３０４を停止した直後のディスクアレイ装置の状態を表わす。
【００４９】
ここでは、キャッシュメモリ２１０に存在し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきデータであって、書き込みが未完了のデータ、Ｄ００’、Ｄ０１’、Ｄ０２’、Ｄ１３’と、パリティー演算回路２０４にて生成し、ＨＤＤ３０１〜３０３のすくなくともいずれかひとつに書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータＰ０’、Ｐ１’が存在している。
【００５０】
なお、Ｄｍｎ’は、ディスクアレイ３００上の記憶領域おいて、ストライプＳｍ（ｍ＝０，１，２，…）、ＨＤＤ３０１，３０２，３０３，３０４（それぞれｎ＝０，１，２，３に対応）に割り当てられたブロックに書き込むべきデータを表し、Ｐｍ’はストライプＳｍにおいてパリティーデータに割り当てられたブロックに書き込むべきパリティーデータを表す。また、Ｄｍｎ’を書き込むべきブロックに格納されている旧データをＤｍｎと表す。
【００５１】
図５の状態において、アレイコントローラ２００は、ＨＤＤ３０１に、キャッシュメモリ２１０に存在し、ＨＤＤ３０１に書き込むべきデータであって、書き込みが未完了のデータＤ００’が存在するため、ＨＤＤ３０１を起動し、上記書き込みが未完了のデータＤ００’を書き込む（図６）。
【００５２】
続いて、ＨＤＤ３０１を停止し、ＨＤＤ３０２に、キャッシュメモリ２１０に存在し、ＨＤＤ３０２に書き込むべきデータであって、書き込みが未完了のデータＤ０１’が存在するため、ＨＤＤ３０２を起動し、上記書き込みが未完了のデータＤ０１’を書き込む（図７）。
【００５３】
続いて、ＨＤＤ３０２を停止し、ＨＤＤ３０３に、パリティーデータＰ１’の生成のために、読み出すべきパリティーデータＰ１が存在するため、ＨＤＤ３０３を起動し、上記読み出すべきパリティーデータＰ１を読み出し、さらに、ＨＤＤ３０３には、キャッシュメモリ２１０に存在し、ＨＤＤ３０３に書き込むべきデータであって、書き込みが未完了のデータＤ０２’が存在するので、上記書き込みが未完了のデータＤ０２’を書き込む（図８）。
【００５４】
続いて、ＨＤＤ３０３を停止し、ＨＤＤ３０４に、パリティーデータＰ１の生成のために、読み出すべきデータＤ１３が存在するため、ＨＤＤ３０３を起動し、上記読み出すべきデータＤ１３を読み出し、さらに、ＨＤＤ３０４には、キャッシュメモリ２１０に存在し、ＨＤＤ３０４に書き込むべきデータであって、書き込みが未完了のデータＤ１３’と、パリティー演算回路２０４にて生成し、ＨＤＤ３０４に書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータＰ０’とが存在するので、上記書き込みが未完了のデータＤ１３’を書き込むとともに、上記書き込みが未完了のパリティーデータＰ０’をパリティー演算回路２０４にて、Ｐ０’＝Ｄ０１’ｘｏｒＤ０２’ｘｏｒＤ０３’なる演算を行って生成し、書き込む（図９）。
【００５５】
続いて、ＨＤＤ３０４を停止し、ＨＤＤ３０３に、パリティー演算回路２０４にて生成し、ＨＤＤ３０４に書き込むべきパリティーデータであって、書き込みが未完了のパリティーデータＰ１’が存在するため、ＨＤＤ３０３を起動し、上記書き込みが未完了のパリティーデータＰ１’を、パリティー演算回路２０４にて、Ｐ１’＝Ｐ１ｘｏｒＤ１３’ｘｏｒＤ１３なる演算を行って生成し、書き込む（図１０）。
【００５６】
上述のようにして、アレイコントローラ２００は、キャッシュ・フラッシュを行うと、ホスト装置１００に終了処理完了通知を発行し、上記終了処理完了通知を受領したホスト装置１００は、アレイコントローラ２００への電力の供給を停止する。
【００５７】
以上、説明してきたように、本実施の形態によれば、ＲＡＩＤ５にて構成されたディスクアレイ３００を備えるディスクアレイ装置において、電源異常発生時に、ディスクアレイ３００を構成するＨＤＤ３０１〜３０４を個別に動作させながら、キャッシュ・フラッシュを行うことにより、簡単な制御で、ディスクアレイの消費電力を低減しながら、終了処理を行うことが可能となる。
【００５８】
さらに、本実施の形態によれば、ＲＡＩＤ５にてフォーマットされた記憶領域のフォーマットに基づいて、キャッシュ・フラッシュを行うことにより、電源障害発生時にキャッシュメモリに記憶したデータを退避するための特別なＨＤＤ、またはＨＤＤもしくはディスクアレイ上の記憶領域を備えることを必要とせずに、ディスクアレイの容量効率を向上し、また、電源復帰時の装置復帰時間を短縮することが可能となる。
【００５９】
なお、本実施の形態では、ディスクアレイ３００を構成するＨＤＤ３０１〜３０４を互いに時間的に重複することなく動作させながら、キャッシュ・フラッシュを行う形態としたが、バッテリー４０１の定格出力の範囲内で、ＨＤＤ３０１〜３０４を一部、時間的に重複して動作させもよい。この場合、本実施の形態と比較して、消費電力低減の効果は減少するものの、キャッシュ・フラッシュ処理の時間を短縮することが可能となる。
【００６０】
また、本発明は、ＲＡＩＤ５にて構成されたディスクアレイを備えるディスクアレイ装置に限定されることなく、あらゆるＲＡＩＤレベルまたはＪＢＯＤにて構成された記憶装置アレイを備えるアレイ型記憶装置に適用可能であり、その効果を発揮することが可能であることは言うまでもない。
【００６１】
（第２の実施の形態）
本実施の形態は、第１の実施の形態において、商用電源５００に異常が発生したときのホスト装置１００の動作が異なるものである。
【００６２】
そこで、商用電源５００に異常が発生したときのホスト装置１００の動作のみを図１１を用いて説明する。
【００６３】
ホスト装置１００は、ステップＳ２０１において、ＵＰＳ４００から電源異常通知信号を受領すると、ステップＳ１１０１において、ホスト装置１００がアレイコントローラ２００に対して発行した命令に対し、アレイコントローラ２００からの応答を待機する許容時間を規定する応答待機許容時間を通常より長時間に設定し、ステップＳ２０２において、アレイコントローラ２００に、電源異常時における終了処理を行うことを命令する電源異常終了処理命令を発行する。そして、ステップＳ２０３〜Ｓ１１０２において、上記応答待機許容時間の経過、またはアレイコントローラ２００が終了処理を完了したことを通知する終了処理完了通知の受領を待機し、上記応答待機許容時間が経過するか、または上記終了処理完了通知を受領すると、ステップＳ２０４において、アレイコントローラ２００への電力の供給を停止する。
【００６４】
本実施の形態によれば、アレイコントローラ２００に対して発行した命令に対し、アレイコントローラ２００からの応答を待機する応答待機許容時間が規定されているホスト装置１００を備えるディスクアレイ装置において、電源異常発生時に、ディスクアレイ３００を構成するＨＤＤ３０１〜３０４を個別に動作させながら、キャッシュ・フラッシュを行うことにより、簡単な制御で、ディスクアレイの消費電力を低減しながら、終了処理を行うことが可能となる。
【図面の簡単な説明】
【００６５】
【図１】本発明になるディスクアレイ装置のブロック図
【図２】ホスト装置１００の動作フローチャート
【図３】アレイコントローラ２００の動作フローチャート
【図４】データ／パリティーデータ・読み出し／書き込み処理を表すフローチャート
【図５】本発明になるディスクアレイ装置の動作具体例１
【図６】本発明になるディスクアレイ装置の動作具体例２
【図７】本発明になるディスクアレイ装置の動作具体例３
【図８】本発明になるディスクアレイ装置の動作具体例４
【図９】本発明になるディスクアレイ装置の動作具体例５
【図１０】本発明になるディスクアレイ装置の動作具体例６
【図１１】商用電源５００に異常が発生したときのホスト装置１００の動作をあらわすフローチャート
【符号の説明】
【００６６】
１００  ホスト装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  記憶装置Ｉ／Ｆ回路
２００  アレイコントローラ
２０１  ＭＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  パリティー演算回路
２０５  ホスト装置Ｉ／Ｆ回路
２０６〜２０９  ＨＤＤ  Ｉ／Ｆ回路
２１０  キャッシュメモリ
３００  ディスクアレイ
３０１〜３０４  ＨＤＤ
４００  ＵＰＳ
４０１  バッテリー
５００  商用電源
【図１】
2005352746.tif 000003
【図２】
2005352746.tif 000004
【図３】
2005352746.tif 000005
【図４】
2005352746.tif 000006
【図５】
2005352746.tif 000007
【図６】
2005352746.tif 000008
【図７】
2005352746.tif 000009
【図８】
2005352746.tif 000010
【図９】
2005352746.tif 000011
【図１０】
2005352746.tif 000012
【図１１】
2005352746.tif 000013