(57)【要約】【課題】本発明は、アクセス状況に基づいて記憶デバイスの電源供給を制御し、論理的記憶デバイスを電源供給モードの異なる物理的記憶デバイス間で移動させ、通電時間を短縮して信頼性を高める。【解決手段】  再配置計画作成部６は、アクセス頻度の高い論理ボリューム１Ｂを長時間通電モードのRAIDグループ１Ａに、アクセス頻度が中程度の論理ボリュームを第１短時間通電モードのRAIDグループに、アクセス頻度が少ない論理ボリュームを第２短時間通電モードのRAIDグループに、それぞれ配置させるべく再配置計画７を作成する。実行時期決定部８は、RAIDグループへのアクセス頻度に基づいて、再配置計画の実行時期を決定する。アクセス頻度の高いボリュームほど、電源供給時間の長いRAIDグループに配置され、アクセス頻度の低いボリュームほど、オンデマンドで電源が供給されるRAIDグループに配置される。【選択図】図１
2007164650.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのホスト装置及び複数の記憶デバイスに接続された記憶制御装置であって、
前記各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、
前記各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスと、
前記ホスト装置から前記各論理的記憶デバイスへのアクセス状況に基づいて、前記各物理的記憶デバイス及び前記各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するアクセス情報収集部と、
前記各物理的記憶デバイスに関する前記アクセス情報に基づいて、電源を供給するための電源供給モードを、前記各物理的記憶デバイス毎にそれぞれ設定する電源供給モード設定部と、
前記設定された電源供給モードに基づいて、前記各物理的記憶デバイスを構成する前記各記憶デバイスへの電源供給をそれぞれ制御する電源制御部と、
前記各論理的記憶デバイスに関する前記アクセス情報に基づいて、前記各論理的記憶デバイスを、前記電源供給モードの異なる前記各物理的記憶デバイス間で移動させるための再配置計画を作成する再配置計画作成部と、
前記作成された再配置計画の実行時期を設定する実行時期決定部と、
前記決定された実行時期が到来した場合には、前記作成された再配置計画に基づいて、前記各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させる再配置実行部と、
を備えた記憶制御装置。
【請求項２】
前記再配置計画作成部は、前記ホスト装置からのアクセスが相対的に少ないと判断された論理的記憶デバイスを、電源供給期間が相対的に短くなる電源供給モードに設定された物理的記憶デバイスに移動させるようにして、前記再配置計画を作成する請求項１に記載の記憶制御装置。
【請求項３】
前記再配置計画作成部は、前記ホスト装置からのアクセスが相対的に多いと判断された論理的記憶デバイスを、電源供給期間が相対的に長くなる電源供給モードに設定された物理的記憶デバイスに移動させるようにして、前記再配置計画を作成する請求項１に記載の記憶制御装置。
【請求項４】
前記電源供給モード設定部は、前記各物理的記憶デバイスに関するアクセス情報に基づいて、前記各物理的記憶デバイスへのアクセス頻度をそれぞれ算出し、この算出されたアクセス頻度が相対的に多い物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に長くなる長時間通電モードを設定し、前記算出されたアクセス頻度が相対的に少ない物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に短くなる短時間通電モードを設定する請求項１に記載の記憶制御装置。
【請求項５】
前記再配置計画作成部は、前記各論理的記憶デバイスに関するアクセス情報に基づいて、前記各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、この算出されたアクセス頻度が相対的に多い論理的記憶デバイスの移動先として、前記長時間通電モードに設定された物理的記憶デバイスを選択し、前記算出されたアクセス頻度が相対的に少ない論理的記憶デバイスの移動先として、前記短時間通電モードに設定された物理的記憶デバイスを選択するように、前記再配置計画を作成する請求項４に記載の記憶制御装置。
【請求項６】
前記再配置計画作成部は、前記各物理的記憶デバイスに関するアクセス情報及び前記各論理的記憶デバイスに関するアクセス情報に基づいて、移動先として選択された電源供給モードを有する物理的記憶デバイスが複数存在する場合には、該各物理的記憶デバイスのうち、前記論理的記憶デバイスへのアクセスパターンと最も一致するアクセスパターンを有する物理的記憶デバイスを移動先の物理的記憶デバイスとして選択する請求項５に記載の記憶制御装置。
【請求項７】
前記短時間通電モードは、前記ホスト装置からアクセスを要求された場合にのみ電源を供給させるモードとして設定されている請求項４に記載の記憶制御装置。
【請求項８】
前記短時間通電モードは、第１短時間通電モードと、この第１短時間通電モードよりも電源供給期間が相対的に短くなる第２短時間通電モードとを含んでいる請求項４に記載の記憶制御装置。
【請求項９】
前記電源供給モード設定部は、前記各物理的記憶デバイスに関するアクセス情報に基づいて、常時通電する長時間通電モードと、所定の場合のみ通電する第１短時間通電モードと、この第１短時間通電モードよりも電源供給期間が相対的に短くなる第２短時間通電モードとの少なくとも３つの電源供給モードを設定可能となっており、かつ、
前記再配置計画作成部は、前記各論理的記憶デバイスに関するアクセス情報に基づいて、前記各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、
（１）前記論理的記憶デバイスについて算出されたアクセス頻度が予め設定された第１閾値以上の場合は、この論理的記憶デバイスの移動先として、前記長時間通電モードに設定されている物理的記憶デバイスを選択し、
（２）前記論理的記憶デバイスについて算出されたアクセス頻度が前記第１閾値と予め設定された第２閾値（第１閾値＞第２閾値）との間に存在する場合は、この論理的記憶デバイスの移動先として、前記第１短時間通電モードに設定されている物理的記憶デバイスを選択し、
（３）前記論理的記憶デバイスについて算出されたアクセス頻度が前記第２閾値未満の場合は、この論理的記憶デバイスの移動先として、前記第２短時間通電モードに設定されている物理的記憶デバイスを選択する、請求項１に記載の記憶制御装置。
【請求項１０】
前記電源制御部は、前記各物理的記憶デバイスに関するアクセス情報に基づいて、所定時間以上アクセスされていない物理的記憶デバイスを構成する各記憶デバイスへの電源供給を停止させる請求項１に記載の記憶制御装置。
【請求項１１】
前記電源制御部は、電源供給が停止されている前記物理的記憶デバイスに関するアクセスが検出された場合には、この物理的記憶デバイスを構成する各記憶デバイスにそれぞれ電源を供給する請求項１に記載の記憶制御装置。
【請求項１２】
前記実行時期決定部は、前記移動元の物理的記憶デバイスに関するアクセス情報及び前記移動先の物理的記憶デバイスに関するアクセス情報に基づいて、前記移動元の物理的記憶デバイス及び前記移動先の物理的記憶デバイスへのアクセス頻度が相対的に少なくなる低負荷の時間帯を検出し、この検出された低負荷の時間帯に前記実行時期を設定するようになっている請求項１に記載の記憶制御装置。
【請求項１３】
前記実行時期決定部は、前記移動元の物理的記憶デバイスに関する低負荷の時間帯と前記移動先の物理的記憶デバイスに関する低負荷の時間帯とが重なる共通の時間帯であって、かつ、前記再配置対象の論理的記憶デバイスに記憶されているデータの転送に必要な転送時間以上の長さを有する時間帯に、前記実行時期を設定する請求項１２に記載の記憶制御装置。
【請求項１４】
新たな論理的記憶デバイスを生成する場合には、前記長時間通電モードに設定されている物理的記憶デバイスが選択される請求項４に記載の記憶制御装置。
【請求項１５】
前記論理的記憶デバイスについて、この論理的記憶デバイスが所属すべき物理的記憶デバイスの種類を指定する指定情報が予め設定されている場合には、この論理的記憶デバイスを配置する物理的記憶デバイスを、前記指定情報に示された電源供給モードを有する物理的記憶デバイスに固定する請求項１に記載の記憶制御装置。
【請求項１６】
前記再配置計画作成部は、前記論理的記憶デバイスの配置先を前記長時間通電モードに設定された物理的記憶デバイスに固定するための指定情報が該論理的記憶デバイスに予め設定されている場合には、この指定情報が設定された論理的記憶デバイスの配置先を、前記長時間通電モードに設定されている物理的記憶デバイスに固定し、前記短時間通電モードに設定されている物理的記憶デバイスには移動させないようになっている請求項４に記載の記憶制御装置。
【請求項１７】
前記指定情報は、外部のコンピュータ端末から設定可能である請求項１６に記載の記憶制御装置。
【請求項１８】
ホスト装置との間の通信を行うための上位通信インターフェース部と、
複数の記憶デバイスとの間の通信を行うための下位通信インターフェース部と、
前記上位通信インターフェース部及び前記下位通信インターフェース部を用いて、前記ホスト装置と前記各記憶デバイスとの間のデータ授受を制御する制御部と、
前記各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、
前記各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスと、を備え、
（１）前記制御部は、
（1-1）前記ホスト装置から前記各論理的記憶デバイスへのアクセス状況に基づいて、前記各物理的記憶デバイス及び前記各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するアクセス情報収集部と、
（1-2）前記各物理的記憶デバイスに関する前記アクセス情報に基づいて、電源を供給するための電源供給モードを、前記各物理的記憶デバイス毎にそれぞれ設定する電源供給モード設定部と、
（1-3）前記設定された電源供給モードに基づいて、前記各物理的記憶デバイスを構成する前記各記憶デバイスへの電源供給をそれぞれ制御する電源制御部と、
（1-4）前記各論理的記憶デバイスに関するアクセス情報に基づいて、前記各論理的記憶デバイスを、前記電源供給モードの異なる前記各物理的記憶デバイス間で移動させるための再配置計画を作成する再配置計画作成部と、
（1-5）前記作成された再配置計画の実行時期を設定する実行時期決定部と、
（1-6）前記決定された実行時期が到来した場合には、前記作成された再配置計画に基づいて、前記各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させる再配置実行部と、
を備え、
（２）前記電源供給モード設定部は、前記各物理的記憶デバイスに関するアクセス情報に基づいて、前記各物理的記憶デバイスへのアクセス頻度をそれぞれ算出し、
（2-1）この算出されたアクセス頻度が相対的に多い物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に長くなる長時間通電モードを設定し、
（2-2）前記算出されたアクセス頻度が相対的に少ない物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に短くなる短時間通電モードを設定するようになっており、
（３）前記再配置計画作成部は、前記各論理的記憶デバイスに関するアクセス情報に基づいて、前記各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、
（3-1）この算出されたアクセス頻度が相対的に多い論理的記憶デバイスの移動先として、前記長時間通電モードに設定された物理的記憶デバイスを選択し、
（3-2）前記算出されたアクセス頻度が相対的に少ない論理的記憶デバイスの移動先として、前記短時間通電モードに設定された物理的記憶デバイスを選択し、
（3-3）かつ、移動先として選択された電源供給モードを有する物理的記憶デバイスが複数存在する場合には、前記各物理的記憶デバイスに関するアクセス情報及び前記各論理的記憶デバイスに関するアクセス情報に基づいて、該各物理的記憶デバイスのうち、前記論理的記憶デバイスへのアクセスパターンと最も一致するアクセスパターンを有する物理的記憶デバイスを選択するように、前記再配置計画を作成し、
（４）前記電源制御部は、前記各物理的記憶デバイスに関するアクセス情報に基づいて、（4-1）所定時間以上アクセスされていない物理的記憶デバイスを構成する各記憶デバイスへの電源供給を停止させ、
（4-2）電源供給が停止されている前記物理的記憶デバイスに関するアクセスが検出された場合には、この物理的記憶デバイスを構成する各記憶デバイスにそれぞれ電源を供給するようになっており、
（５）前記実行時期決定部は、前記移動元の物理的記憶デバイスに関するアクセス情報及び前記移動先の物理的記憶デバイスに関するアクセス情報に基づいて、前記移動元の物理的記憶デバイスに関する低負荷の時間帯と前記移動先の物理的記憶デバイスに関する低負荷の時間帯とが重なる共通の時間帯であって、かつ、前記再配置対象の論理的記憶デバイスに記憶されているデータの転送に必要な転送時間以上の長さを有する時間帯に、前記実行時期を設定するようになっている記憶制御装置。
【請求項１９】
少なくとも一つのホスト装置及び複数の記憶デバイスに接続された記憶制御装置の制御方法であって、
前記各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、
前記各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスとが設けられており、
前記ホスト装置から前記各論理的記憶デバイスへのアクセス要求を、前記ホスト装置から受信したコマンドに応じて処理するステップと、
前記アクセス要求に基づいて、前記各物理的記憶デバイス及び前記各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するステップと、
前記各物理的記憶デバイスに関する前記アクセス情報に基づいて、電源を供給するための電源供給モードを、前記各物理的記憶デバイス毎にそれぞれ設定するステップと、
前記設定された電源供給モードに基づいて、前記各物理的記憶デバイスを構成する前記各記憶デバイスへの電源供給をそれぞれ制御するステップと、
前記各論理的記憶デバイスに関するアクセス情報に基づいて、前記各論理的記憶デバイスを、前記電源供給モードの異なる前記各物理的記憶デバイス間で移動させるための再配置計画を作成するステップと、
前記作成された再配置計画の実行時期を設定するステップと、
前記決定された実行時期が到来した場合には、前記作成された再配置計画に基づいて、前記各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させるステップと、
を含んだ記憶制御装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶制御装置及び記憶制御装置の制御方法に関する。
【背景技術】
【０００２】
記憶制御装置は、例えば、ハードディスクドライブ等の記憶デバイスをアレイ状に配設して構成されており、例えば、RAID（Redundant Array of Independent Disks）に基づく記憶領域をホストコンピュータ（以下、ホストと略記する場合がある）提供する。記憶デバイス群が提供する物理的な記憶領域上（物理的記憶デバイス）には、少なくとも１つ以上の論理ボリューム（論理的記憶デバイス）が形成され、この論理ボリュームがホストに提供される。ホストは、所定のコマンドを送信することにより、論理ボリュームに対してデータの書込み、読出しを行う。
【０００３】
種々の法規制により、企業等では、電子メールデータや契約データ、売上げデータ、顧客データ等の種々のデータを一定期間保存する必要がある。そして、監査等のために必要な場合は、保存したデータに速やかにアクセスしなければならない。
【０００４】
多量のデータを保存するために、テープデバイスが比較的広く用いられている。しかし、テープデバイスを用いた場合は、所望のデータが記憶されている磁気テープを倉庫から運び出して、この磁気テープを読み取り装置にセットする必要があり、保存データに迅速にアクセスすることができない。
【０００５】
ところで、近年では、比較的安価なハードディスクドライブとして、SATA（Serial AT Attachment）インターフェースを備えるSATAディスクが普及し始めている。そこで、テープデバイスに代えて、SATAディスクをデータ保存用のデバイスとして使用する記憶制御装置が登場している。
【０００６】
しかし、SATAディスクは、FC（Fibre Channel）インターフェースを有するFCディスクに比べると信頼性の面で劣るため、記憶制御装置の可用性の点では改善の余地がある。そこで、記憶制御装置に搭載されたハードディスクドライブの電源を個別にオンオフ制御する技術も提案されている（特許文献１）。
【特許文献１】米国特許出願公開第２００４／００５４９３９号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前記文献に記載の技術では、ディスクドライブが使用される場合には電源をオンにし、ディスクドライブが使用されない場合には電源をオフすることにより、ハードディスクドライブの通電時間を短縮し、信頼性の改善を図っている。
【０００８】
しかし、ホストは、各ディスクドライブを意識してアクセスするわけではなく、論理ボリュームをアクセス対象としてアクセスする。また、同一のディスクドライブ群に性質の異なる複数種類の論理ボリュームが設定されることもある。従って、単純に各ディスクドライブ単位で個別に電源をオンオフさせるだけでは、各ハードディスクドライブの通電時間を短縮できない可能性が高い。
【０００９】
例えば、アクセス頻度が比較高いデータを記憶する論理ボリュームとアクセス頻度が比較的少ない論理ボリュームとが、同一のディスクドライブ群を利用している場合、そのディスクドライブ群の電源をオフする機会は、少なくなる。従来技術では、ディスクドライブに記憶されるデータの性質やデータ配置に関する考察が不足しており、ディスクドライブの通電時間（稼働時間）を短縮するのは難しい。
【００１０】
本発明は、上記の問題点に鑑みてなされたもので、その目的は、記憶デバイスへの通電時間を少なくして信頼性を向上できるようにした記憶制御装置及び記憶制御装置の制御方法を提供することにある。本発明の他の目的は、物理的記憶デバイスのアクセス状況に基づいて各記憶デバイスの電源供給を制御すると共に、論理的記憶デバイスのアクセス状況に基づいて、論理的記憶デバイスを電源供給モードの異なる物理的記憶デバイス間で移動させることにより、各記憶デバイスの通電時間を短縮し、信頼性を高め、電力消費を低減できるようにした記憶制御装置及び記憶制御装置の制御方法を提供することにある。本発明の他の目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【００１１】
上記課題を解決すべく、本発明の一つの観点に従う記憶制御装置は、少なくとも一つのホスト装置及び複数の記憶デバイスに接続された記憶制御装置であって、各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスと、ホスト装置から各論理的記憶デバイスへのアクセス状況に基づいて、各物理的記憶デバイス及び各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するアクセス情報収集部と、各物理的記憶デバイスに関するアクセス情報に基づいて、電源を供給するための電源供給モードを、各物理的記憶デバイス毎にそれぞれ設定する電源供給モード設定部と、設定された電源供給モードに基づいて、各物理的記憶デバイスを構成する各記憶デバイスへの電源供給をそれぞれ制御する電源制御部と、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスを、電源供給モードの異なる各物理的記憶デバイス間で移動させるための再配置計画を作成する再配置計画作成部と、作成された再配置計画の実行時期を設定する実行時期決定部と、決定された実行時期が到来した場合には、作成された再配置計画に基づいて、各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させる再配置実行部と、を備える。
【００１２】
記憶デバイスは、ホスト装置により使用されるユーザデータ等を記憶するものであり、例えば、ハードディスクドライブ、半導体メモリドライブ、光ディスクドライブ、光磁気ディスクドライブ等を挙げることができる。
【００１３】
RAIDレベルによっても相違するが、所定数の記憶デバイスによって物理的記憶デバイスが構成される。例えば、３個や５個等の複数のデータディスクと１個のパリティディスクとにより、冗長構成を備えた物理的記憶領域を作成できる。複数の記憶デバイスがそれぞれ有する記憶領域の上に形成された記憶領域を、本明細書では「RAIDグループ」または「物理的記憶デバイス」と呼ぶ。物理的記憶デバイスには、一つまたは複数の論理的記憶デバイスを設けることができる。論理的記憶デバイスは、ホスト装置からのアクセス対象であり、論理ボリュームとも呼ばれる。例えば、物理的記憶デバイスを所定サイズで区切ることにより、複数の論理的記憶デバイスを設定可能である。具体的には、例えば、それぞれ２５０ＧＢのサイズを有する４個のデータディスク及び１個のパリティディスクとによって、総容量１０００ＧＢ（＝２５０×４）の物理的記憶デバイスが作成された場合、それぞれ２００ＧＢずつの論理的記憶デバイスを合計５個設定可能である。
【００１４】
そして、ホスト装置は、論理的記憶デバイスをアクセス対象として、データの読み書きを行う。ホスト装置は、データを読み出す場合にはリードコマンドを発行し、データを書き込む場合にはライトコマンドを発行する。
【００１５】
アクセス情報収集部は、ホスト装置から発行されたコマンド（アクセス要求）を検出することにより、各論理的記憶デバイスに何時アクセス要求が生じたか否かを示すアクセス情報を収集する。また、各論理的記憶デバイスは、上述のように物理的記憶デバイスに設けられているため、各論理的記憶デバイスへのアクセス要求を検出することにより、各物理的記憶デバイス単位でのアクセス情報（いつアクセスされたか等）を収集することができる。
【００１６】
電源供給モード設定部は、各物理的記憶デバイスに関するアクセス情報に基づいて、各物理的記憶デバイス毎に、電源供給モードをそれぞれ設定する。例えば、電源供給モード設定部は、比較的頻繁にアクセスされる物理的記憶デバイスには常時通電させるモードを設定し、アクセスの少ない物理的記憶デバイスには電源供給を停止させるモードを設定することができる。電源制御部は、このようにして予め設定された電源供給モードに従って、各物理的記憶デバイスへの電源供給をそれぞれ制御する。
【００１７】
さらに、再配置計画作成部は、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスを、電源供給モードの異なる各物理的記憶デバイス間で移動させるための再配置計画を作成する。即ち、再配置計画作成部は、論理的記憶デバイスへのアクセス状況に応じて、データマイグレーションを行うための計画を作成する。
【００１８】
例えば、再配置計画作成部は、アクセス頻度の高いデータを有する論理的記憶デバイスを、常時または長時間通電される物理的記憶デバイスに配置させるための計画を作成することができる。また、再配置計画作成部は、アクセス頻度の低いデータを有する論理的記憶デバイスを、必要な場合にのみ通電される物理的記憶デバイスに配置させるための計画を作成することができる。
【００１９】
実行時期決定部は、再配置計画の実行時期を決定する。例えば、実行時期決定部は、データの再配置が記憶制御装置の性能に影響を与えない時間帯を見計らって、実行時期を選定可能である。そして、決定された時期になると、再配置実行部は、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスに、論理的記憶デバイスを移動させる。
【００２０】
論理的記憶デバイスを再配置することにより、アクセス状況の種類（アクセスパターン）毎に、論理的記憶デバイスは所定の電源供給モードに設定された物理的記憶デバイスに集められる。例えば、アクセス頻度の高い論理的記憶デバイスは、比較的長時間通電される物理的記憶デバイスに集められ、アクセス頻度の低い論理的記憶デバイスは、必要な場合にのみ通電される物理的記憶デバイスに集められる。従って、物理的記憶デバイスへの不要な電源供給を抑制して、記憶デバイスが故障する可能性を低減し、記憶制御装置の信頼性を向上させ、かつ、記憶制御装置の電力消費量を少なくすることができる。
【００２１】
本発明の実施形態では、再配置計画作成部は、ホスト装置からのアクセスが相対的に少ないと判断された論理的記憶デバイスを、電源供給期間が相対的に短くなる電源供給モードに設定された物理的記憶デバイスに移動させるようにして、再配置計画を作成するようになっている。
【００２２】
本発明の実施形態では、再配置計画作成部は、ホスト装置からのアクセスが相対的に多いと判断された論理的記憶デバイスを、電源供給期間が相対的に長くなる電源供給モードに設定された物理的記憶デバイスに移動させるようにして、再配置計画を作成するようになっている。
【００２３】
本発明の実施形態では、電源供給モード設定部は、各物理的記憶デバイスに関するアクセス情報に基づいて、各物理的記憶デバイスへのアクセス頻度をそれぞれ算出し、この算出されたアクセス頻度が相対的に多い物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に長くなる長時間通電モードを設定し、算出されたアクセス頻度が相対的に少ない物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に短くなる短時間通電モードを設定する。
【００２４】
本発明の実施形態では、再配置計画作成部は、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、この算出されたアクセス頻度が相対的に多い論理的記憶デバイスの移動先として、長時間通電モードに設定された物理的記憶デバイスを選択し、算出されたアクセス頻度が相対的に少ない論理的記憶デバイスの移動先として、短時間通電モードに設定された物理的記憶デバイスを選択するように、再配置計画を作成する。
【００２５】
本発明の実施形態では、再配置計画作成部は、各物理的記憶デバイスに関するアクセス情報及び各論理的記憶デバイスに関するアクセス情報に基づいて、移動先として選択された電源供給モードを有する物理的記憶デバイスが複数存在する場合には、該各物理的記憶デバイスのうち、論理的記憶デバイスへのアクセスパターンと最も一致するアクセスパターンを有する物理的記憶デバイスを移動先の物理的記憶デバイスとして選択する。
【００２６】
本発明の実施形態では、短時間通電モードは、ホスト装置からアクセスを要求された場合にのみ電源を供給させるモードとして設定されている。
【００２７】
本発明の実施形態では、短時間通電モードは、第１短時間通電モードと、この第１短時間通電モードよりも電源供給期間が相対的に短くなる第２短時間通電モードとを含んで構成される。
【００２８】
本発明の実施形態では、電源供給モード設定部は、各物理的記憶デバイスに関するアクセス情報に基づいて、常時通電する長時間通電モードと、所定の場合のみ通電する第１短時間通電モードと、この第１短時間通電モードよりも電源供給期間が相対的に短くなる第２短時間通電モードとの少なくとも３つの電源供給モードを設定可能となっており、かつ、再配置計画作成部は、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、（１）論理的記憶デバイスについて算出されたアクセス頻度が予め設定された第１閾値以上の場合は、この論理的記憶デバイスの移動先として、長時間通電モードに設定されている物理的記憶デバイスを選択し、（２）論理的記憶デバイスについて算出されたアクセス頻度が第１閾値と予め設定された第２閾値（第１閾値＞第２閾値）との間に存在する場合は、この論理的記憶デバイスの移動先として、第１短時間通電モードに設定されている物理的記憶デバイスを選択し、（３）論理的記憶デバイスについて算出されたアクセス頻度が第２閾値未満の場合は、この論理的記憶デバイスの移動先として、第２短時間通電モードに設定されている物理的記憶デバイスを選択する。
【００２９】
本発明の実施形態では、電源制御部は、各物理的記憶デバイスに関するアクセス情報に基づいて、所定時間以上アクセスされていない物理的記憶デバイスを構成する各記憶デバイスへの電源供給を停止させる。
【００３０】
本発明の実施形態では、電源制御部は、電源供給が停止されている物理的記憶デバイスに関するアクセスが検出された場合には、この物理的記憶デバイスを構成する各記憶デバイスにそれぞれ電源を供給する。
【００３１】
本発明の実施形態では、実行時期決定部は、移動元の物理的記憶デバイスに関するアクセス情報及び移動先の物理的記憶デバイスに関するアクセス情報に基づいて、移動元の物理的記憶デバイス及び移動先の物理的記憶デバイスへのアクセス頻度が相対的に少なくなる低負荷の時間帯を検出し、この検出された低負荷の時間帯に実行時期を設定するようになっている。
【００３２】
本発明の実施形態では、実行時期決定部は、移動元の物理的記憶デバイスに関する低負荷の時間帯と移動先の物理的記憶デバイスに関する低負荷の時間帯とが重なる共通の時間帯であって、かつ、再配置対象の論理的記憶デバイスに記憶されているデータの転送に必要な転送時間以上の長さを有する時間帯に、実行時期を設定する。
【００３３】
本発明の実施形態では、新たな論理的記憶デバイスを生成する場合には、長時間通電モードに設定されている物理的記憶デバイスが選択される。
【００３４】
本発明の実施形態では、論理的記憶デバイスについて、この論理的記憶デバイスが所属すべき物理的記憶デバイスの種類を指定する指定情報が予め設定されている場合には、この論理的記憶デバイスを配置する物理的記憶デバイスを、指定情報に示された電源供給モードを有する物理的記憶デバイスに固定する。
【００３５】
本発明の実施形態では、再配置計画作成部は、論理的記憶デバイスの配置先を長時間通電モードに設定された物理的記憶デバイスに固定するための指定情報が該論理的記憶デバイスに予め設定されている場合には、この指定情報が設定された論理的記憶デバイスの配置先を、長時間通電モードに設定されている物理的記憶デバイスに固定し、短時間通電モードに設定されている物理的記憶デバイスには移動させないようになっている。
【００３６】
本発明の実施形態では、指定情報は、外部のコンピュータ端末から設定できるようになっている。
【００３７】
本発明の他の観点に従う記憶制御装置は、ホスト装置との間の通信を行うための上位通信インターフェース部と、複数の記憶デバイスとの間の通信を行うための下位通信インターフェース部と、上位通信インターフェース部及び下位通信インターフェース部を用いて、ホスト装置と各記憶デバイスとの間のデータ授受を制御する制御部と、各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスと、を備えている。
【００３８】
そして、（１）制御部は、（1-1）ホスト装置から各論理的記憶デバイスへのアクセス状況に基づいて、各物理的記憶デバイス及び各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するアクセス情報収集部と、（1-2）各物理的記憶デバイスに関するアクセス情報に基づいて、電源を供給するための電源供給モードを、各物理的記憶デバイス毎にそれぞれ設定する電源供給モード設定部と、（1-3）設定された電源供給モードに基づいて、各物理的記憶デバイスを構成する各記憶デバイスへの電源供給をそれぞれ制御する電源制御部と、（1-4）各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスを、電源供給モードの異なる各物理的記憶デバイス間で移動させるための再配置計画を作成する再配置計画作成部と、（1-5）作成された再配置計画の実行時期を設定する実行時期決定部と、（1-6）決定された実行時期が到来した場合には、作成された再配置計画に基づいて、各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させる再配置実行部と、を備える。
【００３９】
さらに、（２）電源供給モード設定部は、各物理的記憶デバイスに関するアクセス情報に基づいて、各物理的記憶デバイスへのアクセス頻度をそれぞれ算出し、（2-1）この算出されたアクセス頻度が相対的に多い物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に長くなる長時間通電モードを設定し、（2-2）算出されたアクセス頻度が相対的に少ない物理的記憶デバイスを構成する各記憶デバイスには、電源供給期間が相対的に短くなる短時間通電モードを設定するようになっている。
【００４０】
また、（３）再配置計画作成部は、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスへのアクセス頻度をそれぞれ算出し、（3-1）この算出されたアクセス頻度が相対的に多い論理的記憶デバイスの移動先として、長時間通電モードに設定された物理的記憶デバイスを選択し、（3-2）算出されたアクセス頻度が相対的に少ない論理的記憶デバイスの移動先として、短時間通電モードに設定された物理的記憶デバイスを選択し、（3-3）かつ、移動先として選択された電源供給モードを有する物理的記憶デバイスが複数存在する場合には、各物理的記憶デバイスに関するアクセス情報及び各論理的記憶デバイスに関するアクセス情報に基づいて、該各物理的記憶デバイスのうち、論理的記憶デバイスへのアクセスパターンと最も一致するアクセスパターンを有する物理的記憶デバイスを選択するように、前記再配置計画を作成する。
【００４１】
そして、（４）電源制御部は、各物理的記憶デバイスに関するアクセス情報に基づいて、（4-1）所定時間以上アクセスされていない物理的記憶デバイスを構成する各記憶デバイスへの電源供給を停止させ、（4-2）電源供給が停止されている物理的記憶デバイスに関するアクセスが検出された場合には、この物理的記憶デバイスを構成する各記憶デバイスにそれぞれ電源を供給するようになっており、（５）実行時期決定部は、移動元の物理的記憶デバイスに関するアクセス情報及び移動先の物理的記憶デバイスに関するアクセス情報に基づいて、移動元の物理的記憶デバイスに関する低負荷の時間帯と移動先の物理的記憶デバイスに関する低負荷の時間帯とが重なる共通の時間帯であって、かつ、再配置対象の論理的記憶デバイスに記憶されているデータの転送に必要な転送時間以上の長さを有する時間帯に、実行時期を設定する。
【００４２】
本発明のさらに別の観点に従う記憶制御装置の制御方法は、少なくとも一つのホスト装置及び複数の記憶デバイスに接続された記憶制御装置の制御方法であって、各記憶デバイスのうち所定数の記憶デバイスの記憶領域からそれぞれ構成される複数の物理的記憶デバイスと、各物理的記憶デバイスの記憶領域にそれぞれ少なくとも一つ以上設定可能な論理的記憶デバイスとが設けられており、ホスト装置から各論理的記憶デバイスへのアクセス要求を、ホスト装置から受信したコマンドに応じて処理するステップと、アクセス要求に基づいて、各物理的記憶デバイス及び各論理的記憶デバイスに関するアクセス情報をそれぞれ収集するステップと、各物理的記憶デバイスに関するアクセス情報に基づいて、電源を供給するための電源供給モードを、各物理的記憶デバイス毎にそれぞれ設定するステップと、設定された電源供給モードに基づいて、各物理的記憶デバイスを構成する各記憶デバイスへの電源供給をそれぞれ制御するステップと、各論理的記憶デバイスに関するアクセス情報に基づいて、各論理的記憶デバイスを、電源供給モードの異なる各物理的記憶デバイス間で移動させるための再配置計画を作成するステップと、作成された再配置計画の実行時期を設定するステップと、決定された実行時期が到来した場合には、作成された再配置計画に基づいて、各論理的記憶デバイスのうち再配置対象とされた論理的記憶デバイスを、移動元の物理的記憶デバイスから移動先の物理的記憶デバイスへ移動させるステップと、を含む。
【００４３】
本発明の構成の少なくとも一部は、コンピュータシステムにより実行されるコンピュータプログラムとして構成可能である。このコンピュータプログラムは、例えば、各種記憶媒体に固定して配布等することができ、あるいは、通信ネットワークを介して送信することもできる。
【発明を実施するための最良の形態】
【００４４】
図１は、本発明の実施形態の全体概要を示す構成説明図である。本実施形態では、以下に述べるように、各RAIDグループの使用状況に応じて適切な電源制御を行うと共に、電源供給モードの異なる複数のRAIDグループ間で適切にボリュームを配置する。このような階層制御を行うことにより、本実施形態では、ディスクドライブの稼働時間をできるだけ短縮して、ディスクドライブの寿命を長くすることができる。この結果、記憶制御装置の信頼性及び電力消費が改善される。
【００４５】
図１には、記憶制御装置の主要な機能構成が示されている。記憶制御装置は、例えば、複数のディスクドライブ１と、アクセス制御部２と、アクセス情報収集部３と、電源供給モード設定部４と、電源制御部５と、再配置計画作成部６と、実行時期決定部８と、再配置実行部９とを備えることができる。ここで、アクセス制御部２と、アクセス情報収集部３と、電源供給モード設定部４と、電源制御部５と、再配置計画作成部６と、実行時期決定部８と、再配置実行部９とは、マイクロコンピュータを有するコントローラの機能としてそれぞれ実現可能である。
【００４６】
ディスクドライブ１は、「記憶デバイス」に該当する。ディスクドライブ１は、必ずしもディスクを回転させる方式の記憶デバイスである必要はない。例えば、ハードディスクドライブのほかにも、半導体メモリドライブ等のように構成可能である。
【００４７】
各ディスクドライブ１の有する記憶領域を結合させることにより、RAIDグループ１Ａが形成されている。RAIDグループ１Ａは、「物理的記憶デバイス」に該当する。RAIDレベルとしては、例えば、RAID１，RAID５等が比較的よく知られている。RAIDグループ１Ａには、論理ボリューム（ＬＵ：Logical Unit Number）１Ｂが設けられている。この論理ボリューム１Ｂは、「論理的記憶デバイス」に該当する。
【００４８】
ホストコンピュータ（以下、ホスト）Ｈは、例えば、ＳＡＮ（Storage Area Network）やＬＡＮ（Local Area Network）等の通信ネットワークＣＮ１を介して、記憶制御装置のアクセス制御部２に接続されている。ホストＨは、論理ボリューム１Ｂを特定するための情報（LUN等）や論理ブロックアドレスを指定することにより、所定の論理ボリューム１Ｂにアクセスして、データの読み書きを行う。ホストＨから発行されたリードコマンドやライトコマンドは、アクセス制御部２によって処理される。
なお、アクセス制御部２が、ファイルシステムを備えている場合、ホストＨは、アクセス制御部２にファイルレベルでアクセスすることもできる。
【００４９】
アクセス情報収集部３は、アクセス制御部２によって処理されたホストＨからのアクセス要求を検出し、RAIDグループ１Ａ及び論理ボリューム１Ｂに関するアクセス情報をそれぞれ収集する。
【００５０】
電源供給モード設定部４は、アクセス情報収集部３によって生成されたRAIDグループ１Ａに関するアクセス情報に基づいて、各RAIDグループ１Ａ毎にそれぞれ電源供給モードＦ１を設定する。電源供給モードＦ１としては、例えば、長時間通電モードと、第１短時間通電モード及び第２短時間通電モードの複数種類が予め用意されている。
【００５１】
電源制御部５は、各RAIDグループ１Ａにそれぞれ予め設定されている電源供給モードＦ１に基づいて、各RAIDグループ１Ａを構成する各ディスクドライブ１への通電をそれぞれ制御する。通電を制御するとは、例えば、電源を供給する場合（電源オン）と電源供給を停止する場合（電源オフ）とを、ホストＨからのアクセス要求の有無等に応じて切り換えることを意味する。
【００５２】
長時間通電モードとは、例えば、常時通電させる場合のように、RAIDグループ１Ａを構成する各ディスクドライブ１に長時間通電させるためのモードである。第１短時間通電モード及び第２短時間通電モードは、ホストＨからのアクセス要求があった場合にのみ、RAIDグループ１Ａを構成する各ディスクドライブ１へ通電するモードである。第１短時間通電モードに設定されているRAIDグループ１Ａには、アクセス頻度が中程度の論理ボリューム１Ｂが配置され、第２短時間通電モードに設定されているRAIDグループ１Ａには、アクセス頻度が最も少ない論理ボリューム１Ｂが配置される。従って、アクセス頻度の相違に応じて、第１短時間通電モードに設定されているRAIDグループ１Ａに属する各ディスクドライブ１の方が、第２短時間通電モードに設定されているRAIDグループ１Ａに属する各ディスクドライブ１よりも、通電される機会が多くなる。
【００５３】
再配置計画作成部６は、各ディスクドライブ１への無駄な通電を抑制する観点から、記憶制御装置内における論理ボリューム１Ｂの位置を最適化するための再配置計画７を作成するものである。例えば、再配置計画作成部６は、アクセス頻度の高い論理ボリューム１Ｂを長時間通電モードに設定されているRAIDグループ１Ａに、アクセス頻度が中程度の論理ボリューム１Ｂを第１短時間通電モードに設定されているRAIDグループ１Ａに、アクセス頻度が少ない論理ボリューム１Ｂを第２短時間通電モードに設定されているRAIDグループ１Ａに、それぞれ配置させるように、再配置計画７を作成する。作成された再配置計画７は、記憶制御装置内のメモリに一時的に記憶される。
【００５４】
実行時期決定部８は、RAIDグループ１Ａへのアクセス頻度に基づいて、再配置計画７を実行すべき時期を予め決定する。実行時期決定部８は、例えば、移動元の論理ボリューム１Ｂが設けられているRAIDグループ（移行元RAIDグループ）１Ａのアクセス頻度と、移動先の論理ボリューム１Ｂが設けられているRAIDグループ（移行先RAIDグループ）１Ａのアクセス頻度とを比較する。そして、実行時期決定部８は、移行元RAIDグループ１Ａ及び移行先RAIDグループ１Ａの両方のアクセス頻度（負荷）が少ない時間帯を選んで、再配置計画７の実行時期を決定する。
【００５５】
再配置実行部９は、記憶制御装置内のタイマ、または外部に存在する時刻情報供給サーバから取得した現在時刻と再配置計画７に登録されている実行時期とを比較し、実行時期が到来した場合には、再配置計画７を実施する。即ち、再配置実行部９は、再配置計画７に登録されている移動元の論理ボリューム１Ｂに記憶されているデータを、再配置計画７に登録されている移動先の論理ボリューム１Ｂに転送してコピーさせる。
【００５６】
データコピーが完了した場合、移動元の論理ボリューム１Ｂに記憶しているデータは保持の必要がない。従って、移動元の論理ボリューム１Ｂをフォーマットして、別のホストＨの別のアプリケーションプログラムに割り当てることができる。また、移動先の論理ボリューム１Ｂについては、移動元の論理ボリューム１Ｂを利用していたホストＨからのアクセスを引き続き受け付けるべく、移動先の論理ボリューム１ＢとホストＨとの間のパス情報等を設定する。
【００５７】
ここで、各論理ボリューム１Ｂには、予め指定情報Ｆ２を設定することができる。指定情報Ｆ２とは、その論理ボリューム１Ｂが設けられるべきRAIDグループ１Ａの種類を指定するための情報である。従って、指定情報Ｆ２は、例えば、「所属先指定情報」、「所属先固定情報」等と呼ぶこともできる。指定情報Ｆ２は、例えば、記憶制御装置に接続された管理端末等を介して、ユーザが手動操作で設定可能である。
【００５８】
再配置計画作成部６は、指定情報Ｆ２が予め設定されている論理ボリューム１Ｂについては、再配置の対象としない。即ち、指定情報Ｆ２によって所属先が固定されている論理ボリューム１Ｂは、再配置計画７に記載されない。これにより、ユーザは、アクセス頻度の多寡に影響されることなく、所望の論理ボリューム１Ｂを所望のRAIDグループ１Ａに固定することができる。
【００５９】
例えば、指定情報Ｆ２により長時間通電モードに指定されている論理ボリューム１Ｂは、長時間通電モードに設定されているRAIDグループ１Ａにのみ設けることができ、第１短時間通電モードまたは第２短時間通電モードに設定されているRAIDグループ１Ａに移動されることはない。
【００６０】
同様に、指定情報Ｆ２により第１短時間通電モードに指定されている論理ボリューム１Ｂは、第１短時間通電モードに設定されているRAIDグループ１Ａにのみ設けることができ、長時間通電モードまたは第２短時間通電モードに設定されているRAIDグループ１Ａに移動することはない。同様に、指定情報Ｆ２により第２短時間通電モードに指定されている論理ボリューム１Ｂは、第２短時間通電モードに設定されているRAIDグループ１Ａにのみ存在することができ、長時間通電モードまたは第１短時間通電モードに設定されているRAIDグループ１Ａに移されることはない。
【００６１】
従って、例えば、ユーザは、必要な場合にはできるだけ速やかにアクセスしたい重要なデータを記憶する論理ボリューム１Ｂについて、長時間通電モードを指定することにより、速やかなアクセスを確保することができる。また、例えば、ユーザは、電子メールデータ等のアーカイブデータを記憶する論理ボリューム１Ｂについて、第１短時間通電モードまたは第２短時間通電モードのいずれかを指定することもできる。これにより、一時的な利用によってデータマイグレーションが実行されるのを阻止し、アーカイブデータを記憶する各ディスクドライブ１に無駄に通電されるのを抑制することができる。
【００６２】
本実施形態では、各RAIDグループ１Ａに関するアクセス情報に基づいて、電源供給モードを各RAIDグループ１Ａ毎にそれぞれ設定して電源供給を制御し、また、各論理ボリューム１Ｂに関するアクセス情報に基づいて、各論理ボリューム１Ｂを電源供給モードの異なる各RAIDグループ１Ａ間で移動させるための再配置計画７を作成する構成とした。
【００６３】
従って、論理ボリューム１Ｂの使用状況（アクセス状況）に適したRAIDグループ１Ａに、論理ボリューム１Ｂを配置させることができる。これにより、RAIDグループ１Ａを構成する各ディスクドライブ１に無駄な通電が行われるのを抑制し、ディスクドライブ１の寿命を増大し、記憶制御装置の信頼性を高めることができ、さらに、記憶制御装置の電力消費量を少なくすることができる。
【実施例１】
【００６４】
本発明の実施形態を詳細に説明する。図１との関係を先に述べると、図１中のホストＨは図２中のホスト２０に、図１中のディスクドライブ１は図２中のディスクドライブ２１０に、図１中のRAIDグループ１Ａは図２中のRAIDグループ２２０に、図１中の論理ボリューム１Ｂは図２中の論理ボリューム２３０に、図１中の電源制御部５は図２中の電源制御部１５０及びハードディスク電源部２４０に、それぞれ対応する。図１中に示される他の各制御機能は、後述のようにコントローラ１００がそれぞれ実現させる。
【００６５】
先に、記憶制御装置１０を備えたストレージシステムのネットワーク構成を説明すると、記憶制御装置１０は、通信ネットワークＣＮ１１を介して一つまたは複数のホスト２０に接続されている。また、記憶制御装置１０は、通信ネットワークＣＮ１２を介して、保守端末３０に接続されている。保守端末３０は、通信ネットワークＣＮ１３を介して、管理センタ４０に接続されている。管理センタ４０と各ホスト２０の全部または一部とを、通信ネットワークＣＮ１４を介して接続してもよい。
【００６６】
ここで、例えば、通信ネットワークＣＮ１１としては、ＳＡＮやＬＡＮ（インターネットを含む）等を挙げることができる。通信ネットワークＣＮ１２，ＣＮ１３，ＣＮ１４としては、ＬＡＮを挙げることができる。なお、通信プロトコルの種類は例示であって、本発明はこれらに限定されない。また、図２中では、説明の便宜上、スイッチ等の中間的な装置を省略しているが、スイッチ等を介して接続する構成でもよい。
【００６７】
各ホスト２０は、例えば、サーバマシンやメインフレームマシン等として構成することができる。各ホスト２０は、例えば、電子メール管理ソフトウェアや顧客管理ソフトウェア、在庫管理ソフトウェア等のような一つまたは複数のアプリケーションプログラムを稼働させることができる。
【００６８】
保守端末３０は、例えば、ノートブック型のパーソナルコンピュータ等のように構成することができる。保守端末３０は、記憶制御装置１０の近傍に置かれており、ユーザ（または保守員）が操作する。ユーザは、保守端末３０を介して、記憶制御装置１０内の各種ステータス情報や構成等を確認することができる。
【００６９】
管理センタ４０は、例えば、記憶制御装置１０のベンダ等が管理するコンピュータ装置である。管理センタ４０には、各地に設置されている記憶制御装置１０からの情報が自動的にまたは手動操作で収集される。
【００７０】
記憶制御装置１０は、例えば、コントローラ１００と、ディスクアレイ装置２００とに大別することができる。コントローラ１００とディスクアレイ装置２００とは、同一の筐体内に設けることもできるし、それぞれ異なる筐体内に設けることもできる。
【００７１】
コントローラ１００は、例えば、チャネルインターフェース（以下、インターフェースを「I/F」と略記）１１０と、ディスクI/F１２０と、管理メモリ１３０と、キャッシュメモリ１４０と、電源制御部１５０と、制御部１６０とを備えて構成される。
【００７２】
チャネルI/F１１０は、通信ネットワークＣＮ１１に接続するための通信ポート１１１を一つ以上備えている。チャネルI/F１１０は、少なくとも一つ以上のプロセッサを備えたコンピュータ装置として構成される。チャネルI/F１１０は、ホスト２０との通信を制御するための装置である。チャネルI/F１１０は、ホスト２０から受信したライトデータをキャッシュメモリ１４０に書き込む。また、チャネルI/F１１０は、キャッシュメモリ１４０に記憶されたデータをホスト２０に送信させる。
【００７３】
ディスクI/F１２０は、ＳＡＮ等の通信ネットワークＣＮ１５を介して、ディスクアレイ装置２００の各ディスクドライブ２１０にそれぞれ接続されている。ディスクI/F１２０は、各ディスクドライブ２１０との間の通信を制御するものである。ディスクI/F１２０は、少なくとも一つ以上のプロセッサを備えたコンピュータ装置として構成される。ディスクI/F１２０は、キャッシュメモリ１４０に書き込まれたライトデータを読み出し、論理アドレスを物理アドレスに変換等した後、このライトデータを所定のディスクドライブ２１０に書き込む。また、ディスクI/F１２０は、ホスト２０から要求されたデータを所定のディスクドライブ２１０から読み出し、この読出したデータをキャッシュメモリ１４０に記憶させる。
【００７４】
管理メモリ１３０は、記憶制御装置１０の動作を制御するために必要な各種の制御情報や管理情報が記憶される。管理メモリ１３０に記憶される情報の概要については、さらに後述する。キャッシュメモリ１４０は、ホスト２０から書き込まれたライトデータや、ホスト２０に読み出されたリードデータを記憶する。なお、管理メモリ１３０とキャッシュメモリ１４０とは、同一のメモリパッケージ内に設けることもできるし、それぞれ別々のメモリパッケージとして構成することもできる。あるいは、メモリの一部を管理用情報の記憶領域として使用し、他の一部をデータのキャッシュ用に使用してもよい。
【００７５】
電源制御部１５０は、ディスクアレイ装置２００内に設けられているハードディスク電源部２４０に制御信号を出力することにより、各ディスクドライブ２１０の電源供給を個別に制御するものである。電源制御部１５０は、ディスクアレイ装置２００内に設けることもできる。ハードディスク電源部２４０は、各ディスクドライブ２１０に電源を供給するものである。ハードディスク電源部２４０は、各ディスクドライブ２１０毎にそれぞれ設けることもできるし、RAIDグループ２２０毎に設けることもできる。また、ハードディスク電源部２４０を、各ディスクドライブ２１０毎に、または各RAIDグループ２２０毎に、それぞれ複数ずつ設けて冗長構成としてもよい。
【００７６】
ディスクアレイ装置２００には、例えば、ハードディスクドライブ等の多数のディスクドライブ２１０を搭載することができる。また、ディスクアレイ装置２００には、例えば、SATAディスクやFCディスク等のような種類の異なるディスクドライブ２１０を混載することもできる。
【００７７】
所定数のディスクドライブ２１０によってRAIDグループ２２０が構成される。何個のディスクドライブ２１０を用いてRAIDグループ２２０を構成するか及びRAIDレベルは、ユーザが適宜設定することができる。物理的記憶デバイスを構成するRAIDグループ２２０には、一つまたは複数の論理ボリューム（以下、「ＬＵ」とも呼ぶ）２３０を設けることができる。論理ボリューム２３０は、ホスト２０からのアクセス対象となる。論理ボリューム２３０には、ホスト２０により利用されるデータが記憶される。複数種類のディスクドライブ２１０がディスクアレイ装置２００に設けられている場合、各RAIDグループ２２０は、それぞれ同一種類のディスクドライブ２１０から構成される。
【００７８】
なお、記憶制御装置１０の構成は、上述したものに限らない。例えば、制御部１６０を廃止し、チャネルI/F１１０及びディスクI/F１２０の協同作業により、制御部１６０と同様の制御機能を実現することもできる。あるいは、一つの通信制御パッケージ内に、チャネルI/F１１０及びディスクI/F１２０をそれぞれ設けることもできる。要するに、記憶制御装置１０は、ホスト２０からのアクセス要求に応じて各ディスクドライブ２１０にアクセスし、ディスクドライブ２１０に対してデータの読み書きを行うという基本的機能を備えていれば足り、具体的な構成は、図２に示すものに限定されない。
【００７９】
図３は、電源制御及びボリュームの再配置に関して、管理メモリ１３０に記憶されている管理用情報を示す説明図である。管理メモリ１３０には、例えば、RAIDグループアクセスパターン管理テーブル１３１、ＬＵアクセスパターン管理テーブル１３２、RAIDグループ管理テーブル１３３、階層制御計画テーブル１３４、ＬＵ管理テーブル１３５、ホストＬＵ管理テーブル１３６及び閾値管理テーブル１３７が、それぞれ格納されている。
【００８０】
各テーブル１３１〜１３６の構成はさらに後述するが、先に簡単に説明すると、RAIDグループアクセスパターン管理テーブル１３１は、各RAIDグループ２２０に関するアクセスパターンをそれぞれ管理するためのテーブルである。ＬＵアクセスパターン管理テーブル１３２は、各論理ボリューム２３０に関するアクセスパターンをそれぞれ管理するテーブルである。
【００８１】
RAIDグループ管理テーブル１３３は、各RAIDグループ２２０に関する情報を保持するテーブルである。階層制御計画テーブル１３４は、後述の階層制御計画作成処理１６６によって作成されるテーブルである。ＬＵ管理テーブル１３５は、各論理ボリューム２３０に関する情報を保持するテーブルである。ホストＬＵ管理テーブル１３６は、記憶制御装置１０が各ホスト２０に提供する論理ボリューム２３０を管理するテーブルである。閾値管理テーブル１３７は、後述の処理に使用される複数種類の閾値を管理するためのテーブルである。
【００８２】
図４には、制御部１６０により実行される各処理が模式的に示されている。制御部１６０は、例えば、アクセスパターン収集処理１６１、新規RAIDグループ作成処理１６２、新規ＬＵ割当処理１６３、電源制御属性更新処理１６４、電源制御処理１６５、階層制御計画作成処理１６６、階層制御実行時期決定処理１６７及び階層制御実行処理１６８を、それぞれ実行することができる。各処理１６１〜１６８の詳細はさらに後述するが、その概要を簡単に説明する。
【００８３】
アクセスパターン収集処理１６１は、「アクセス情報収集部」に対応し、各RAIDグループ２２０および各論理ボリューム２３０ＬＵに関するアクセスパターン（アクセス状況）をそれぞれ収集するようになっている。
【００８４】
新規RAIDグループ作成処理１６２は、記憶制御装置１０内に新規にRAIDグループ２２０を作成するための処理である。この処理１６２は、例えば、「新規物理的記憶デバイス作成部」と呼ぶこともできる。新規ＬＵ割当処理１６３は、RAIDグループ２２０内に新たな論理ボリューム２３０を設定し、この新規に生成された論理ボリューム２３０をホスト２０から使用可能な状態にするための処理である。この処理１６３は、例えば、「新規論理的記憶デバイス作成部」と呼ぶことができる。
【００８５】
電源制御属性更新処理１６４は、各RAIDグループ２２０に関するアクセスパターンに基づいて、各RAIDグループ２２０にそれぞれ設定されている電源制御属性を更新するための処理である。この処理１６４は、「電源供給モード設定部」に対応する。電源制御処理１６５は、電源制御部１５０を介してハードディスク電源部２４０の動作を制御するための処理である。電源制御処理１６５によって、各ディスクドライブ２１０の電源をそれぞれ個別にオンオフさせることができる。
【００８６】
階層制御計画作成処理１６６は、階層制御実行処理１６８によって実行される階層制御計画（データ再配置計画またはボリューム再配置計画、ボリューム移動計画と呼ぶこともできる）を作成するための処理である。この処理１６６は、「再配置計画作成部」に該当する。この処理１６６で作成された階層制御計画は、階層制御計画テーブル１３４に登録される。
【００８７】
階層制御実行時期決定処理１６７は、「実行時期決定部」に該当する。この処理１６７は、階層制御処理が記憶制御装置１０の性能に与える影響を小さくするように、低負荷の時間帯を見計らって、実行時期を決定する。決定された実行時期は、階層制御計画テーブル１３４に登録される。階層制御実行処理１６８は、階層制御計画作成処理１６６で作成された階層制御計画を、実行時期決定処理１６７で決定された時刻に実行する。この処理１６８は、「再配置実行部」に該当する。
【００８８】
図５は、各テーブルと各処理との関連を模式的に示す説明図である。アクセスパターン収集処理１６１は、各RAIDグループ２２０へのアクセスパターンを検出し、RAIDグループアクセスパターン管理テーブル１３１に記録する。また、アクセスパターン収集処理１６１は、各論理ボリューム２３０へのアクセスパターンを検出し、ＬＵアクセスパターン管理テーブル１３２に記録する。
【００８９】
電源制御属性更新処理１６４は、各RAIDグループ２２０へのアクセスパターンからアクセス頻度を算出し、アクセス頻度に応じた電源制御属性を各RAIDグループ２２０にそれぞれ設定する。頻繁に使用されるRAIDグループ２２０には、常に電源が供給されるように「常時通電」の電源制御属性が設定される。使用頻度の少ないRAIDグループ２２０には、必要に応じて電源が供給されるように「オンオフ制御（通常）」または「オンオフ制御（長期間オフ）」のいずれかの電源制御属性が設定される。RAIDグループ管理テーブル１３３には、各RAIDグループ２２０毎の電源制御属性がそれぞれ記憶される。電源制御処理１６５は、電源制御属性に基づいて、各RAIDグループ単位で、ディスクドライブ２１０の電源をオンオフ制御する。
【００９０】
新規RAIDグループ作成処理１６２によって新規なRAIDグループ２２０が作成された場合、この新規なRAIDグループ２２０に関する情報がRAIDグループ管理テーブル１３３に登録される。新規ＬＵ割当処理１６３によって新規な論理ボリューム２３０が作成された場合は、この新規な論理ボリューム２３０に関する情報がＬＵ管理テーブル１３５に登録され、かつ、RAIDグループ管理テーブル１３３が更新される。
【００９１】
階層制御計画作成処理１６６は、RAIDグループアクセスパターン管理テーブル１３１及びＬＵアクセスパターン管理テーブル１３２を参照することにより、各RAIDグループ２２０及び各論理ボリューム２３０に関するアクセスパターンをそれぞれ取得する。そして、階層制御計画作成処理１６６は、電源制御の観点から、どのRAIDグループ２２０にどの論理ボリューム２３０を配置させるのが好ましいのかを判断し、論理ボリューム２３０の移動計画（階層制御計画）を作成する。即ち、論理ボリューム２３０が属する階層を変更させるための計画を作成する。作成された階層制御計画は、階層制御計画テーブル１３４に記憶される。
【００９２】
階層制御実行時期決定処理１６７は、移行元のRAIDグループ２２０及び移行先のRAIDグループ２２０のアクセスパターンに基づいて、階層制御計画を実行すべき好ましい時期を決定する。決定された時期は、階層制御計画テーブル１３４に登録される。
【００９３】
階層制御実行処理１６８は、決定された時期が到来すると、階層制御計画を実施し、論理ボリューム２３０をより適切な階層に配置させる。階層制御の実行結果は、ホストＬＵ管理テーブル１３６に反映される。
【００９４】
次に、上述した各テーブルの構成例を説明する。図６は、RAIDグループアクセスパターン管理テーブル１３１の一例を示す説明図である。RAIDグループアクセスパターン管理テーブル１３１には、例えば、時間帯と、RAIDグループ２２０毎のアクセス情報とを含めることができる。
【００９５】
時間帯とは、アクセス情報が収集された時間的区切りを意味する。時間帯には、任意の時間帯を一意に表現できる情報が含まれていれば、形式を問わない。例えば、アクセス情報を収集する開始日時と終了日時とを記録してもよいし、開始時刻とオフセット値を記録する形式でもよい。アクセス情報は、例えば、１０分間程度の所定時間毎に収集することができる。アクセス情報を収集する時間帯、即ち収集間隔は任意に設定可能である。収集間隔は、例えば、保守端末３０または管理センタ４０から設定可能である。
【００９６】
アクセス情報は、その時間帯において、ホスト２０からRAIDグループ２２０にアクセス要求（ライト要求またはリード要求）があったか否かを示す情報である。アクセス情報には、「アクセスあり」または「アクセスなし」のいずれかの値が設定される。初期値は「アクセスなし」である。アクセス情報は、アクセスパターン収集処理１６１によって更新される。なお、アクセス要求の有無を記録する場合に限らず、各時間帯毎のアクセス回数を記録する構成でもよい。アクセス回数をアクセス情報として用いる場合、アクセス回数の初期値は、ゼロに設定される。
【００９７】
図７は、ＬＵアクセスパターン管理テーブル１３２の一例を示す。ＬＵアクセスパターン管理テーブルには、例えば、時間帯と論理ボリューム２３０毎のアクセス情報とを含めることができる。ＬＵアクセスパターン管理テーブル１３２では、RAIDグループ２２０を識別するための情報（RAIDグループ番号）に代えて、各論理ボリューム２３０を識別するための情報（ＬＵ番号）が使用される。その他の点は、RAIDグループアクセスパターン管理テーブル１３１と同様である。即ち、保守端末３０または管理センタ４０から任意に設定可能な収集間隔（時間帯）で、各論理ボリューム２３０へのアクセス要求が検出されたか否かが、ＬＵアクセスパターン管理テーブル１３２に記録される。なお、RAIDグループアクセスパターン管理テーブル１３１とＬＵアクセスパターン管理テーブル１３２とは、時間帯の値を共通に設定してもよいし、それぞれ別々の値に設定してもよい。
【００９８】
図８は、RAIDグループ管理テーブル１３３の一例を示す。RAIDグループ管理テーブル１３３は、例えば、RAIDグループ２２０を識別するためのRAIDグループ番号と、空き容量と、合計サイズと、電源制御属性と、電源状態と、対応する論理ボリューム番号と、対応するディスクドライブ番号とを含めることができる。
【００９９】
RAIDグループ番号とは、有効なRAIDグループ２２０の番号である。空き容量とは、そのRAIDグループ２２０の空いている記憶領域のサイズである。RAIDグループ２２０には、空き容量で示された容量分だけの論理ボリューム２３０を新たに作成できる。合計サイズとは、そのRAIDグループ２２０の全記憶領域のサイズである。RAIDグループ２２０に格納することができる論理ボリューム２３０の容量の合計値は、RAIDグループ２２０の合計サイズ以下の値となる。
【０１００】
電源制御属性とは、そのRAIDグループ２２０を構成するディスクドライブ２１０の電源制御の方法を示す情報である。電源制御属性には、「常時通電」、「オンオフ制御（通常）」、「オンオフ制御（長期間オフ）」のいずれかの値が設定される。「常時通電」とは、「長時間通電モード」に対応するもので、「常時通電」に設定されたRAIDグループ２２０を構成する各ディスクドライブ２１０には、常時電源が供給される。
【０１０１】
「オンオフ制御（通常）」は、「短時間通電モード」または「第１短時間通電モード」に該当する。「オンオフ制御（長期間オフ）」は、「短時間通電モード」または「第２短時間通電モード」に該当する。「オンオフ制御（通常）」または「オンオフ制御（長期間オフ）」のいずれかに設定されたRAIDグループ２２０を構成する各ディスクドライブ２１０には、必要な場合にのみ電源が供給される。必要な場合とは、ホスト２０からのアクセス要求が検出された場合を意味し、アクセス要求が無くなってから所定時間経過した場合には各ディスクドライブ２１０への電源供給が停止される。
【０１０２】
電源状態とは、そのRAIDグループ２２０を構成するディスクドライブ２１０の電源状態が設定される。電源状態には、「オン」または「オフ」のいずれかの値が設定される。電源状態の値が「オン」のRAIDグループ２２０を構成するディスクドライブ２１０には、ハードディスク電源２４０から電源が供給されている。電源状態の値が「オフ」のRAIDグループ２２０を構成するディスクドライブ２１０には、ハードディスク電源２４０から電源が供給されていない。
【０１０３】
対応ＬＵ番号には、そのRAIDグループ２２０に設定された論理ボリューム２３０のボリューム番号のリストが記憶される。対応ドライブ番号には、そのRAIDグループ２２０を構成するディスクドライブ２１０のドライブ番号リストが記憶される。
【０１０４】
図９に階層制御計画テーブル１３４の一例を示す。階層制御計画テーブル１３４は、例えば、論理ボリューム２３０の移動をそれぞれ識別するための移動番号と、移動元の論理ボリュームのボリューム番号と、移動先の論理ボリュームのボリューム番号と、移動時刻（実行時期）とを含めることができる。階層制御計画テーブル１３４の各値は、階層制御計画作成処理１６６及び階層制御実行時期決定処理１６７によって設定される。移動元の論理ボリューム番号及び移動先の論理ボリューム番号は、階層制御計画作成処理１６６によって設定され、移動時刻は階層制御実行時期決定処理１６７によって設定される。このようにして作成された階層制御計画テーブル１３４に基づいて、階層制御実行処理１６８が行われる。
【０１０５】
図１０は、ＬＵ管理テーブル１３５の一例を示す。ＬＵ管理テーブル１３５には、例えば、各論理ボリューム２３０のボリューム番号（ＬＵ＃）と、対応するRAIDグループ２２０の番号と、ボリュームサイズと、連結された論理ボリュームの番号及び常時通電フラグとを含めることができる。ボリューム番号は、記憶制御装置１０内の有効な論理ボリューム２３０の番号である。対応RAIDグループ番号は、その論理ボリューム２３０が配置されているRAIDグループ２２０を特定するための番号である。ボリュームサイズは、その論理ボリューム２３０が有する記憶領域の総容量を示す。
【０１０６】
連結ボリューム番号は、複数の論理ボリューム２３０を連結して一つの論理ボリュームとしてホストに提供する場合に設定される。制御部１６０が提供するこの機能を、ＬＵ連結機能と呼ぶ。連結ボリューム番号には、連結される論理ボリューム２３０のボリューム番号リストが設定される。図に示す例では、それぞれ１００ＧＢの容量を有する３つの論理ボリューム（ＬＵ＃２，３，５）を連結することにより、合計３００ＧＢの容量を有する一つの論理ボリューム（ＬＵ＃２）を構成している。
【０１０７】
一方、制御部１６０は、ＬＵ分割機能と呼ばれる機能を有する。この機能は、一つの論理ボリューム２３０を複数の論理ボリューム２３０に分割する機能である。ＬＵ分割機能とＬＵ連結機能とにより、柔軟な容量の論理ボリューム２３０をホスト２０に提供することができる。
【０１０８】
常時通電フラグは、その論理ボリューム２３０を電源制御属性が「常時通電」に設定されているRAIDグループ２２０に固定するか否かを指定するフラグである。常時通電フラグは、例えば、ユーザが手動操作で設定可能である。常時通電フラグには、「オン」、「オフ」、または、「無効値」のいずれかの値が設定される。常時通電フラグが「オン」に設定された論理ボリューム２３０は、「常時通電」状態に置かれているRAIDグループ２２０内に固定される。常時通電フラグが「オフ」に設定された論理ボリューム２３０は、階層制御計画（ボリュームの再配置計画）に従って、「常時通電」、「オンオフ制御（通常）」または「オンオフ制御（長期間オフ）」のいずれかに設定されたRAIDグループ２２０に配置可能となる。常時通電フラグに「無効値」が設定された場合は、その値は読み飛ばされる。
【０１０９】
図１１は、ホストＬＵ管理テーブル１３６の一例を示す。ホストＬＵ管理テーブル１３６は、例えば、ホストＬＵ番号と、対応するボリューム番号と、対応するホスト番号とを含めて構成することができる。ホストＬＵ番号とは、ホスト２０によって認識される論理ボリュームの番号である。ホストＬＵ番号は、記憶制御装置１０が提供する論理ボリューム２３０をホスト２０が一意に特定するための番号である。対応ボリューム番号は、ホストＬＵ番号に対応する論理ボリューム２３０を特定するための番号である。即ち、ホストＬＵ番号は、ホスト２０用に提供されるボリューム番号であり、対応ボリューム番号は、記憶制御装置１０の内部で管理されているボリューム番号である。対応するホスト番号は、その論理ボリューム２３０にアクセスするホスト２０を一意に識別する情報である。なお、その論理ボリューム２３０が複数のホスト２０からそれぞれアクセスされる場合は、それら複数のホストの番号リストが設定される。
【０１１０】
図１２は、閾値管理テーブル１３７の一例を示す。閾値管理テーブル１３７は、例えば、常時通電閾値ＴＨ１及び長期間オフ閾値ＴＨ２を含めることができる。常時通電閾値ＴＨ１及び長期間オフ閾値ＴＨ２は、階層制御計画作成処理１６６及び電源制御属性更新処理１６４で使用される。各閾値ＴＨ１，ＴＨ２は、それぞれ０％以上１００％以下の値が設定されるが、常時通電閾値ＴＨ１には、長期間オフ閾値ＴＨ２よりも大きい値が設定される。
【０１１１】
常時通電閾値ＴＨ１は、論理ボリューム２３０を「常時通電」状態に置かれているRAIDグループ２２０に移動させるべきか否かを決定するために使用される。ＴＨ１としては、例えば、「アクセス頻度８０％」のように設定される。長期間オフ閾値ＴＨ２は、論理ボリューム２３０を「オンオフ制御（長期間オフ）」状態に置かれているRAIDグループ２２０に移動させるべきか否かを決定するために使用される。ＴＨ２としては、例えば、「アクセス頻度２％」のように設定される。ＴＨ１とＴＨ２との間のアクセス頻度を有する論理ボリューム２３０は、「オンオフ制御（通常）」状態に置かれているRAIDグループ２２０に配置される。なお、上述の数値は説明のための一例であり、本発明はこれらの値に限定されない。
【０１１２】
次に、記憶制御装置１０の動作について説明する。以下の説明では、ステップを「Ｓ」と略記する。また、各フローチャートは、本発明の理解に必要な範囲内で、動作の概要を示すものであり、実際のプログラムとは相違する。
【０１１３】
図１３は、ホスト２０からのアクセス要求を処理するためのコマンド処理を示すフローチャートである。制御部１６０は、ホスト２０からのアクセス要求をそれぞれ個別に処理することができる。
【０１１４】
チャネルI/F１１０がホスト２０からのアクセス要求を受信すると、制御部１６０は、コマンドタイプを判別する（Ｓ１１）。コマンドタイプは、例えば、リードコマンド、ライトコマンド及びその他のコマンドに大別される。
【０１１５】
ホスト２０からリードコマンドを受信した場合、制御部１６０は、ホスト２０から読み出しを要求されたデータ（リードデータ）がキャッシュメモリ１４０に記憶されているか否かを判定する（Ｓ１２）。その要求されたデータがキャッシュメモリ１４０に記憶されている場合（S12:YES）、制御部１６０は、キャッシュメモリ１４０に記憶されているデータを読み出してホスト２０に送信する（Ｓ１５）。
【０１１６】
これに対し、ホスト２０から要求されたデータがキャッシュメモリ１４０に記憶されていない場合（S12:NO）、制御部１６０は、ディスクI/F１２０を介して、要求されたデータを所定のディスクドライブ２１０から読み出させる（Ｓ１３）。ディスクドライブ２１０から読み出されたデータは、キャッシュメモリ１４０に記憶された後（Ｓ１４）、ホスト２０に送信される（Ｓ１５）。
【０１１７】
なお、ここで、所定のディスクドライブ２１０とは、アクセス要求に関するデータを記憶または記憶すべきディスクドライブ２１０を意味する。ホスト２０からのリードコマンド及びライトコマンドに含まれている論理アドレスに基づいて、どのディスクドライブ２１０にアクセスすべきかを判断することができる。
【０１１８】
ホスト２０からライトコマンドを受信した場合、制御部１６０は、ホスト２０から受信したライトデータをキャッシュメモリ１４０に記憶させる（Ｓ１６）。制御部１６０は、ライトデータを所定のディスクドライブ２１０に書き込む前に、ホスト２０にライトコマンドの処理が完了した旨を通知する（Ｓ１７）。そして、制御部１６０は、タイミングを見計らって、キャッシュメモリ１４０に記憶されたライトデータを、所定のディスクドライブ２１０に書き込む（Ｓ１８）。ライトコマンドの処理完了を通知する時期とライトデータを書き込む時期とを違えることにより、ライトコマンドの処理時間を短縮することができる。なお、ディスクドライブ２１０にライトデータを書き込んだ後で、ホスト２０にライトコマンドの完了を通知する構成でもよい。
【０１１９】
ホスト２０からその他のコマンドを受信した場合、制御部１６０は、そのコマンドに応じた処理を実行する（Ｓ１９）。その他のコマンドとしては、例えば、論理ボリューム２３０の状態（ボリュームサイズ、空き容量等）を問い合わせるための照会コマンド等を挙げることができる。
【０１２０】
図１４は、アクセスパターン収集処理１６１の動作を示すフローチャートである。この処理は、ホスト２０からのアクセス要求を契機として起動される（Ｓ２１）。アクセス要求が検出された場合（S21:YES）、制御部１６０は、ホスト２０から受信したコマンドを解析することにより、アクセス対象のRAIDグループ番号及びボリューム番号をそれぞれ特定する（Ｓ２２）。
【０１２１】
そして、制御部１６０は、内蔵タイマやカウンタ等に基づいて現在時刻を取得し（Ｓ２３）、RAIDグループアクセスパターン管理テーブル１３１及びＬＵアクセスパターン管理テーブル１３２をそれぞれ更新させる（Ｓ２４，Ｓ２５）。制御部１６０は、アクセスされたRAIDグループ２２０について、そのアクセスされた時間帯のアクセス情報を「アクセス有り」に設定する。同様に、制御部１６０は、アクセスされた論理ボリューム２３０について、そのアクセスされた時間帯のアクセス情報を「アクセス有り」に設定する。なお、アクセス情報として、時間帯毎のアクセスの有無を記録する場合に代えて、時間帯毎のアクセス回数を記録する場合は、アクセス回数を１つ増加させればよい。
【０１２２】
図１５は、新規RAIDグループ作成処理１６２の動作を示すフローチャートである。ユーザは、この処理１６２を用いて、記憶制御装置１０内に新たなRAIDグループ２２０を作成することができる。
【０１２３】
ユーザは、例えば、保守端末３０を介して、新規RAIDグループの作成を制御部１６０に指示する（Ｓ３１）。この作成指示には、新規RAIDグループを構成すべきディスクドライブ２１０のドライブ番号リストやRAID構成等の情報が含まれている。
【０１２４】
制御部１６０は、新規RAIDグループ作成指示を保守端末３０から受信すると（Ｓ３２）、ドライブリストで明示された複数のディスクドライブ２１０を選択する（Ｓ３３）。制御部１６０は、これら選択されたディスクドライブ２１０を用いて、前記作成指示で指定されたRAID構成を有するRAIDグループ２２０を作成する（Ｓ３４）。制御部１６０は、新規に生成されたRAIDグループ２２０のグループ番号等を追加登録すべく、RAIDグループ管理テーブル１３３に新たなエントリを作成する（Ｓ３５）。
【０１２５】
そして、制御部１６０は、RAIDグループ管理テーブル１３３において、新規に作成されたRAIDグループ２２０の空き容量及び合計サイズに、それぞれ同一のサイズを設定する（Ｓ３６）。同一のサイズとは、そのRAIDグループ２２０を構成する各ディスクドライブ２１０のうち、ユーザデータを記憶する各ディスクドライブ２１０の記憶領域の合計値である。冗長ディスクの記憶領域は除かれる。
【０１２６】
制御部１６０は、新規に作成されたRAIDグループ２２０の電源制御属性として、「常時通電」を設定し（Ｓ３７）、また、電源状態として「オン」を設定する（Ｓ３８）。さらに、制御部１６０は、対応するボリューム番号として、未設定を示す無効値を設定し（Ｓ３９）、対応するドライブ番号には、Ｓ３２で受信した作成指示中のドライブリストに明示された番号を設定する（Ｓ４０）。初期状態においては、新たに作成されたRAIDグループ２２０を構成するディスクドライブ２１０の電源は、それぞれオフにされているが、新規に作成されたRAIDグループ２２０がRAIDグループ管理テーブル１３３に登録された時点で、それら各ディスクドライブ２１０の電源は、それぞれオンされる。
【０１２７】
図１６は、新規ＬＵ割当処理１６３の動作を示すフローチャートである。この処理１６３により、RAIDグループ２２０内に設けられた論理ボリューム２３０は、ホスト２０に割り当て可能な状態に置かれる。
【０１２８】
ユーザは、例えば、保守端末３０を介して、制御部１６０に新規な論理ボリューム２３０の割当を要求する（Ｓ５１）。割当とは、RAIDグループ２２０に論理ボリューム２３０を設定することを意味する。この割当要求には、新たに作成する論理ボリューム２３０のサイズ及び常時通電フラグの値が含まれている。常時通電フラグには「オン」、「オフ」または「無効値」のいずれかの値が設定される。
【０１２９】
ここで、図１７を参照する。図１７は、図１６中のＳ５１で保守端末３０の端末画面に表示される新規ＬＵ割当画面Ｇ１の一例を示す。この画面Ｇ１は、例えば、新規ＬＵ割当サイズ入力部Ｇ１１と、現在のＬＵ割当済容量表示部Ｇ１２と、常時通電フラグ設定部Ｇ１３と、幾つかのボタンＢ１，Ｂ２とを含んで構成することができる。
【０１３０】
新規ＬＵ割当サイズ入力部Ｇ１１は、新たに割り当てる論理ボリューム２３０のサイズを、ユーザが自由に指定するためのものである。図１７では、一例として「１００ＧＢ」のサイズを有する新規ＬＵを割り当てる場合を示している。現在のＬＵ割当済容量表示部Ｇ１２は、ディスクアレイ装置２００の有する全容量のうち、割当済みのＬＵの合計容量を表示する。図１７では、一例として、合計３ＴＢの記憶容量のうち既に５００ＧＢのＬＵが割り当てられていることを示している。
【０１３１】
常時通電フラグ設定部Ｇ１３は、ユーザが、新たに割り当てる論理ボリューム２３０に対して常時通電フラグを設定するためのものである。図１７では、常時通電フラグに「オフ」を設定する場合を示している。ＯＫボタンＢ１は、画面Ｇ１に設定等された値を承認するためのボタンであり、キャンセルボタンＢ２は、新規ＬＵの割当操作を取り消すためのボタンである。いずれのボタンＢ１，Ｂ２もユーザによって操作される。ユーザがＯＫボタンＢ１を操作すると、図１６中のＳ５１からＳ５２に移行する。
【０１３２】
図１６に戻る。制御部１６０は、保守端末３０からの割当要求を受信すると（Ｓ５２）、RAIDグループ管理テーブル１３３に登録されている各RAIDグループ２２０のうち、電源制御属性が「常時通電」に設定されており、かつ、割当指示で指定されたサイズ以上の空き容量を有するRAIDグループ２２０を検索する（Ｓ５３）。ここで、上述のＬＵ分割機能またはＬＵ連結機能を用いて、新規ボリュームを割り当てても良い。
【０１３３】
電源制御属性が「常時通電」に設定されているRAIDグループ２２０を検索する理由は、新規に割り当てられる論理ボリューム２３０に関する初期のアクセスパターンを、アクセスパターン収集処理１６１によって継続的に調査するためである。
【０１３４】
ここで、RAIDグループの検索処理（Ｓ５３）では、ユーザにより指定された常時通電フラグの値に応じて、実行される。そこで、先に図１８を参照し、RAIDグループの検索処理を説明する。
【０１３５】
制御部１６０は、ユーザにより指定された常時通電フラグの値が「オン」、「オフ」、「無効値」のいずれであるかを判定する（Ｓ５３１）。常時通電フラグ「オン」に指定されている場合、制御部１６０は、常時通電フラグが「オン」に設定されている論理ボリューム２３０を含んでいるRAIDグループ２２０を優先して検索する（Ｓ５３２）。即ち、常時通電フラグが「オン」に指定された新たな論理ボリューム２３０を作成する場合、その新規な論理ボリューム２３０が、常時通電フラグに「オン」の設定されている作成済の論理ボリューム２３０と同一のRAIDグループ２２０に配置されるように、RAIDグループ２２０の検索範囲を設定する。
【０１３６】
常時通電フラグに「オフ」が指定されている場合、制御部１６０は、常時通電フラグに「オン」の設定されている論理ボリューム２３０を含まないRAIDグループ２２０を優先して検索する（Ｓ５３３）。常時通電フラグに「無効値」が指定されている場合、検索の優先度は考慮されない。
【０１３７】
このように、新規に作成される論理ボリュームについて予め指定されている常時通電フラグの値に基づいて、その新規作成ボリュームの配置先としてのRAIDグループ２２０の検索範囲に優先順位を設定する。これにより、常時通電フラグに「オフ」の指定された論理ボリューム２３０と常時通電フラグに「オン」の設定された論理ボリューム２３０とが、同一のRAIDグループ２２０内に混在する可能性を低減することができる。
【０１３８】
制御部１６０は、指定されたボリュームサイズ以上の空き容量を有するRAIDグループ２２０が検出されたか否かを判定する（Ｓ５３４）。指定されたボリュームサイズ以上の空き容量を有するRAIDグループ２２０が検出された場合（S534:YES）、制御部１６０は、そのRAIDグループ２２０を新規論理ボリュームの割当先として選択する（Ｓ５３５）。指定されたボリュームサイズ以上の空き容量を有する単一のRAIDグループ２２０が検出されなかった場合（S534:NO）、制御部１６０は、複数のRAIDグループ２２０を選択し、指定されたボリュームサイズ以上の空き容量を確保する（Ｓ５３６）。
【０１３９】
図１６に戻る。制御部１６０は、電源制御属性が「常時通電」に設定されており、かつ、指定されたボリュームサイズ以上の空き容量を有するRAIDグループ２２０（以下、この処理の説明において、所定のRAIDグループ２２０と呼ぶ）が検出されたか否かを判定する（Ｓ５４）。
【０１４０】
制御部１６０は、所定のRAIDグループ２２０が検出された場合（S54:YES）、所定のRAIDグループ２２０が検出された旨及び所定のRAIDグループ２２０のグループ番号を、保守端末３０に通知する（Ｓ５５）。
【０１４１】
なお、このＳ５５において、保守端末３０の端末画面にユーザの確認を求める画面を表示させてもよい。この確認画面では、例えば、「グループ番号＊＊のRAIDグループに新規ＬＵを作成して宜しいですか（YES/NO）？」等のように、検出されたRAIDグループ２２０のグループ番号及びメッセージを表示させることができる。ユーザは、ＯＫボタンＢ１を操作することにより、承認を与えることができる。ユーザは、キャンセルボタンＢ２を操作することにより、キャンセルすることもできる。
【０１４２】
そして、制御部１６０は、ＬＵ管理テーブル１３５を更新する（Ｓ５６）。具体的には、対応するRAIDグループの番号として、Ｓ５４で発見されたRAIDグループ２２０の番号を、ボリュームサイズにはＳ５２で受け付けたサイズを、常時通電フラグにはＳ５２で受け付けた値を、それぞれ設定する。また、新たに割当られた論理ボリューム２３０が、ＬＵ連結機能を用いて構成されている場合には、連結ＬＵ番号として、連結された論理ボリューム２３０のリストを設定し、そうでない場合には無効値を設定する。
【０１４３】
次に、制御部１６０は、新規論理ボリューム２３０を割り当てた後、ホストＬＵ管理テーブル１３６の内容を更新する（Ｓ５７）。具体的には、ホストＬＵ管理テーブル１３６の対応ＬＵ番号に新規に割り当てられた論理ボリューム２３０の番号を、対応ホスト番号に新規に割り当てられた論理ボリューム２３０を利用するホスト２０の識別情報をそれぞれ設定する。ホストＬＵ管理テーブル１３６に新規論理ボリューム２３０に関する情報を登録することにより、その新規論理ボリューム２３０は、ホスト２０からアクセス可能な状態に置かれる。
【０１４４】
なお、Ｓ５７において、新規ＬＵの割当が完了した旨を積極的にまたは消極的に保守端末３０に通知することができる。積極的に通知するとは、例えば、制御部１６０から保守端末３０に向けて、新規ＬＵの割当完了を示す情報を送信することを意味する。消極的に通知するとは、例えば、保守端末３０がホストＬＵ管理テーブル１３６を定期的に参照することにより、新規ＬＵの割当完了を確認することを意味する。
【０１４５】
一方、前記条件を満たすRAIDグループ２２０が検出されなかった場合（S54:NO）、制御部１６０は、新規にRAIDグループ２２０を作成可能か否かを判定する（Ｓ５８）。即ち、制御部１６０は、記憶制御装置１０内に新たなRAIDグループ２２０を作成するのに十分な容量の空きディスクドライブ２１０が存在するか否かを判定する。
【０１４６】
新規にRAIDグループ２２０を作成可能であると判定した場合（S58:YES）、制御部１６０は、新規RAIDグループ作成処理１６２を実行して（Ｓ５９）、新しいRAIDグループ２２０を作成し、新たな論理ボリューム２３０を割り当てるための領域を確保する。そして、制御部１６０は、Ｓ５５〜Ｓ５７のステップを実行し、本処理を終了する。
【０１４７】
新規にRAIDグループ２２０を作成できないと判定された場合（S58:NO）、制御部１６０は、電源制御属性が「オンオフ制御（通常）」または「オンオフ制御（長期間オフ）」のいずれかに設定されているRAIDグループ２２０の中から、Ｓ５２で受け付けられたボリュームサイズ以上の空き容量を有するRAIDグループ２２０を検索する（Ｓ６０）。
【０１４８】
Ｓ６０の検索条件を満たすRAIDグループ２２０が発見された場合（S61:YES）、制御部１６０は、その発見されたRAIDグループ２２０の電源制御属性を「常時通電」に変更し（Ｓ６２）、RAIDグループ管理テーブル１３３を更新させる。そして、制御部１６０は、電源制御属性が変更されたRAIDグループの番号及び当該RAIDグループ２２０の電源制御属性が変更された旨を、保守端末３０に通知する（Ｓ５５）。その後、制御部１６０は、Ｓ５６，Ｓ５７のステップを実行し、本処理を終了する。
【０１４９】
Ｓ６０の検索条件を満たすRAIDグループ２２０が発見されなかった場合（S61:NO）、新たな論理ボリューム２３０を作成することはできない。そこで、制御部１６０は、保守端末３０にエラーを通知する（Ｓ６３）。このエラー通知には、例えば、新規論理ボリューム２３０を割当できない旨の情報が含まれており、この情報は保守端末３０の端末画面に表示される。このエラー通知を確認したユーザは、例えば、ディスクドライブ２１０の増設等を検討することができる。
【０１５０】
なお、新規ＬＵの割当処理への指示は、保守端末３０に限らず、管理センタ４０からも行うことができる。または、ホスト２０内にストレージ管理プログラムを搭載し、ストレージ管理プログラムから通信ネットワークＣＮ１１を介して、制御部１６０に新規ＬＵ割当処理の指示を与えることもできる。即ち、保守端末３０または管理センタ４０から管理用のネットワークＣＮ１２を介して指示を与える方式（アウトバンド方式）でも、ホスト２０からデータ用のネットワークＣＮ１１を介して指示を与える方式（インバンド方式）でも、いずれの方式も採用可能である。
【０１５１】
図１９は、電源制御属性更新処理１６４の動作を示すフローチャートである。この処理１６４は、RAIDグループ２２０へのアクセスパターンの時間変動に基づいて、そのRAIDグループ２２０の電源制御属性を更新する。
【０１５２】
この処理１６４は、所定時間ｔ１が経過するたびに実行される（Ｓ７１）。例えば、一日おきに本処理１６４を実行可能である。ユーザは、保守端末３０を介して、所定時間ｔ１の値を設定可能である。なお、以下の例でも同様であるが、閾値や所定時間等の設定値は、ユーザが任意の値を自由に設定できるように構成してもよいし、制御部１６０に予め設定されている固定値を使用する構成でもよい。また、予め用意されている複数種類の値の中から、ユーザが自由に選択可能な構成でもよい。
【０１５３】
電源制御属性更新処理１６４の前回の実行時期から所定時間ｔ１が経過した場合（S71:YES）、制御部１６０は、処理対象RAIDグループ２２０として、RAIDグループ管理テーブル１３３の最初のエントリに登録されているRAIDグループに設定する（Ｓ７２）。
【０１５４】
制御部１６０は、RAIDグループアクセスパターン管理テーブル１３１を参照し、処理対象RAIDグループ２２０に関するアクセス頻度を算出する（Ｓ７３）。即ち、制御部１６０は、例えば、過去1日分の所定の期間について、アクセス情報の値が「アクセス有り」に設定された時間帯の占める割合（アクセス頻度）をパーセント表示で算出する。例えば、２４時間のうち、アクセス有りの時間帯が合計６時間存在するRAIDグループの場合、そのアクセス頻度は２５％として算出される。
【０１５５】
制御部１６０は、算出されたアクセス頻度と閾値管理テーブル１３７に登録されている各閾値ＴＨ１，ＴＨ２とを比較し（Ｓ７４）、RAIDグループ２２０の電源制御属性を更新する（Ｓ７５）。Ｓ７５については、さらに後述する。そして、制御部１６０は、処理対象のRAIDグループ２２０が、RAIDグループ管理テーブル１３３に登録されている最後のRAIDグループ２２０であるか否かを判定する（Ｓ７６）。制御部１６０は、未判定のRAIDグループ２２０が残っている場合（S76:NO）、処理対象のRAIDグループを次のRAIDグループに切り換えて、Ｓ７３〜Ｓ７６のステップを実行する。このようにして、RAIDグループ管理テーブル１３３に登録されている全てのRAIDグループ２２０について、適切な電源制御属性がそれぞれ設定される。
【０１５６】
図２０は、図１９中のＳ７５の詳細を示すフローチャートである。制御部１６０は、処理対象のRAIDグループ２２０について、「常時通電」の電源制御属性が既に設定されており（S751:YES）、かつ、その処理対象のRAIDグループ２２０内に常時通電フラグが「オン」の論理ボリューム２３０が存在する場合（S752:YES）、そのRAIDグループ２２０を本処理の対象外とする。
【０１５７】
常時通電フラグに「オン」の設定されている論理ボリューム２３０を有するRAIDグループ２２０を、「常時通電」状態のままにしておくためである。もしも、「常時通電」状態に設定されているRAIDグループ２２０の電源制御属性を「常時通電」以外に変更すると、このRAIDグループ２２０に設けられている論理ボリューム（常時通電フラグがオンに設定されている論理ボリューム）を、別の「常時通電」状態に置かれているRAIDグループ２２０に移す必要がある。これでは、処理が複雑化するため、ここでは、Ｓ７５１及びＳ７５２の条件を満たすRAIDグループ２２０を、電源制御属性の判定対象外として扱う。
【０１５８】
さて、制御部１６０は、処理対象のRAIDグループ２２０のアクセス頻度が、常時通電閾値ＴＨ１以上である場合（S753:YES）、そのRAIDグループ２２０の電源制御属性を「常時通電」に更新させる（Ｓ７５４）。
【０１５９】
制御部１６０は、処理対象のRAIDグループ２２０のアクセス頻度が、長期間オフ閾値ＴＨ２未満である場合（S757:YES）、その電源制御属性を「オンオフ制御（長期間オフ）」に更新させる（Ｓ７５８）。
【０１６０】
制御部１６０は、処理対象のRAIDグループ２２０のアクセス頻度が、常時通電閾値ＴＨ１と長期間オフ閾値ＴＨ２との間に存在する場合（S755:YES）、その電源制御属性を「オンオフ制御（通常）」に更新させる（Ｓ７５６）。このようにして、各RAIDグループ２２０のアクセス頻度に応じて、適切な電源制御属性がそれぞれ設定される。
【０１６１】
図２１は、電源制御処理１６５の動作を示すフローチャートである。本処理１６５は、複数種類の契機によって起動される。第１の契機は、ホスト２０からのアクセス要求が検出された場合である（Ｓ８１〜Ｓ８４）。第２の契機は、前回の実行時から所定時間ｔ２が経過した場合である（Ｓ８５〜Ｓ９０）。所定時間ｔ２は、例えば、１分間程度の比較的短い時間に設定可能である。
第１の契機は、電源供給を開始するための契機であり、第２の契機は、電源供給を停止させるための契機である。
【０１６２】
最初に、第１の契機の場合を説明する。ホスト２０からのアクセス要求が検出された場合（S81:YES）、制御部１６０は、電源がオフ状態のRAIDグループ２２０に対するアクセス要求であるか否かを判定する（Ｓ８２）。電源がオフのRAIDグループ２２０へのアクセス要求の場合（S82:YES）、制御部１６０は、そのRAIDグループ２２０を構成する各ディスクドライブ２１０の電源をそれぞれオンさせ（Ｓ８３）、そのRAIDグループ２２０の「電源状態」をオンに変更させる（Ｓ８４）。
【０１６３】
次に、第２の契機の場合を説明する。ホスト２０からのアクセス要求が検出されない場合であっても（S81:NO）、前回の電源制御処理時から所定時間ｔ２が経過している場合（S85:YES）、本処理１６５は実行される。第２の契機によって本処理１６５を実行する場合、電源制御属性に「オンオフ制御（通常）」または「オンオフ制御（長期間オフ）」のいずれかが設定されているRAIDグループのみを処理対象とする。
【０１６４】
制御部１６０は、RAIDグループ管理テーブル１３３に登録されている各RAIDグループ２２０のうち、電源制御属性に「オンオフ制御（通常）」または「オンオフ制御（長期オフ）」のいずれかが設定されている最初のRAIDグループ２２０を処理対象RAIDグループとして設定する（Ｓ８６）。
【０１６５】
制御部１６０は、RAIDグループアクセスパターン管理テーブル１３１を参照し（Ｓ８７）、処理対象のRAIDグループ２２０が最後にアクセスされた時刻を取得する。制御部１６０は、最終アクセス時刻と現在時刻の差を計算し、所定時間ｔ３（例えば２０分程度）アクセスが無い場合、そのRAIDグループ２２０の電源をオフに変更する（Ｓ８８）。これにより、所定時間ｔ３以上アクセスされていないRAIDグループ２２０を構成する各ディスクドライブ２１０への通電が停止される。
【０１６６】
制御部１６０は、処理対象の全てのRAIDグループ２２０について電源制御を行ったか否かを判定し（Ｓ８９）、未判定のRAIDグループ２２０が存在する場合（S89:NO）、Ｓ８７〜Ｓ８９の処理を繰り返す。処理対象の全てのRAIDグループ２２０について電源制御の判定を行った場合（S89:YES）、制御部１６０は、本処理を終了する。
【０１６７】
このように、電源がオフにされているRAIDグループ２２０に対してアクセスが要求された場合には、そのRAIDグループ２２０を構成する各ディスクドライブ２１０に通電され、所定時間ｔ３以上アクセスされていないRAIDグループ２２０を構成する各ディスクドライブ２１０への通電は停止される。これにより、アクセス状況に応じて、いわばオンデマンドで適切に電源供給を制御することができる。
【０１６８】
図２２は、階層制御計画作成処理１６６の動作を示すフローチャートである。本処理１６６は、論理ボリューム２３０のアクセス状況に基づいて、論理ボリューム２３０を最適なRAIDグループ２２０に再配置させる。
【０１６９】
まず、制御部１６０は、ＬＵ管理テーブル１３５に登録されている各論理ボリューム２３０のうち、最初の論理ボリューム２３０を処理対象の論理ボリュームとして設定する（Ｓ１００）。
【０１７０】
制御部１６０は、ＬＵアクセスパターン管理テーブル１３２を参照し、処理対象の論理ボリューム２３０へのアクセス頻度を算出する。例えば、制御部１６０は、その処理対象の論理ボリュームについて、所定期間（例えば２４時間）のアクセス情報を参照し、この所定期間に占める「アクセス有り」の時間帯の割合を計算する。例えば、２４時間のうちアクセス有りの時間帯の合計値が３時間である場合、その論理ボリュームのアクセス頻度は、１２．５％となる。
【０１７１】
制御部１６０は、算出されたアクセス頻度と各閾値ＴＨ１，ＴＨ２を比較し（Ｓ１０３）、処理対象の論理ボリューム２３０を移動させるべきか否か、移動させる場合はどの階層（RAIDグループ）に移動させるべきかを、判定する（Ｓ１０４）。このＳ１０４については、さらに後述する。
【０１７２】
次に、制御部１６０は、処理対象の論理ボリューム２３０が移動対象として選択されたか否かを判定する（Ｓ１０５）。移動対象の論理ボリューム２３０である場合（S105:YES）、制御部１６０は、各アクセスパターン管理テーブル１３１，１３２を参照することにより、その論理ボリューム２３０のアクセスパターンと移動先候補として選択された各RAIDグループ２２０のアクセスパターンとを比較する。制御部１６０は、移動対象の論理ボリューム２３０のアクセスパターンと最も一致するアクセスパターンを有するRAIDグループ２２０を、いずれか一つ選択する（Ｓ１０６）。
【０１７３】
制御部１６０は、所定期間（例えば２４時間）について、移動対象の論理ボリューム２３０に関するアクセス情報と、移動先候補として抽出された各RAIDグループ２２０に関するアクセス情報とをそれぞれ比較し、一致率をそれぞれ算出する。そして、制御部１６０は、一致率が最大となるRAIDグループ２２０を一つ決定する。
【０１７４】
ただし、移動対象ＬＵと、移動対象ＬＵが属するRAIDグループ２２０の一致率の算出は次のようにして行う。即ち、当該RAIDグループ２２０のアクセス情報の代わりに次のようにして求めたアクセス情報を用いる。具体的には、ある時間帯のアクセス情報は、移動対象ＬＵが属するRAIDグループ２２０に含まれる移動対象ＬＵ以外のＬＵのアクセス情報に「アクセス有り」が含まれれば「アクセス有り」と判断し、そうでなければ「アクセスなし」と判断する。
つまり、移動対象ＬＵの属するRAIDグループを所属先RAIDグループと呼ぶことにすると、所属先RAIDグループから移動対象ＬＵを取り除いたと仮定した状態で、所属先RAIDグループのアクセスパターンを検出する。
移動対象ＬＵのアクセスパターンを取り除いて、所属先RAIDグループのアクセスパターンを検出しなければ、移動対象ＬＵのアクセスパターンが所属先RAIDグループのアクセスパターンに反映されたままとなる。これでは、移動対象ＬＵのアクセスパターンと所属先RAIDグループのアクセスパターンとの一致率が不当に高くなる。そこで、所属先RAIDグループのアクセスパターンを検出する場合には、移動対象ＬＵのアクセスパターンを除外している。
【０１７５】
このように、アクセスパターンが最も一致するRAIDグループ２２０を移動先RAIDグループ２２０として選択することにより、類似のアクセスパターンを持つ論理ボリューム２３０が一つのRAIDグループ２２０に集まることになる。この結果、より効率良く、RAIDグループ２２０の電源をオンオフ制御することができる。これに対し、アクセスパターンの異なる論理ボリューム２３０が一つのRAIDグループ２２０内に混在する場合、一つの論理ボリューム２３０へのアクセス要求が発生しただけで、そのRAIDグループ２２０を構成する全てのディスクドライブ２１０の電源がオンされる。
【０１７６】
制御部１６０は、移動対象の論理ボリューム２３０を移動させるべきRAIDグループ２２０を決定すると、階層制御計画テーブル１３４にエントリを追加し、各値をそれぞれ設定する（Ｓ１０６）。即ち、制御部１６０は、移動元の論理ボリューム２３０を特定するボリューム番号と、移動先の論理ボリューム２３０を特定するボリューム番号とを、階層制御計画テーブル１３４に記憶させる。図９中では、移動元及び移動先のボリューム番号のみを示しているが、階層制御計画テーブル１３４には、移動元の論理ボリューム２３０が属するRAIDグループ２２０のグループ番号と、移動先の論理ボリューム２３０が属するRAIDグループ２２０のグループ番号も一緒に記録される。
【０１７７】
制御部１６０は、全ての論理ボリューム２３０について、再配置の可否を判定したか否かを判定する（Ｓ１０８）。未判定の論理ボリューム２３０が残っている場合（S108:NO）、制御部１６０は、次の論理ボリューム２３０を処理対象の論理ボリュームとして選択し（Ｓ１０９）、Ｓ１０１〜Ｓ１０７の処理を繰り返す。全ての論理ボリューム２３０について判定を終えた場合（S108:YES）、制御部１６０は、本処理を終了する。
【０１７８】
図２３は、図２２中のＳ１０４の詳細を示すフローチャートである。まず、制御部１６０は、処理対象の論理ボリューム２３０の常時通電フラグに「オン」が設定されているか否かを判定する（Ｓ１０４１）。常時通電フラグがオンに設定されている場合、その論理ボリューム２３０の配置先が「常時通電」状態のRAIDグループ２２０に固定されていることを意味する。従って、制御部１６０は、常時通電フラグがオンに設定されている論理ボリューム２３０を、処理対象外のボリュームであると判定し（Ｓ１０４９）、処理を終了させる。
【０１７９】
処理対象の論理ボリューム２３０の常時通電フラグに「オフ」または「無効値」のいずれかが設定されている場合、制御部１６０は、処理対象の論理ボリューム２３０について、移行先のRAIDグループ２２０を判定する。
【０１８０】
処理対象の論理ボリューム２３０のアクセス頻度が常時通電閾値ＴＨ１以上である場合（S1042:YES）、制御部１６０は、その処理対象の論理ボリューム２３０を、電源制御属性に「常時通電」が設定されているRAIDグループ２２０に配置すべきであると判定する（Ｓ１０４３）。
【０１８１】
処理対象の論理ボリューム２３０のアクセス頻度が長期間オフ閾値ＴＨ２未満である場合（S1046:YES）、制御部１６０は、その処理対象の論理ボリューム２３０を、電源制御属性に「オンオフ制御（長期間オフ）」が設定されているRAIDグループ２２０に配置すべきであると判定する（Ｓ１０４７）。
【０１８２】
処理対象の論理ボリューム２３０のアクセス頻度がＴＨ２以上ＴＨ１未満の場合（S1044:YES）、制御部１６０は、その処理対象の論理ボリューム２３０を、電源制御属性に「オンオフ制御（通常）」が設定されているRAIDグループに配置すべきであると判定する（Ｓ１０４５）。
【０１８３】
制御部１６０は、移動対象の論理ボリューム２３０が現在配置されているRAIDグループ（移動元RAIDグループ）の電源制御属性と、移動対象の論理ボリューム２３０の再配置先として選択されたRAIDグループ（移動先RAIDグループ）の電源制御属性とを比較する（Ｓ１０４８）。制御部１６０は、移動元RAIDグループと移動先RAIDグループの電源制御属性が一致する場合（S1048:YES）、その論理ボリューム２３０は、移動対象外のボリュームであると判断し、処理を終了する。ボリューム移動の前後で、電源制御属性に変化が無い場合、即ち、その論理ボリューム２３０が同一階層に留まる場合は、再配置する意義が無いためである。
【０１８４】
図２４は、階層制御実行時期決定処理１６７の動作を示すフローチャートである。本処理１６７は、作成された階層制御計画を実行すべき時期を決定する。
【０１８５】
まず、制御部１６０は、階層制御計画テーブル１３４の最初のエントリを選択し（Ｓ１１１）、移動時期の判定対象とする。
【０１８６】
制御部１６０は、そのエントリに登録されている移動元の論理ボリューム２３０に記憶されているデータを移動させるのに必要な時間（データ再配置時間ＴＭ）を算出する（Ｓ１１２）。例えば、データコピーに要する平均転送速度Ｖｃを予め測定しておき、移動対象のボリュームサイズＳｖを平均転送速度Ｖｃで除算することにより、データ再配置時間ＴＭを求めることができる（ＴＭ＝Ｓｖ／Ｖｃ）。
【０１８７】
制御部１６０は、RAIDグループアクセスパターン管理テーブル１３１を参照することにより、移動元のRAIDグループ２２０のアクセスパターン及び移動先のRAIDグループ２２０のアクセスパターンをそれぞれ取得する（Ｓ１１３，Ｓ１１４）。そして、制御部１６０は、移動元のRAIDグループ２２０における低負荷の時間帯及び移動先のRAIDグループ２２０における低負荷の時間帯をそれぞれ検出する（Ｓ１１５）。
【０１８８】
制御部１６０は、これらの各低負荷の時間帯及びデータ再配置時間ＴＭに基づいて、階層制御を行うのに好ましい時期を決定し（Ｓ１１６）、決定された時期を階層制御計画テーブル１３４に登録させる（Ｓ１１７）。
【０１８９】
例えば、制御部１６０は、所定期間（例えば、過去1日分）のアクセス情報を参照し、「アクセス有り」の回数が最も少なくなるような期間を検索することにより、移動時期を決定することができる。ここで、「アクセス有り」の回数としては、移動元のRAIDグループ２２０における「アクセス有り」の回数と、移動先のRAIDグループ２２０における「アクセス有り」の回数の和が使用される。回数の和を用いるのは、移動元及び移動先のRAIDグループ２２０の負荷が共に低い期間であると考えられるためである。
【０１９０】
なお、移動元及び移動先のRAIDグループ２２０の負荷が低い期間を判別可能であればよく、上述の例に限定されない。例えば、アクセス情報として、アクセス回数も記録している場合は、アクセス回数の和が最も少なくなる時期を選択してもよい。または、移動元のRAIDグループ２２０または移動先のRAIDグループ２２０のうち、いずれか一方の負荷状態のみに基づいて、移動時期を決定する構成でもよい。さらに、アクセスパターンは、例えば、周期性を有する場合が多いため、周期性を考慮して、実行時期を決定するようにしてもよい。例えば、実行時期を設定する曜日に対応する過去の日付のアクセスパターンの履歴を参照して、負荷の状態を判断することができる。
【０１９１】
制御部１６０は、階層制御計画テーブル１３４の全エントリに関して、移動時期を決定したか否かを判定する（Ｓ１２０）。未決定のエントリが存在する場合（S120:NO）、制御部１６０は、次のエントリに移って、Ｓ１１２〜Ｓ１１７のステップを実行する。
【０１９２】
このようにして、階層制御計画テーブル１３４の各エントリに移動時期が設定されると（S120:YES）、この階層制御計画テーブル１３４は保守端末３０に送信され、ユーザに提示される（Ｓ１２１）。
【０１９３】
ユーザは、提示された階層制御計画テーブル１３４をそのまま承認してもよいし（S122:NO）、実行時期等を手動で修正することもできる。修正する場合（S122:YES）、保守端末３０から制御部１６０に修正指示が出される（Ｓ１２３）。
【０１９４】
制御部１６０は、保守端末３０から修正指示を受信すると（S124:YES）、階層制御計画テーブル１３４を修正して更新保存する（Ｓ１２５）。保守端末３０からの修正指示が無い場合、制御部１６０は、本処理を終了させる。
【０１９５】
図２５は、移動元のRAIDグループ及び移動先のRAIDグループのそれぞれにおいて低負荷となる時期に、移動時期を設定する様子を示す説明図である。図中、斜線の入った時間帯ＴＳは、アクセス要求が発生していることを示す。白い時間帯ＴＳは、アクセス要求の無いことを示す。
【０１９６】
時間帯ＴＳ４〜ＴＳ６に跨る期間は、移動元のRAIDグループ及び移動先のRAIDグループのそれぞれにおいて、負荷が少なくなっている。この期間ＴＳ４〜ＴＳ６を、共通低負荷期間（共通低負荷時間帯）ＴＬと呼ぶことができる。制御部１６０は、この期間ＴＬを最大限利用するようにして、移動時期を決定する。
【０１９７】
図２６は、階層制御実行処理１６８の動作を示すフローチャートである。制御部１６０は、階層制御計画テーブル１３４を参照し、再配置の実行時期が到来した論理ボリューム２３０を選択する（Ｓ１３１）。
【０１９８】
制御部１６０は、選択された論理ボリューム２３０のデータを移行先のRAIDグループ２２０に設けられた移行先ボリューム２３０に転送してコピーさせる（Ｓ１３２）。データコピーが完了すると、制御部１６０は、ボリューム再配置を終えたエントリを階層制御計画テーブル１３４から削除して更新させる（Ｓ１３３）。また、制御部１６０は、移動された論理ボリューム２３０をホスト２０が引き続き利用できるように、ホストＬＵ管理テーブル１３６を書き換えて更新させる（Ｓ１３４）。即ち、移動元の論理ボリューム２３０に関連づけられていたホストＬＵについて、移動先の論理ボリューム２３０のボリューム番号を対応付ける。これ以後、ホスト２０は、移動先の論理ボリューム２３０にアクセスすることになる。なお、ホスト２０によって認識されるボリューム番号に変化はないため、ホスト２０は、ボリュームの再配置を意識しない。
【０１９９】
図２７〜図２９は、ボリューム再配置（階層制御）の様子を示す説明図である。図２７は、常時通電フラグがオフに設定されている論理ボリューム２３０が、最初、「常時通電」のRAIDグループ２２０内に設けられている場合を示す。
【０２００】
移行元の論理ボリューム２３０（常時通電フラグ：オフ）へのアクセス頻度が、中程度の場合（ＴＨ１とＴＨ２の間の中間値の場合）、移行元の論理ボリューム２３０は、「オンオフ制御（通常）」に設定されているRAIDグループ２２０に移される。常時通電フラグの値に変化は無い。
【０２０１】
移動後に、ホスト２０が移行先の論理ボリューム２３０にアクセスすると、移行先RAIDグループ２２０を構成する各ディスクドライブ２１０の電源は、それぞれオンされる。アクセスが終了して所定時間ｔ３が経過すると、各ディスクドライブ２１０の電源は、それぞれオフされる。従って、必要な場合にのみ、各ディスクドライブ２１０へ通電されるため、各ディスクドライブ２１０が無駄に稼働して寿命を縮めたり、いたずらに電力を浪費する事態を抑制できる。
【０２０２】
一方、移行元の論理ボリューム２３０へのアクセス頻度が少ない場合（ＴＨ２未満の場合）、移行元の論理ボリューム２３０は、「オンオフ制御（長期間オフ）」に設定されているRAIDグループ２２０に移される。移動後に、ホスト２０が移行先の論理ボリューム２３０にアクセスすると、この移行先RAIDグループ２２０を構成する各ディスクドライブ２１０の電源がそれぞれオンされる。そして、アクセス終了後に所定時間ｔ３が経過すると、各ディスクドライブ２１０の電源は、それぞれオフされる。「オンオフ制御（長期間オフ）」に設定されたRAIDグループ２２０には、アクセス頻度の少ない論理ボリューム２３０が自動的に集められるため、このRAIDグループ２２０に電源が供給される期間は、相対的に短くなる。
【０２０３】
図２８は、常時通電フラグがオフに設定されている論理ボリューム２３０が、最初、「オンオフ制御（通常）」のRAIDグループ２２０内に設けられている場合を示す。移行元の論理ボリューム２３０へのアクセス頻度が高い場合（ＴＨ１以上の場合）、この論理ボリューム２３０は、「常時通電」に設定されているRAIDグループ２２０に移される。このRAIDグループ２２０には、常時電源が供給されているため、ホスト２０からのアクセスに対して高速に応答可能である。
【０２０４】
一方、移行元の論理ボリューム２３０へのアクセス頻度が少ない場合（ＴＨ２未満の場合）、この論理ボリューム２３０は、「オンオフ制御（長期間オフ）」に設定されているRAIDグループ２２０に移される。
【０２０５】
図２９は、常時通電フラグがオフに設定されている論理ボリューム２３０が、最初、「オンオフ制御（長期間オフ）」のRAIDグループ２２０内に設けられている場合を示す説明図である。移行元の論理ボリューム２３０へのアクセス頻度が高い場合（ＴＨ１以上の場合）、この論理ボリューム２３０は、「常時通電」に設定されているRAIDグループ２２０に移される。
【０２０６】
一方、移行元の論理ボリューム２３０へのアクセス頻度が中程度の場合（ＴＨ２以上ＴＨ１未満の場合）、この論理ボリューム２３０は、「オンオフ制御（通常）」に設定されているRAIDグループ２２０に移される。
【０２０７】
図３０は、上述の階層制御を一回または複数回繰り返した場合におけるディスクアレイ装置２００内のデータ配置構造を模式的に示す説明図である。「常時通電」に設定されているRAIDグループ２２０には、アクセス頻度の高い論理ボリューム２３０及び「常時通電フラグ」がオンに設定されている論理ボリューム２３０が、配置される。従って、アクセス頻度の高い論理ボリュームまたは高速応答の要求される論理ボリュームについては、高速な応答性を確保することができる。
【０２０８】
「オンオフ制御（通常）」に設定されているRAIDグループ２２０には、アクセス頻度が中程度の論理ボリューム２３０が配置される。従って、このRAIDグループ２２０を構成する各ディスクドライブ２１０については、ホスト２０からのアクセス要求が発生した場合にのみ通電すればよく、それ以外の場合は電源をオフしておくことができる。
【０２０９】
「オンオフ制御（長期間オフ）」に設定されているRAIDグループ２２０には、アクセス頻度の少ない論理ボリューム２３０が配置される。従って、このRAIDグループ２２０を構成する各ディスクドライブ２１０には、長期間電源を供給せずに済む。
【０２１０】
本実施例は、上述のように構成されるため、以下の効果を奏する。本実施例では、各RAIDグループ２２０のアクセス頻度に基づいて、各RAIDグループ２２０にそれぞれ適切な電源制御属性を設定して電源供給を制御する。また、本実施例では、各論理ボリューム２３０のアクセス頻度に基づいて、各論理ボリューム２３０を適切な階層（RAIDグループ）に再配置させる。この電源制御とボリューム再配置とが結合することにより、論理ボリューム２３０のアクセス頻度に応じたRAIDグループ２２０に、論理ボリューム２３０を配置させることができ、各ディスクドライブ２１０に無駄な通電が行われるのを抑制し、ディスクドライブ２１０の寿命を長くすることができる。この結果、記憶制御装置１０の信頼性を高めることができ、さらに、記憶制御装置１０の電力消費量を少なくできる。
【０２１１】
本実施例では、移動元のRAIDグループ２２０と移動先のRAIDグループ２２０の両方の負荷（アクセス頻度）が少ない低負荷の時間帯を選んで、階層制御の実行時期を決定する構成とした。従って、階層制御の実行によって、移行元及び移行先の各RAIDグループ２２０の応答性能が低下等するのを抑制することができ、使い勝手が向上する。
【０２１２】
本実施例では、新規の論理ボリューム２３０は、「常時通電」に設定されているRAIDグループ２２０に優先して生成する構成とした。従って、新規の論理ボリューム２３０のアクセスパターンを収集することができ、その後のボリューム再配置計画の立案に活かすことができる。
【０２１３】
本実施例では、常時通電フラグがオンに設定されている論理ボリューム２３０は、「常時通電」に設定されているRAIDグループ２２０内に固定し、他の電源制御属性を有するRAIDグループ２２０には移動させない構成とした。従って、高速アクセスが要求される論理ボリューム２３０の高速応答性を維持することができ、かつ、無駄なボリューム再配置が実施されるのを抑制することができる。
【０２１４】
なお、本発明は、上述した実施例に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。
【図面の簡単な説明】
【０２１５】
【図１】本発明の実施形態の概要を示す説明図である。
【図２】記憶制御装置の全体構成を示すブロック図である。
【図３】管理メモリの記憶内容を示す説明図である。
【図４】制御部により実行される処理を示す説明図である。
【図５】管理メモリの記憶内容と制御部における各処理との関係を示す説明図である。
【図６】RAIDグループアクセスパターン管理テーブルを示す説明図である。
【図７】ＬＵアクセスパターン管理テーブルを示す説明図である。
【図８】RAIDグループ管理テーブルを示す説明図である。
【図９】階層制御計画テーブルを示す説明図である。
【図１０】ＬＵ管理テーブルを示す説明図である。
【図１１】ホストＬＵ管理テーブルを示す説明図である。
【図１２】閾値管理テーブルを示す説明図である。
【図１３】コマンド処理を示すフローチャートである。
【図１４】アクセスパターン収集処理を示すフローチャートである。
【図１５】新規RAIDグループ作成処理を示すフローチャートである。
【図１６】新規ＬＵ割当処理を示すフローチャートである。
【図１７】図１６中のＳ５１で表示される端末画面の一例を示す説明図である。
【図１８】図１６中のＳ５３の詳細を示すフローチャートである。
【図１９】電源制御属性の更新処理を示すフローチャートである。
【図２０】図１９中のＳ７５の詳細を示すフローチャートである。
【図２１】電源制御処理を示すフローチャートである。
【図２２】階層制御計画作成処理を示すフローチャートである。
【図２３】図２２中のＳ１０４の詳細を示すフローチャートである。
【図２４】階層制御実行時期を決定する処理を示すフローチャートである。
【図２５】階層制御の実行時期を決定する様子を模式的に示す説明図である。
【図２６】階層制御実行処理を示すフローチャートである。
【図２７】移行元RAIDグループが「常時通電」に設定されている場合の階層制御を模式的に示す説明図である。
【図２８】移行元RAIDグループが「オンオフ制御（通常）」に設定されている場合の階層制御を模式的に示す説明図である。
【図２９】移行元RAIDグループが「オンオフ制御（長期間オフ）」に設定されている場合の階層制御を模式的に示す説明図である。
【図３０】階層制御の実施結果を模式的に示す説明図である。
【符号の説明】
【０２１６】
１…ディスクドライブ、１Ａ…RAIDグループ（物理的記憶デバイス）、１Ｂ…論理ボリューム（論理的記憶デバイス）、２…アクセス制御部、３…アクセス情報収集部、４…電源供給モード設定部、５…電源制御部、６…再配置計画作成部、７…再配置計画、８…実行時期決定部、９…再配置実行部、１０…記憶制御装置、２０…ホスト、３０…保守端末、４０…管理センタ、１００…コントローラ、１１０…チャネルインターフェース、１１１…通信ポート、１２０…ディスクインターフェース、１３０…管理メモリ、１３１…RAIDグループアクセスパターン管理テーブル、１３２…ＬＵグループアクセスパターン管理テーブル、１３３…RAIDグループ管理テーブル、１３４…階層制御計画テーブル、１３５…ＬＵ管理テーブル、１３６…ホストＬＵ管理テーブル、１３７…閾値管理テーブル、１４０…キャッシュメモリ、１５０…電源制御部、１６０…制御部、１６１…アクセスパターン収集処理、１６２…新規RAIDグループ作成処理、１６３…新規ＬＵ割当処理、１６４…電源制御属性更新処理、１６５…電源制御処理、１６６…階層制御計画作成処理、１６７…階層制御実行時期決定処理、１６８…階層制御実行処理、２００…ディスクアレイ装置、２１０…ディスクドライブ、２２０…RAIDグループ、２３０…論理ボリューム、…２４０ ハードディスク電源部
【図１】
2007164650.tif 000003
【図２】
2007164650.tif 000004
【図３】
2007164650.tif 000005
【図４】
2007164650.tif 000006
【図５】
2007164650.tif 000007
【図６】
2007164650.tif 000008
【図７】
2007164650.tif 000009
【図８】
2007164650.tif 000010
【図９】
2007164650.tif 000011
【図１０】
2007164650.tif 000012
【図１１】
2007164650.tif 000013
【図１２】
2007164650.tif 000014
【図１３】
2007164650.tif 000015
【図１４】
2007164650.tif 000016
【図１５】
2007164650.tif 000017
【図１６】
2007164650.tif 000018
【図１７】
2007164650.tif 000019
【図１８】
2007164650.tif 000020
【図１９】
2007164650.tif 000021
【図２０】
2007164650.tif 000022
【図２１】
2007164650.tif 000023
【図２２】
2007164650.tif 000024
【図２３】
2007164650.tif 000025
【図２４】
2007164650.tif 000026
【図２５】
2007164650.tif 000027
【図２６】
2007164650.tif 000028
【図２７】
2007164650.tif 000029
【図２８】
2007164650.tif 000030
【図２９】
2007164650.tif 000031
【図３０】
2007164650.tif 000032