(57)【要約】【課題】上位装置に対する記憶領域の提供が、既述のＡＯＵ技術によって実現されるストレージシステムにおいて、プールに割り当てられた記憶資源に対する必要電力を低減させ、かつ、この記憶資源の寿命低下を避けるようにした、ストレージシステムを提供する。【解決手段】仮想ボリューム１６Ａにプール１８に属するものとして定義された記憶デバイスを割り当てる。この割り当てはコントローラがホスト２００Ａからのアクセスに応じて行われる。記憶デバイスは仮想ボリューム１６Ａに割り当てられる前はその電源がオフされ、この割り当て時にその電源がオンされる。【選択図】図４
2007293442.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶デバイスと、通信経路を介して接続される上位装置からの要求に応じて、前記記憶デバイスに対するデータを入出力制御を行うコントローラと、を備えるストレージシステムにおいて、
前記上位装置がアクセスする仮想ボリュームと、
前記仮想ボリュームに割り当てられた、前記複数の記憶デバイスからなるプールと、
を備え、
前記コントローラは、前記仮想ボリュームに対する前記ホストからのアクセスに応じて、前記プール内の記憶デバイスを当該仮想ボリュームに割り当てるとともに、前記仮想ボリュームに割り当てられていない、前記プール内の前記記憶デバイスを準備状態にし、前記仮想ボリュームに割り当てられている前記記憶デバイスを動作状態にする、ストレージシステム。
【請求項２】
前記コントローラは、前記仮想ボリュームに割り当てらてれる前記記憶デバイスの電源をオンし、前記準備状態の記憶デバイスの電源をオフする、請求項１記載のストレージシステム。
【請求項３】
前記コントローラは、前記仮想ボリュームへの割り当て前に、複数の前記記憶デバイスのうち、一部の記憶デバイスの電源をオンする請求項２記載のストレージシステム。
【請求項４】
前記記憶デバイスの前記仮想ボリュームへの割り当て、及び、当該記憶デバイスの電源のオン又はオフを制御するための制御テーブルを備え、前記コントローラは当該制御テーブルに基づいて前記記憶デバイスの電源制御を実行する、請求項２記載のストレージシステム。
【請求項５】
前記制御テーブルは、前記仮想ボリュームに割り当て前に電源がオンされる前記記憶デバイスの割合に関する情報を備え、前記コントローラはこの情報に基づいて前記記憶デバイスの電源をオンする、請求項４記載のストレージシステム。
【請求項６】
前記コントローラは、前記上位装置から前記記憶デバイスに書き込み要求があったデータ総量と、電源オンであるが、前記仮想ボリュームへの割当がされていない記憶デバイスの記憶容量とを比較して、後者の容量が前者の容量以下の場合は、前記プールに属する他の記憶デバイスの電源をオンして、当該記憶デバイスを前記仮想ボリュームに割り当てる請求項２記載のストレージシステム。
【請求項７】
前記プールには種類が異なる複数の記憶デバイスが割り当てられ、前記コントローラは、性能が高い記憶デバイスを優先的して、その電源をオンする請求項２記載のストレージシステム。
【請求項８】
前記プールには過去の使用頻度が異なる複数の記憶デバイスが割り当てられ、前記コントローラは、使用頻度が低い記憶デバイスを優先して、その電源をオンする請求項２記載のストレージシステム。
【請求項９】
前記コントローラは、前記上位装置からの書き込みデータを一時記憶領域に保存し、この一時記憶領域に保存された書き込みデータを、前記電源がオンされた記憶デバイスに格納する、請求項２記載のストレージシステム。
【請求項１０】
前記コントローラは、前記仮想ボリュームに割り当てられ、前記上位装置からの書き込みデータが格納された記憶デバイスの当該データを正規化ボリュームに移動した後、当該記憶デバイスを前記仮想ボリュームへの割当から解放するとともに、当該記憶デバイスの電源をオンからオフにする、ストレージシステム。
【請求項１１】
複数の記憶デバイスと、通信経路を介して接続される上位装置からの要求に応じて、前記記憶デバイスにデータを入出力する制御を行うコントローラと、を備えるストレージシステムにおいて、
前記上位装置がアクセスする仮想ボリュームと、
前記仮想ボリュームに割り当てられた、前記領域記憶デバイスによって提供される複数の記憶領域を含むプールと、
を備え、
前記コントローラは、前記仮想ボリュームに対する前記ホストからのアクセスに応じて、前記プール内の記憶領域を当該仮想ボリュームに割り当てる際に、この記憶領域に対応する前記記憶デバイスの電源をオフからオンにする、ストレージシステム。
【請求項１２】
複数の記憶デバイスと、コントローラとを有するストレージシステムにおいて、前記コントローラが通信経路を介して接続される上位装置からの要求に応じて、前記記憶デバイスに対するデータの入出力する制御を行う、ストレージシステムの制御方法であって、
前記ストレージシステムは、
上位装置がアクセスする仮想ボリュームと、
前記仮想ボリュームに割り当てられた、前記複数の記憶デバイスからなるプールと、
を備え、
前記コントローラは、前記仮想ボリュームに対する前記ホストからのアクセスに応じて、前記プール内の記憶デバイスを当該仮想ボリュームに割り当てるとともに、前記仮想ボリュームに割り当てられていない、前記プール内前記記憶デバイスを準備状態にし、前記仮想ボリュームに割り当てられている前記記憶デバイスを動作状態にする、ストレージシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードディスクドライブ（以下、ＨＤＤ、と称する）等の記憶デバイスに対するデータの記憶制御を行うストレージシステム及びその制御方法に関するものである。本発明は、特に、記憶デバイスの電源制御に関するものである。
【背景技術】
【０００２】
ストレージシステムと、このストレージシステムにネットワークなどの通信経路を介して接続するサーバやホストコンピュータなどの上位装置とを備えた、コンピュータシステムで扱われるデータ量の増加に伴い、ストレージシステムが備える記憶領域が大容量化されてきている。ストレージシステムは、上位装置がアクセス可能な論理ボリュームを定義し、この論理ボリュームに割り当てられた物理的記憶領域に上位装置がアクセスすることによって、記憶デバイスに対するデータの入出力が可能となる。
【０００３】
最近では、上位装置が取り扱うデータ量が大幅に増えていることから、ボリュームの記憶容量であるボリュームサイズを大幅に増やさなくてはならなくなっている。最初から大きなサイズの記憶領域を上位装置に割り当てておけば、上位装置にとって記憶容量の不足は起こらず、途中で上位装置に割り当てられている記憶領域のサイズを拡大する必要もない。しかしながら、上位装置である計算機がそれほど大量のデータを使わない場合には、計算機に割り当てられた記憶領域に未使用の領域が発生して、この未使用の記憶領域がこの上位装置に対して固定化されるために、記憶領域の利用に関して無駄が発生する。
【０００４】
そこで、計算機のオンライン中に、一元的に管理された記憶領域から動的に適切な容量の記憶領域を割り当てることによって論理ボリュームの記憶容量を拡張することを目的として、ホストから記憶装置の論理ボリュームへアクセスされるリードもしくはライトＩ／Ｏの論理ブロックアドレスを監視し、取得された論理ブロックアドレスを元に、論理ボリュームの記憶領域を動的に伸長し、また、ホストの命令部からボリュームサーバへ論理ボリュームの容量拡張の指示により論理ボリュームの記憶領域を拡張する、ストレージシステムが提案されている（特開２００３−１５９１５号公報）。
【０００５】
なお、本発明に関連する従来技術としての特開２００５−４３４９号公報は、あるストレージ装置の記憶領域が不足した場合、物理ディスクを増設せずに、他のストレージ装置が保有している記憶資源を有効に活用する仕組みを提供することを目的として、情報処理装置から送信されるデータの書き込み要求を受信すると、第一のストレージ装置は第一の記憶領域に書き込みができるかどうかを判断し、書き込みができないと判断した場合、第一のストレージ装置は、第二のストレージ装置に対してデータを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求し、これに応じて、第二のストレージ装置は第二の記憶領域が確保できるかどうかを判断するための情報を第一のストレージ装置に送信し、第一のストレージ装置は、前記情報に基づいて第二の記憶領域が確保できるかどうかを判断し、確保できると判断した場合には、前記データを第二のストレージ装置に送信して第二の記憶領域に記憶する、ストレージシステムを開示している。
【特許文献１】特開２００３−１５９１５号公報
【特許文献２】特開２００５−４３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
出願人はストレージシステムにおいて記憶資源を有効に活用するために、Allocation  on Use(ＡＯＵ)という技術を開発している。このＡＯＵ技術は、ストレージシステムが、それ自身は記憶領域を持たない仮想ボリュームを上位装置に提供し、この仮想ボリュームにプールと呼ばれる、記憶デバイスの集合を対応させている。上位装置が仮想ボリュームにアクセスすると、ストレージシステムは上位装置によってアクセスされた仮想ボリュームの領域に、プールに属する記憶デバイスについての記憶領域を割り当てる。この割り当ては、上位装置が仮想ボリュームにアクセスすることに応じて実行される。一つのプールには複数の仮想ボリュームが対応可能であるために、ストレージシステムはプールの記憶領域を有効活用することができる。ストレージシステムはあらかじめ大きな、見かけの容量を持つ仮想ボリュームを用意しておき、プール内の記憶デバイス利用状況に応じて、プールに新たな記憶デバイスを追加する。
【０００７】
ＡＯＵ技術においては、プールに属するハードディスクドライブ（以下、［ＨＤＤ］ということもある。）の電源オンが、仮想ボリュームに割り当て前から割り当て後まで継続されていると、電力が浪費されるとともにハードディスクドライブの寿命が低下するという課題がある。そこで、本発明は、上位装置に対する記憶領域の提供が、既述のＡＯＵ技術によって実現されるストレージシステムにおいて、プールに割り当てられた記憶資源に対する必要電力を低減させ、かつ、この記憶資源の寿命低下を避けるようにした、ストレージシステムを提供することにある。本発明の他の目的は、さらに、上位装置が記憶資源にアクセスする際のアクセス速度を向上可能なストレージシステムを提供することにある。
【課題を解決するための手段】
【０００８】
前記目的を達成するために、本発明は、仮想ボリュームに割り当てられていない記憶デバイスを準備状態に置き、記憶デバイスが仮想ボリュームに割り当てられる際に記憶デバイスを準備状態から動作状態にして、電力消費を抑えたストレージシステムを提供することを特徴とするものである。仮想ボリュームに記憶デバイスが割り当てられる前に準備状態から動作状態にしておくことが好ましい。さらに仮想ボリュームに割り当てる際の優先度が高い記憶デバイスから、仮想ボリュームに割り当て前に記憶デバイスを準備状態から動作状態にしておくことが好ましい。さらに、仮想ボリュームに未割り当ての記憶デバイスの何パーセントかを事前に準備状態から動作状態にしておくことが好ましい。記憶デバイスの準備状態とは、例えば、記憶デバイスの駆動回路の電源がオフの状態、あるいは記憶デバイスの電源がオンではあるが、記憶デバイスが省電力モードにある状態をいう。
【発明の効果】
【０００９】
以上説明したように、本発明によれば、上位装置に対する記憶領域の提供が、既述のＡＯＵ技術によって実現されるストレージシステムにおいて、プールに割り当てられた記憶資源に対する必要電力を低減させ、かつ、この記憶資源の寿命低下を避けることができる。さらに本発明によれば、上位装置が記憶資源にアクセスする際のアクセス速度を向上することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、以後説明される図面においては、同一部には同一符号を付し、その繰り返しの説明は省略又は簡略化されることがある。図１は、本発明が適用されるストレージシステム（「ストレージ装置」ということもある。）６００を含んだ、記憶制御システムを示すハードウエアブロック図である。ストレージシステム６００は複数の記憶デバイス３００と、情報処理装置２００からの入出力要求に応答して記憶デバイス３００への入出力制御を行う記憶デバイス制御装置（コントローラ）１００と、を備えて構成されている。
【００１１】
情報処理装置２００は上位装置に相当し、ＣＰＵやメモリ等を備えたサーバやホストコンピュータ（ホスト）や、ストレージ装置の管理用コンピュータからなり、例えば、ワークステーション、メインフレームコンピュータ、パーソナルコンピュータ等で構成される。情報処理装置２００は複数台のコンピュータをネットワーク接続して構成することもできる。情報処理装置２００はオペレーティングシステム上で動作するアプリケーションプログラムを実装している。アプリケーションプログラムとしては、例えば、銀行の自動預金預け払いシステムや航空機の座席予約システム等がある。また、サーバとしては、アプリケーションを実行する、更新系サーバや、更新系サーバのバックエンドでバックアップなどを実行するバックアップサーバがある。
【００１２】
情報処理装置１乃至３（２００）はＬＡＮ（Local Area Network）４００を介してストレージ装置６００と接続されている。ＬＡＮ４００は、例えば、イーサネット（登録商標）やＦＤＤＩ等の通信網であり、情報処理装置１乃至３（２００）とストレージシステム６００との間の通信はＴＣＰ／ＩＰプロトコルによって行われる。情報処理装置１乃至３（２００）からはストレージシステム６００に対してファイル名指定によるデータアクセス要求（ファイル単位でのデータ入出力要求。以下、ファイルアクセス要求と称する。）が後述のチャネル制御部ＣＨＮ１乃至ＣＨＮ４（１１０）に送信される。
【００１３】
ＬＡＮ４００にはバックアップデバイス９１０が接続されている。バックアップデバイス９１０は、例えば、ＭＯ、ＣＤ−Ｒ、ＤＶＤ−ＲＡＭ等のディスク系デバイス、ＤＡＴテープ、カセットテープ、オープンテープ、カートリッジテープ等のテープ系デバイスで
ある。バックアップデバイス９１０はＬＡＮ４００を介して記憶デバイス制御装置１００との間で通信を行うことにより記憶デバイス３００に記憶されているデータのバックアップデータを記憶する。また、バックアップデバイス９１０は情報処理装置１（２００）と接続し、情報処理装置１（２００）を介して記憶デバイス３００に記憶されているデータのバックアップを取得する。
【００１４】
記憶デバイス制御装置１００はチャネル制御部ＣＨＮ１乃至４（１１０）を備える。記憶デバイス制御装置１００は、チャネル制御部ＣＨＮ１乃至４（１１０）とＬＡＮ４００とを介して、情報処理装置１乃至３（２００）と、バックアップデバイス９１０と、記憶デバイス３００との間のライトアクセス又はリードアクセスを媒介する。チャネル制御部ＣＨＮ１乃至４（１１０）は情報処理装置１乃至３（２００）からのファイルアクセス要求を個々に受け付ける。すなわち、チャネル制御部ＣＨＮ１乃至４（１１０）には個々にＬＡＮ４００上のネットワークアドレス（例えば、ＩＰアドレス）が割り当てられていて、それぞれが個別にＮＡＳとして振る舞い、個々のＮＡＳがあたかも独立したＮＡＳが存在するかのようにＮＡＳとしてのサービスを情報処理装置１乃至３（２００）に提供することができる。このように１台のストレージシステム６００に個別にＮＡＳとしてのサービスを提供するチャネル制御部ＣＨＮ１乃至４（１１０）を備えるように構成したことで、従来、独立したコンピュータで個々に運用されていたＮＡＳサーバが一台のストレージシステム６００に集約される。そして、これによりストレージシステム６００の統括的な管理が可能となり、各種設定・制御や障害管理、バージョン管理といった保守業務の効率化が図られる。
【００１５】
情報処理装置３乃至４（２００）はＳＡＮ５００を介して記憶デバイス制御装置１００と接続されている。ＳＡＮ５００は、記憶デバイス３００が提供する記憶領域におけるデータの管理単位であるブロックを単位として情報処理装置３乃至４（２００）との間でデータの授受を行うためのネットワークである。ＳＡＮ５００を介して行われる情報処理装置３乃至４（２００）と記憶デバイス制御装置１００との間の通信は一般にＳＣＳＩプロトコルに従って行われる。情報処理装置３乃至４（２００）からは、ストレージシステム６００に対して、ファイバチャネルプロトコルに従ってブロック単位のデータアクセス要求（以下、ブロックアクセス要求と称する。）が送信される。
【００１６】
ＳＡＮ５００にはＳＡＮ対応のバックアップデバイス９００が接続されている。ＳＡＮ対応バックアップデバイス９００は、ＳＡＮ５００を介して記憶デバイス制御装置１００との間で通信を行うことにより、記憶デバイス３００に記憶されているデータのバックアップデータを記憶する。
【００１７】
記憶デバイス制御装置１００はチャネル制御装置ＣＨＮ１乃至４（１１０）に加えて、更にチャネル制御部ＣＨＦ１乃至２，ＣＨＮ２乃至３（１１０）を備える。記憶デバイス制御装置１００はチャネル制御部ＣＨＦ１乃至２（１１０）とＳＡＮ５００とを介して、情報処理装置３乃至４（２００）及びＳＡＮ対応バックアップデバイス９００との間の通信を行う。チャネル制御部は、上位装置からのアクセスコマンドを処理する。
【００１８】
情報処理装置５（２００）は、更に、ＬＡＮ４００やＳＡＮ５００等のネットワークを介さずに記憶デバイス制御装置１００と接続されている。この情報処理装置５（２００）の例は、例えばメインフレームコンピュータである。情報処理装置５（２００）と記憶デバイス制御装置１００との間の通信は、例えばＦＩＣＯＮ（Fiber Connection)（登録商標）やＥＳＣＯＮ（Enterprise System Connection）（登録商標）、ＡＣＯＮＡＲＣ（Advanced Connection Architecture）（登録商標）、ＦＩＢＡＲＣ（Fiber Connection Architecture）（登録商標）などの通信プロトコルに従って行われる。情報処理装置５（２００）からはストレージシステム６００に対して、これらの通信プロトコルに従ってブロックアクセス要求が送信される。記憶デバイス制御装置１００は、チャネル制御部ＣＨＡ１乃至２（１１０）を通じて情報処理装置５（２００）との間で通信を行う。
【００１９】
ＳＡＮ５００には、他のストレージシステム６１０が接続されている。ストレージシステム６１０は、記憶デバイス制御装置１００にストレージシステムが有する記憶資源を提供するという機能を、情報処理装置及びストレージ装置６００に提供する。ストレージ装置の情報処理装置に対する見かけ上の記憶領域が、ストレージ装置６１０によって拡張されたことになる。なお、ストレージシステム６１０はＳＡＮ５００以外にもＡＴＭなどの通信回線によりストレージシステム６００に接続していることもある。また、ストレージシステム６１０をストレージシステム６００に直接接続することもできる。
【００２０】
このように、ストレージシステム６００内にチャネル制御部ＣＨＮ１乃至４（１１０）、チャネル制御部ＣＨＦ１乃至２（１１０）、チャネル制御部ＣＨＮ１乃至２（１１０）を混在させて装着させることにより、異種ネットワークに接続できるストレージシステム
を実現できる。即ち、このストレージシステム６００はチャネル制御部ＣＨＮ１乃至４（１１０）を用いてＬＡＮ４００に接続し、かつチャネル制御部ＣＨＡ１乃至２（１１０）を用いてＳＡＮ５００に接続するという、ＳＡＮ−ＮＡＳ統合ストレージシステムである。
接続部１５０は、各々のチャネル制御部１１０、共有メモリ１２０、キャッシュメモリ１３０、及び各々のディスク制御部１４０を相互に接続する。記憶デバイスとしては、主として、ハードディスクドライブであるために、記憶デバイス制御部を便宜上ディスク制御部とした。これらのチャネル制御部１１０、共有メモリ１２０、キャッシュメモリ１３０、及びディスク制御部１４０相互間のコマンド又はデータの送受信は接続部１５０を介して行われる。接続部１５０は例えば高速スイッチングによりデータ伝送を行う超高速クロスバスイッチ等の高速バスで構成される。これにより、チャネル制御部１１０相互間の通信パフォーマンスが大幅に向上するとともに、高速なファイル共有機能や高速フェイルオーバー等が可能になる。
【００２１】
共有メモリ１２０、及びキャッシュメモリ１３０はチャネル制御部１１０、及びディスク制御部１４０が共用するメモリ装置である。共有メモリ１２０は主として制御情報やコマンド等を記憶するために利用され、キャッシュメモリ１３０は主としてデータを記憶するために利用される。例えば、あるチャネル制御部１１０が情報処理装置２００から受け取ったデータ入出力コマンドが書き込みコマンドであった場合に、当該チャネル制御部１１０はその書き込みコマンドを共有メモリ１２０に書き込むとともに、情報処理装置２００から受け取ったライトデータをキャッシュメモリ１３０に書き込む。一方、ディスク制御部１４０は共有メモリ１２０を監視しており、共有メモリ１２０に書き込みコマンドが書き込まれたと判定すると、当該書き込みコマンドに従ってキャッシュメモリ１３０からライトデータを読み出して、これを記憶デバイス３００に書き込む。
【００２２】
一方、あるチャネル制御部１１０が情報処理装置２００から受け取ったデータ入出力コマンドが読み出しコマンドであった場合に、当該チャネル制御部１１０はその読み出しコマンドを共有メモリ１２０に書き込むとともに、読み出し対象となるデータがキャッシュメモリ１３０に存在しているか否かをチェックする。ここで、読み出し対象となるデータがキャッシュメモリ１３０に存在している場合には、チャネル制御部１１０はそのデータをキャッシュメモリ１３０から読み取って情報処理装置２００に送信する。読み出し対象となるデータがキャッシュメモリ１３０に存在していない場合には、共有メモリ１２０に読み出しコマンドが書き込まれたことを検出したディスク制御部１４０は読み出し対象となるデータを記憶デバイス３００から読み出してこれをキャッシュメモリ１３０に書き込むとともに、その旨を共有メモリ１２０に書き込む。チャネル制御部１１０は共有メモリ１２０を監視することにより、読み出し対象となるデータがキャッシュメモリ１３０に書き込まれたことを検出すると、そのデータをキャッシュメモリ１３０から読み出して情報処理装置２００に送信する。
【００２３】
ディスク制御部１４０はチャネル制御部１１０から送信された論理アドレス指定による記憶デバイス３００へのデータアクセス要求を、物理アドレス指定によるデータアクセス要求に変換し、チャネル制御部１１０から出力されるＩ／Ｏ要求に応答して記憶デバイス３００へのデータの書き込み又は読み取りを行う。記憶デバイス３００がＲＡＩＤ構成されている場合には、ディスク制御部１４０はＲＡＩＤ構成に従ったデータのアクセスを行う。この他にも、ディスク制御部１４０は記憶デバイス３００に記憶されたデータの複製管理、バックアップ制御、災害発生時のデータ消失防止（ディザスタリカバリ）等を目的としてレプリケーション制御又はリモートコピー制御等を行う。すなわち、ディスク制御部は、記憶デバイスであるＨＤＤの制御、ＲＡＩＤグループの制御を行う。複数のＨＤＤの記憶領域によってＲＡＩＤグループが構成されている。
【００２４】
記憶デバイス３００は単一又は複数のディスクドライブ（物理ボリューム）を備えており、情報処理装置２００からアクセス可能な記憶領域を提供する。記憶デバイス３００が提供する記憶領域には単一又は複数の物理ボリュームの記憶空間を合わせた論理ボリュームが設定されている。記憶デバイス３００に設定される論理ボリュームには、情報処理装置２００からアクセス可能なユーザ論理ボリュームや、チャネル制御部１１０の制御のために使用されるシステム論理ボリュームがある。システム論理ボリュームにはチャネル制御部１１０で実行されるオペレーティングシステムも格納されている。また、記憶デバイス３００が、上位装置に提供する論理ボリュームには、各々のチャネル制御部１１０がアクセス可能な論理ボリュームが割り当てられている。もとより、複数のチャネル制御部１１０が同一の論理ボリュームを共有することもできる。
【００２５】
尚、記憶デバイス３００として、例えば、ハードディスク装置や半導体メモリ（フラッシュメモリ等）を用いることができる。記憶デバイス３００のストレージ構成として、例えば、複数の記憶デバイス３００によりＲＡＩＤ方式のディスクアレイを構成してもよい。また、記憶デバイス３００と記憶デバイス制御装置１００は直接接続してもよく、ネットワークを介して接続してもよい。更に、記憶デバイス３００は記憶デバイス制御装置１００と一体に構成してもよい。
【００２６】
管理端末１６０はストレージシステム６００を保守・管理するためのコンピュータ装置であり、内部ＬＡＮ１５１を通じて各々のチャネル制御部１１０とディスク制御部１４０に接続している。オペレータは管理端末１６０を操作することで記憶デバイス３００のディスクドライブの設定、論理ボリュームの設定、チャネル制御部１１０やディスク制御部１４０で実行されるマイクロプログラムのインストール等を行うことが可能である。この種の制御は、管理端末に基づくもののほか、上位装置（ホスト）上で動作するプログラムがネットワークを経由するものに基づいても良い。
【００２７】
図２は図１に示す記憶制御システムの機能ブロック図である。図２は、既述のＡＯＵの処理動作を示している。この処理動作を、以後ＡＯＵ処理と呼ぶ。チャネル制御部１１０は、マイクロプロセッサＣＴ１とローカルメモリＬＭ１を備え、チャネルコマンド制御プログラムはローカルメモリＬＭ１に記憶されている。マイクロプロセッサＣＴ１はローカルメモリＬＭ１を参照してチャネルコマンド制御プログラムを実行する。
【００２８】
チャネルコマンド制御プログラムは、ホストにＬＵを提供する。チャネル制御プログラムはホストからＬＵに対して送られるアクセスコマンドを処理し、ＬＤＥＶへのアクセスへと変換する。チャネルコマンド制御プログラムはホストからのアクセスに依らず、 ＬＤＥＶに対してアクセスすることもある。ＬＤＥＶとは、ＲＡＩＤグループの一部分を論理的に切り出した論理ボリュームである。但し、仮想ＬＤＥＶはホストのアクセスを受けるが、実記憶領域を備えていない。ホストはＬＤＥＶではなく、ＬＵにアクセスする。ＬＵとは、ホストがアクセスする記憶領域の単位である。一部のＬＵは仮想ＬＤＥＶに割り当てられている。以後仮想ＬＤＥＶに割り当てられているＬＵを実ボリュームに割り当てられているＬＵと区別するために、便宜上「仮想ＬＵ」という。
【００２９】
ディスク制御部１４０は、マイクロプロセッサＣＴ２とローカルメモリＬＭ２とを備えている。ローカルメモリＬＭ２には、ＲＡＩＤ制御プログラムとＨＤＤ制御プログラムが記憶されている。マイクロプロセッサＣＴ２はローカルメモリＬＭ２を参照して、ＲＡＩＤ制御プログラムとＨＤＤ制御プログラムを実行する。ＲＡＩＤ制御プログラムは、複数のＨＤＤからＲＡＩＤグループを構成し、上位のチャネルコマンド制御プログラムにＬＤＥＶを提供する。ＨＤＤ制御プログラムは、上位のＲＡＩＤ制御プログラムの要求に応じてＨＤＤに対してデータの読み書きを実行する。ホスト２００ＡはＬＵ１０を介してＬＤＥＶ１２Ａにアクセスする。
【００３０】
ホスト２００Ｂに対する記憶領域はＡＯＵ技術によって構成されている。ホスト２００Ｂは仮想ＬＵ１４を介して仮想ＬＤＥＶ１６にアクセスする。仮想ＬＤＥＶ１６にはプール１８が割り当てられており、このプールにはＬＤＥＶ１２Ｂ，１２Ｃが割り当てられている。仮想ＬＵと仮想ＬＤＥＶとが仮想ボリュームに相当する。プールとは、仮想ＬＤＥＶに割り当てられるＬＤＥＶの集合をいう。なお、チャネルＩ／Ｆ，Ｉ／Ｏパスとは、ホストがストレージサブシステムにアクセスするインターフェースであり、ファイバチャネル、ｉＳＣＳＩなどをいう。ディスク制御部１４０は、前記ＲＡＩＤ制御プログラム、ＨＤＤ制御プログラムに基づいて、プール１８内の記憶領域をホスト２００Ｂからのデータ書き込みアクセスに基づいて仮想ＬＤＥＶに割り当てる。また、ＨＤＤ制御プログラムは、プール１８に割り当てられたＬＤＥＶを提供するＨＤＤの電源の制御を実現する。
【００３１】
図３は仮想ボリュームとプールとの関係を示すブロック図である。ホストは仮想ボリューム１６に対してアクセスする。アクセスされた仮想ボリュームの領域はプール１８内の記憶領域に対応している。このプール内の記憶領域の仮想ボリュームに対する割り当ては、ホストからのアクセスに応じてチャネル制御部１１０によって動的に生成される。仮想ボリュームの領域のうち使用されていない領域の分は物理記憶装置を消費しないので、ストレージシステムはホストに対してあらかじめ十分大きな容量の仮想ボリュームを用意しておき、プール１８内の記憶領域の仮想ボリュームに対する割り当て状況を見て、徐々に新たな記憶領域１８Ａをプール１８に追加するという運用が可能になる。
【００３２】
図４は本発明の特徴をより端的に示す機能ブロック図である。ストレージシステム６００には、各ホストがアクセスする、仮想ボリューム１７Ａ，１７Ｂ・・・１７Ｎが存在し、各仮想ボリュームにホスト２００Ａ，２００Ｂ・・・２００Ｎが対応している。各仮想ボリュームにプールＡ，Ｂ・・・Ｎがそれぞれ対応している。仮想ボリューム１６Ａの、ホスト２００Ａにとっての見かけ上の容量のうち、実際に記憶領域がプールＡから割り当てられている部分は１７Ａで示されている。他の仮想ボリュームについても同様である。
【００３３】
符号３０１は、プールＡに割り当てられている複数のＨＤＤの集合を示している。符号３０２で括られたＨＤＤの集合は、仮想ボリューム１６Ａに既に割り当てられたハードディスクドライブの集合であり、仮想ボリューム１６Ａの実記憶領域１７Ａを提供している。
符号３０３で括られたＨＤＤの集合は、仮想ボリューム１６Ａに未割り当てのＨＤＤの集合を示す。複数のＨＤＤ３０２の各電源スイッチはオンされており、複数のＨＤＤの各電源スイッチはオフされている。
【００３４】
符号１０はプール制御機能を示し、符号２０は電源制御機能を示す。これら機能は、ＨＤＤ制御プログラム（図２）によって実現される。プール制御機能とは、各プールに属するＨＤＤのＡＯＵボリューム１６Ａ・・・１６Ｎへの割り当ての制御を実現し、プール内のＨＤＤの電源のオン又はオフの割合を決定する機能である。
【００３５】
電源制御機能とは、各ＨＤＤの電源の実際のオン／オフを制御する機能である。仮想ボリュームに未割り当てのＨＤＤの電源はオフ状態になっているために、ストレージシステムの消費電力を低減することが可能となっている。ＨＤＤ制御プログラムは、ＨＤＤを仮想ボリュームに割り当てる際に、ＨＤＤの電源をオンする。符号１９は、仮想ボリュームに割り当てられている記憶領域以上のデータがホストから仮想ボリュームに書き込み要求された時などで、当該データを一時的に格納しておく一時記憶領域（Ｔｅｍｐ領域）を示している。このＴｅｍｐ領域には各仮想ボリュームについての記憶領域（１９Ａ，１９Ｂ・・・・１９Ｎ）が確保されている。なお、電源をオフする代わりにＨＤＤの電源を省電力モードにするものであっても良い。この場合は、ＨＤＤを仮想ボリュームに割り当てる際に、ＨＤＤの電源を省電力モードから通常モードに切り替える。以後の説明では、ＨＤＤの電源をオフすることを例とするが、これに限定するものではない。
【００３６】
ストレージシステムは、プールに属するＨＤＤの電源を制御するために必要な制御テーブルを備えている。図５はディスク管理テーブルであり、同一プールに属するＨＤＤについて、ＨＤＤの種別、性能（容量と回転数）、記憶可能容量、ＨＤＤが搭載されているストレージ装置の区別、アクセス頻度、仮想ボリュームへの割り当て（ＡＯＵ割り当てのことである。）の有無、各ＨＤＤ電源状態に関する情報が図５の制御テーブルに登録されている。
【００３７】
この制御テーブルの初期設定は、管理装置によって行われる。管理装置の一例がストレージシステムに設けられている管理端末１６０である。管理装置の他の例として、ＬＡＮによってストレージシステムに接続された管理サーバである。図５の制御テーブルへの、ＡＯＵ割り当ての要否、及び電源のオン・オフの要否は、チャネル制御部１１０がホストからのアクセスに応じて判定し、この判定結果をディスク制御テーブルに更新記録する。ディスク制御部１４０はこの制御テーブルに基づいて、ＨＤＤのＡＯＵ割り当て、ＨＤＤの電源制御を実行する。なお、この更新記録を管理装置の機能によって実現しても良い。ディスク管理テーブルは共有メモリに記録される。ディスク制御部は、ＨＤＤの残り容量をディスク管理テーブルに記録する。
【００３８】
図６は、プールに属するＨＤＤの電源制御を実行するためのプール管理テーブルを示したものである。この管理テーブルは各プールについて全記憶容量を有している。全記憶容量はプールに割り当てられた複数の記憶デバイスの記憶容量の合計である。この全記憶容量はプールに新たな記憶デバイスを割り当てることによって増加される。プール管理テーブルは、全記憶容量のうちＡＯＵ割り当てがされていないＨＤＤの合計記憶容量、ＡＯＵ未割り当てであるが、電源がオンになっているＨＤＤの全記憶容量、電源がオンになっているＨＤＤの電源オフのＨＤＤに対する比率、ＡＯＵ未割り当てのＨＤＤに対する、電源をオンすべき、ＡＯＵ未割り当てのＨＤＤの比率、ＨＤＤの電源をオフからオンにする際の、電源オフのＨＤＤに対する電源オンにすべきＨＤＤの比率に関する情報を含んでいる。比率とはＨＤＤの数ではなく、ＨＤＤの記憶容量を基準にしたときの比率である。この制御テーブルは共有メモリに記録されている。ディスク制御部はこの制御テーブルを参照して、記憶デバイスの電源制御を実行する。
【００３９】
図７は、プール管理テーブルに含まれる制御情報の説明図であり、（１）はＡＯＵ未割当のＨＤＤを示し、（２）は未割当の記憶デバイスのうち電源オンのＨＤＤの領域を示したものである。現在電源オンのＨＤＤの比率は、（（２）／（１））×１００（％）で示され、ＨＤＤの電源をオンに変換する割合とは、ＡＯＵ未割当の電源オンのＨＤＤが閾値を下回った場合に、電源をオフから電源をオンにすべき制御を行なう基準と成るものである。図７において、一つの矩形ブロックが一つのＨＤＤに対応している。図８に示すように、ＨＤＤとしては、ファイバチャネルやＳＡＴＡを通信プロトコルとするＨＤＤを使用できる。性能が高いＨＤＤ（ＦＣドライブ）から優先的にＡＯＵ割り当てがされる。すなわち、高性能なＨＤＤから優先的に電源がオンされる。
【００４０】
ＡＯＵが未割り当てのＨＤＤでも、ＡＯＵ割り当て前に電源をオンするのは、ホストからＡＯＵボリューム（仮想ボリューム）へのアクセス速度を向上させるためである。図９に示すように、記憶デバイスの電源オン・オフは筐体毎に制御されても良い。筐体とは複数の記憶デバイスを収容する構造体である。筐体１乃至筐体３はそれぞれ複数の記憶デバイスを備え、筐体１乃至筐体３のそれぞれについて記憶デバイスの電源が制御される。仮想ボリュームへ割り当ては記憶デバイス毎に行われる。筐体毎に性能の異なる記憶デバイスが当該筐体に収容されている。性能の高い、すなわち、アクセスされる際の性能が高い記憶デバイスから電源がオン、すなわち、仮想ボリュームに優先的に割り当てられる。また、過去の使用頻度が低い記憶デバイスから電源をオンする等、運用形態に基づく優先度付けも考えられる。
【００４１】
次に、ＨＤＤの電源制御の動作例について説明する。第１の例に係わるフローチャートを図１０に示す。チャネル制御部がホストから書き込み命令を受領する（１０００）と、チャネル制御部は書き込み命令を解析し、ライトデータをＴｅｍｐ領域に一次記憶し、ホストに書き込み成功を返す（１００２）。次いで、チャネル制御部は、ＡＯＵ処理を実行する。ＡＯＵ処理とは、上位装置からの書き込みアクセスがストレージシステムにあると、チャネル制御部は、上位装置からのアクセスがあった仮想ボリュームの領域に実記憶領域を割り当てられているか否かを判定し、仮想ボリュームに実記憶領域が割り当てられていない場合には、これを割り当てる。
【００４２】
チャネル制御部は、この判定のために、Ｔｅｍｐ領域に格納されたデータ容量と電源がオンされているＨＤＤの未割り当て記憶領域の合計容量とを比較して（１００４）、この合計容量は、チャネル制御部がディスク管理テーブル（図５）を参照することによって分かるが、Ｔｅｍｐ領域の容量が未割り当ての記憶領域の合計容量を超える場合には、チャネル制御部は電源オフ状態のＨＤＤの電源を新たにオンすべくディスク管理テーブルの内容を更新する。
【００４３】
ディスク制御部は、この制御テーブルを参照して、優先度にしたがって、すなわち、図５のテーブルの上から順番に電源をオンにすべきＨＤＤを定めて、このＨＤＤの電源をオフからオンにする（１００６）。これにより、新たに電源オンになったＨＤＤは、上位装置に対して新たな記憶領域を提供する。チャネル制御部はこの制御テーブルを参照しつつ、再度上記判定ステップ（１００４）を実行する。
【００４４】
上記判定ステップにおいて、Ｔｅｍｐ領域の容量が未割り当ての記憶領域の合計容量以下の場合には、電源オンの記憶デバイスの未割り当て領域を仮想ボリュームに割り当てて、この領域にＴｅｍｐ領域の格納データを格納するとともに、Ｔｅｍｐ領域の格納データを消去する（１００８）。
【００４５】
図１１は第２の処理例を示すものであり、第１の処理例と異なる部分は、上位装置からストレージシステムに書き込み要求されたデータ容量が、電源オンの記憶デバイスの未割り当て領域を超える場合に、書き込み要求されたデータをＴｅｍｐ領域に格納する点である。ステップ１１００では、チャネル制御部はホストからのライト処理命令を受領する。
ステップ１１０２の処理において、書き込み要求された容量が電源オンのＨＤＤの未割り当て総容量を超える場合に、Ｔｅｍｐ領域に記憶データを一時記憶する（１１０４）。次いで、ＨＤＤの電源がオンされる（１１０６）。
【００４６】
ステップ１１０８において、ディスク制御部は、Ｔｅｍｐ領域に格納されたデータ量と電源がオンされたＨＤＤのＡＯＵ未割り当ての記憶領域の総容量とを比較し、前者が後者の容量を超える場合には、ディスク制御部はステップ１１０８の処理を再実行する。ステップ１１０８において、前者の容量が後者の容量以下の場合には、ディスク制御部は、新たに電源オンしたＨＤＤを新たに仮想ボリュームに割り当てて、Ｔｅｍｐ領域の格納データを電源オンしたＨＤＤに移動する（１１１２）。次いで、ディスク制御部はＴｅｍｐ領域のデータを消去する。
【００４７】
図１２はＨＤＤの電源オン動作の遷移を示すブロック図である。（１）で上位装置（ホスト）にて電源オンに係わる記憶領域以上の書き込みが発生すると、（２）にて、ストレージシステムはＴｅｍｐ領域に書き込みデータを格納して、ホストに書き込み完了を通知する。次いで、ストレージシステムは、（３）で示すように、ある割合、例えば１０％分のＨＤＤの電源をオンする。この割合を達成するように、記憶デバイス単位で、ディスク制御部はＨＤＤの電源をオンする。（４）に示すように、電源オンしたＨＤＤの未割り当て領域の容量とＴｅｍｐ領域の格納容量とを比較して、前者が不足していれば、さらに１０％相当の記憶容量を提供するに足るＨＤＤの電源がオンされる。（５）において、電源オンされたＨＤＤの記憶領域を仮想ボリュームに割り当てて、この領域にＴｅｍｐ領域からデータを移動する。
【００４８】
図１３はＨＤＤの電源オン動作の遷移を示す第２の例に係わるブロックである。（３）において、ＨＤＤの電源オンが筐体単位で行われる点が、第１の例と異なる。ＨＤＤが仮想ボリュームに割り当てられる前に電源オンされる割合は、適宜選択されるものであるって限定されるべきものではない。図１４は第３の例に係わるブロック図である。この処理例は、図１０及び図１１の処理の終了の後、電源オンにすべきＨＤＤの割合（閾値）と現在電源オンになっているＨＤＤの割合を、ディスク制御部がプール管理テーブルに基づいてチェックして、現在電源オンになっているＨＤＤの割合が閾値に達していなければ、新たに他の記憶デバイスの電源をオンする（図１２の（１）から（２））。このために、ディスク制御部は、図１０又は図１１の処理の終了後、電源オンであるＨＤＤのＡＯＵ未割り当て領域の容量又は割合をプール管理テーブルに基づいて算出し、これを同テーブルに定まっている閾値と比較し、閾値以下或いは閾値未満である場合には、この閾値に達するのに必要な記憶容量を算出し、この記憶容量相当分のＨＤＤの電源をオンにする。
【００４９】
図１５は記憶デバイスの電源制御の他の処理例を示すブロック図である。ＡＯＵボリューム１６の実記憶容量は固定ではなく変化するため、ＡＯＵボリュームのデータを正規化用に割り当てられたディスク１６にコピーして、ＡＯＵボリュームに割り当てられた記憶領域をこの割り当てから解放することが行われる。図１５では、仮想ボリューム１６に割り当てられたプール１８に属する複数の記憶領域（複数のハードディスクドライブ）のデータが正規化用ボリューム１６にマイグレートされた状態を示している。
【００５０】
正規化ボリュームにデータがマイグレート後、マイグレートもとのＡＯＵ割り当てが解放されたＨＤＤの電源はオンからオフにされる。このＨＤＤの記憶領域は、ＡＯＵボリュームに新たに割り当てられる。図１６は正規化処理を実現するためのディスク管理テーブルである。ディスク属性は、ＨＤＤが仮想ボリュームに割り当てられたものか、正規化ボリュームに割り当てられた（Fixed）かを示すものである。正規化ボリュームに割り当てられたＨＤＤのＡＯＵ割当フラグはオフとなる。一旦仮想ボリュームに割り当てられ電源がオンされたハードディスクドライブは、正規化処理などの後、このＨＤＤのＡＯＵ割当に対して解放され、電源がオフされる。この処理により電源がオフされたＨＤＤはプールへの割当から解放されても良い。なお、プールに新たなＨＤＤを割り当てることによって、プールの総記憶容量を増加することができる。なお、既述の実施形態において、Ｔｅｍｐ領域はキャッシュメモリによって提供される。
【図面の簡単な説明】
【００５１】
【図１】本発明が適用されるストレージシステムを含んだ、記憶制御システムを示すハードウエアブロック図である。
【図２】図１に示す記憶制御システムの機能ブロック図である。
【図３】仮想ボリュームとプールとの関係を示すブロック図である。
【図４】記憶デバイスの電源制御を示す機能ブロック図である。
【図５】コントローラが記憶デバイスの制御を実行するための管理テーブルである。
【図６】プールに属するＨＤＤの電源制御を実行するためのプール管理テーブルである。
【図７】プール管理テーブルに含まれる制御情報の説明図である。
【図８】プールに属する記憶デバイスの種類と、記憶デバイスの電源オン又はオフ状態を示す、プールのブロック図である。
【図９】記憶デバイスの電源オン・オフが筐体単位で行われることを示す、プールのブロック図である。
【図１０】記憶デバイスの電源制御動作を示す、フローチャートである。
【図１１】記憶デバイスの電源制御動作の第２の例を示す、フローチャートである。
【図１２】記憶デバイスの電源制御動作の遷移を示す、プールのブロック図である。
【図１３】記憶デバイスの電源制御動作の遷移の第２の例を示す、プールのブロック図である。
【図１４】その第３の例を示す、プールのブロック図である。
【図１５】プール内の記憶デバイスに格納されたデータを正規化ボリュームに移動することを示す、機能ブロック図である。
【図１６】正規化処理を実現するためのディスク管理テーブルである。
【符号の説明】
【００５２】
１６  仮想ボリューム、１８  プール、１００  コントローラ、１１０  チャネル制御部、１４０  ディスク制御部、２００  上位装置、３００  ハードディスクドライブ、６００  ストレージシステム
【図１】
2007293442.tif 000003
【図２】
2007293442.tif 000004
【図３】
2007293442.tif 000005
【図４】
2007293442.tif 000006
【図５】
2007293442.tif 000007
【図６】
2007293442.tif 000008
【図７】
2007293442.tif 000009
【図８】
2007293442.tif 000010
【図９】
2007293442.tif 000011
【図１０】
2007293442.tif 000012
【図１１】
2007293442.tif 000013
【図１２】
2007293442.tif 000014
【図１３】
2007293442.tif 000015
【図１４】
2007293442.tif 000016
【図１５】
2007293442.tif 000017
【図１６】
2007293442.tif 000018