(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続された第１のストレージノード及び第２のストレージノードを備えたストレージシステムにおいて、
前記第１のストレージノードは、
データを記憶する第１の記憶手段と、
所定の条件に従って、前記第１の記憶手段を非休止状態から休止状態に変更する第１の制御手段と、
前記第１の制御手段によって前記第１の記憶手段が非休止状態から休止状態へ変更される際に、前記第１の記憶手段に記憶及び管理されているデータのうち読み出し要求頻度が高いデータに分類されるデータを送信する送信手段と、を有し、
前記第２のストレージノードは、
データを記憶する第２の記憶手段と、
前記所定の条件に従って、前記第２の記憶手段を非休止状態に変更する第２の制御手段と、
前記送信手段から送信され、該第２のストレージノードによって受信され、該第２の記憶されたデータのうち、読み出し要求に対応するデータを前記第２の記憶手段から読み出すことにより、前記第１の制御手段によって休止状態に制御されている前記第１の記憶手段に対するアクセス要求の処理を代行するＩ／Ｏ処理手段と、を有する
ことを特徴とするストレージシステム。
【請求項２】
前記Ｉ／Ｏ処理手段は、
前記第１の記憶手段に対するデータの読み出し要求があった場合に、当該読み出し要求に対応するデータを前記第２の記憶手段から読み出して前記読み出し要求の送信元へ送信することを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記第２のストレージノードは、
前記第２の制御手段によって前記第２の記憶手段が非休止状態から休止状態へ変更される際に、前記第２の記憶手段の管理情報を送信する送信手段をさらに有し、
前記第１のストレージノードは、
前記第２のストレージノードが有する送信手段から送信された管理情報に基づいて、前記第１の記憶手段からデータを読み出すことにより、前記第２の制御手段によって休止状態に制御されている前記第２の記憶手段に対するアクセス要求の処理を代行するＩ／Ｏ処理手段をさらに有する
ことを特徴とする請求項１または２に記載のストレージシステム。
【請求項４】
前記Ｉ／Ｏ処理手段は、
前記第１の記憶手段に対するデータの書き込み要求があった場合に、当該書き込み要求に対応するデータを前記第２の記憶手段に書き込み、所定の転送条件が満たされた場合に、前記第２の記憶手段に書き込まれたデータを前記第１の記憶手段に転送することを特徴とする請求項１または２に記載のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、記憶装置をそれぞれ備えた複数のストレージノードをネットワークで接続して構成されるストレージシステムに関する。
【背景技術】
【０００２】
従来より、デジタルデータの増加に伴い、大容量のアーカイブデータの格納需要から複数のディスク装置を並列に動作させるストレージ装置が一般化している（例えば、特許文献１参照）。このストレージ装置は、複数の磁気ディスク装置とそれらのディスク装置を制御するコントローラとで構成されるストレージノード間をネットワークで接続することで大容量のデータの格納を実現する。また、このストレージ装置は、多数の磁気ディスク装置を使用するため消費電力が問題となるが、所定時間内にリード要求やライト要求などのアクセス要求が無い磁気ディスク装置をスタンバイ状態にすることで消費電力の低減を図ることが一般的に行われている。
【０００３】
【特許文献１】特開２０００−３３０７３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記した従来の技術は、アクセス効率の最大化と消費電力の低減とを両立できないという問題点があった。すなわち、磁気ディスク装置に対するアクセス効率の最大化を重視する場合には、ストレージ装置内の磁気ディスク装置をスタンバイ状態にすることができないため（例えば、ヘッドは退避させるがモーターは回転させ続け、効率的にアクセスを受け付けることができる状態にする）、アクセス性能と消費電力の低減とを両立できないという問題点があった。
【０００５】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、アクセス効率の最大化と消費電力の低減を両立させることが可能なストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するため、本願が開示するストレージシステムは、ネットワークを介して接続された第１のストレージノード及び第２のストレージノードを備えたストレージシステムにおいて、前記第１のストレージノードは、データを記憶する第１の記憶手段と、所定の条件に従って、前記第１の記憶手段を非休止状態から休止状態に変更する第１の制御手段と、前記第１の制御手段によって前記第１の記憶手段が非休止状態から休止状態へ変更される際に、前記第１の記憶手段の管理情報を送信する送信手段と、を有し、前記第２のストレージノードは、データを記憶する第２の記憶手段と、前記所定の条件に従って、前記第２の記憶手段を非休止状態に変更する第２の制御手段と、前記送信手段から送信された管理情報に基づいて、前記第２の記憶手段からデータを読み出すことにより、前記第１の制御手段によって休止状態に制御されている前記第１の記憶手段に対するアクセス要求の処理を代行するＩ／Ｏ処理手段と、を有することを特徴とする。
【発明の効果】
【００１０】
本願が開示するストレージシステムは、記憶装置が複数のストレージノード間で休止状態あるいは非休止状態を分担するように、休止状態あるいは非休止状態に係る状態条件（例えば、記憶装置ごとに休止状態あるいは非休止状態にする時間を設定する）を保持し、その状態条件に従って、複数のストレージノードに備えられた記憶装置を休止状態あるいは非休止状態に制御するので、非休止（リードやライトなどのアクセスを受け付けるアクティブな）記憶装置を一定期間固定することで、それ以外の記憶装置を休止状態にすることができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００１１】
また、本願が開示するストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置に対するアクセス要求を代行して処理するので、一定期間休止状態の記憶装置に対するアクセス要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００１２】
また、本願が開示するストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置から、その記憶装置に記憶された読み出し要求頻度の高いデータ（例えば、放送データであれば、その内容を検索するためのインデックス情報など）を受信して記憶し、休止状態に制御されている他の記憶装置に対する読み出し要求があった場合に、その記憶したデータの中から読み出し要求に対応するデータを読み出して読み出し要求の要求元に送信するので、休止状態の記憶装置に対する読み出し要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００１３】
また、本願が開示するストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置に対する書き込み要求があった場合に、その書き込み要求に係るデータを一時的に記憶するとともに、所定の転送条件（例えば、予め設定された転送予定所定時間や記憶装置の記憶容量）が満たされた場合に、一時的に記憶した書き込み要求に係るデータを他の記憶装置に転送するので、休止状態に制御されている記憶装置に対する書き込み要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下に添付図面を参照して、この発明に係るストレージシステムの実施例を詳細に説明する。なお、以下では、実施例１に係るストレージシステムを説明した後に、この発明に含まれる他の実施例を説明する。
【実施例１】
【００１５】
以下の実施例１では、実施例１に係るストレージシステムの概要および特徴、ストレージシステムの構成および処理の流れを順に説明し、最後に実施例１による効果を説明する。
【００１６】
［ストレージシステムの概要および特徴（実施例１）］
まず最初に、図１を用いて、実施例１に係るストレージシステムの概要および特徴を説明する。図１は、実施例１に係るストレージシステムの概要を説明するための図である。同図に示すように、実施例１に係るストレージシステムは、複数のディスク（例えば、磁気ディスク装置などの記憶装置）およびコントローラをそれぞれ備えた複数のストレージノードとホストとをそれぞれネットワーク（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）などのＬＡＮ）で接続して構成されるものであって、上位装置（例えば、ユーザが使用するクライアントコンピュータなど）からのアクセス要求（読み出し要求や書き込み要求）を受け付けることを概要とするが、アクセス効率の最大化と消費電力の低減を両立させる点に主たる特徴がある。
【００１７】
この主たる特徴について具体的に説明すると、図１に例示すように、それぞれのストレージノードに備えられたコントローラ（例えば、コントローラＡ〜Ｃ）を制御するホストは、ディスク（例えば、ディスク１、ディスク２など）が複数のストレージノード間で休止状態あるいは非休止状態を分担するように休止状態あるいは非休止状態に係る状態条件を規定した状態条件テーブルを保持している。すなわち、複数のストレージノード間でディスクを休止状態あるいは非休止状態に制御することで消費電力の低減を図る趣旨である。
【００１８】
そして、その状態条件テーブルに従って、ディスク（例えば、ディスク１および２やディスク９および１０）を休止状態に制御するようにホストから指令を受け付けたコントローラＡおよびコントローラＣはそれぞれ、管理情報ＡおよびＣ（例えば、放送データであれば、ユーザからの読み出し要求頻度の高いインデックス情報など）を、ディスク（例えば、ディスク５および６）を非休止状態に制御しているコントローラＢに対して送信する（図１の（１）参照）。これらの管理情報を受信すると、コントローラＡは、自己の制御するディスク（例えば、ディスク５および６）に格納する（図１の（２）参照）。
【００１９】
続いて、上位装置からのアクセス要求を受け付けると（図１の（３）参照）、ホストは、ディスク（例えば、ディスク５および６）を非休止状態に制御しているコントローラＢに対してアクセス要求を転送する。ホストからアクセス要求を受け付けると、コントローラＢは動作状態判定を行う。具体的には、コントローラＢは、受け付けたアクセス要求が、自己宛の書き込み要求、自己宛の読み出し要求、他者宛の書き込み要求、他者宛の検索情報の読み出し要求、休止状態変更要求のいずれであるかを判定し、その要求内容に応じて自己の内部状態を変更する。
【００２０】
そして、例えば、アクセス要求の内容が、他者宛の書き込み要求や他者宛の検索情報の読み出し要求である場合には、コントローラＢは、アクセス要求代行処理を行う（図１の（５）参照）。すなわち、ディスクに格納されたデータに対するアクセス効率を損なわないようにする趣旨である。
【００２１】
このアクセス要求代行処理について具体的に説明すると、コントローラＢは、アクセス要求の内容が他者宛（例えば、コントローラＣの制御するディスク９のデータ宛）の検索情報の読み出し要求である場合には、休止状態であるディスク９の管理情報を先ほど格納した自己のディスク５あるいは６から読み出して、その要求元に送信する。
【００２２】
また、コントローラＢは、アクセス要求の内容が他者宛（例えば、コントローラＣの制御するディスク９のデータ宛）の書き込み要求である場合には、自己のディスク５あるいは６に、その書き込み要求に係るデータを書き込んで一時的に記憶する。そして、所定の転送条件（例えば、予め設定された転送予定所定時間や記憶装置の記憶容量）が満たされた場合に、コントローラＢは、一時的に記憶した書き込み要求に係るデータを、本来書き込まれるべきディスク９を制御するコントローラＣに対して転送する（図１の（６）参照）。コントローラＢからデータを受信したコントローラＣは（図１の（７）参照）、受信したデータを本来書き込むべきディスク９に書き込む。
【００２３】
このようなことから、実施例１に係るストレージシステムは、上述した主たる特徴の如く、アクセス効率の最大化と消費電力の低減を両立させる点に主たる特徴がある。
【００２４】
［ストレージステムの構成］
次に、図２を用いて、図１に示した実施例１に係るストレージシステムの構成を説明する。図２は、実施例１に係るストレージシステムの構成を示すブロック図である。同図に示すように、このストレージシステムは、複数のストレージノード２０とホスト１０とをそれぞれネットワーク（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）などのＬＡＮ）で接続して構成される。
【００２５】
このうち、ホスト１０は、複数のストレージノードに備えられたコントローラ２４を制御する制御手段である。そして、このホスト１０は、例えば、図３に例示するように、ディスク（例えば、ディスク１、ディスク２など）が複数のストレージノード間で休止状態あるいは非休止状態を分担するように休止状態あるいは非休止状態に係る状態条件を規定した状態条件テーブルを保持している。そして、ホスト１０は、その状態条件テーブルに従って、ディスク装置２３を休止状態あるいは非休止状態に制御するように、コントローラ２４に対して指令を送る。
【００２６】
次に、ストレージノード２０は、通信制御部２１と、入出力制御部２２と、ディスク装置２３と、コントローラ２４とから構成される。このうち、通信制御部２１は、ホスト１０とストレージノード２０との間でやり取りする各種情報およびストレージノード２０間でやり取りする各種情報に関する通信を制御する手段である。具体的には、例えば、ディスク装置２３の休止状態あるいは非休止状態の制御に関するホスト１０からコントローラ２４への指令やアクセス要求に関する通信を制御するほか、他のディスク装置２３の管理情報（例えば、放送データであれば、ユーザからの読み出し要求頻度の高いインデックス情報など）に関する通信を制御する。
【００２７】
入出力制御部２２は、複数のディスク装置２３とコントローラ２４との間のデータの入出力を制御する手段である。具体的には、複数のディスク装置２３とコントローラ２４との間のデバイスＩ／Ｏ（ＩＮＰＵＴ／ＯＵＴＰＵＴ）処理に関するデータの入出力を、例えば、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）やＡＴＡ（ＡＴ  Ａｔｔａｃｈｍｅｎｔ）など接続規格によって制御する。ディスク装置２３は、コントローラ２４による各種処理に必要なデータを格納する格納手段（記憶手段）である。具体的には、例えば、他のディスク装置２３の管理情報を一時的に記憶する。
【００２８】
コントローラ２４は、所定の制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する処理部であり、特に本発明に密接に関連するものとしては、動作状態判定部２４ａと、Ｉ／Ｏ判定部２４ｂと、Ｉ／Ｏ処理部２４ｃと、休止判定部２４ｄと、データ送受信制御部２４ｅと、記憶部２４ｆとを備える。
【００２９】
このうち、動作状態判定部２４ａは、ホスト１０から受け付けた所定の要求内容を判別して、コントローラ２４内部の動作状態を変更する処理部である。具体的には、動作状態判定部２４ａは、ホスト１０から所定の要求を受け付けた場合（例えば、図４に例示するような要求内容を示すテーブルに規定されたＭＷ、ＭＲ、ＯＷ、ＯＲ、ＳＲの項目のいずれかのテーブル値が１の場合）には、ホスト１０から要求内容に応じて内部状態を変更する（例えば、図５に例示するような内部状態を示すテーブルに規定されたＭＷＤ、ＯＷＩ、ＯＷＤ、ＭＲＤ、ＯＲＩ、ＳＬＰ、ＯＤＨのいずれかのフラグを要求内容に応じて１とする）。そして、動作状態判定部２４ａは、ホスト１０からの要求に応じて、例えば、ＭＷ、ＭＲ、ＯＷ、ＯＲの項目のテーブル値が１であればＩ／Ｏ判定部２４ｂに処理指令を出力し、ＳＲの項目のテーブル値が１であれば休止判定部２４ｄに処理指令を出力する。なお、内部状態は記憶部２４ｆに記憶されており、初期状態の場合には内部状態を示すテーブル値はすべて０である。
【００３０】
Ｉ／Ｏ判定部２４ｂは、動作状態判定部２４ａによる内部状態の変更を判定する処理部である。具体的には、Ｉ／Ｏ判定部２４ｂは、記憶部２４ｆから内部状態を示すテーブル（図５参照）を読み出し、ＳＬＰの項目以外の項目のテーブル値に基づいて内部状態を判定する（例えば、テーブル値が１である項目が示す内部状態であると判定する）。
【００３１】
Ｉ／Ｏ処理部２４ｃは、Ｉ／Ｏ判定部２４ｂによる判定結果に応じて入出力処理を行う処理部である。具体的には、Ｉ／Ｏ処理部２４ｃは、記憶部２４ｆから内部状態を示すテーブル（図５参照）を読み出し、ＭＷＤの項目が１である場合には、自らのディスク装置２３にデータの書き込みを行う（自己が休止状態のときに他のストレージノード２０から転送されたデータを、一時的に非休止状態にして書き込みを行う場合を含む）。また、ＯＷＩの項目が１である場合には、休止状態の他のディスク装置２３から受信した管理情報を自己のディスク装置２３に書き込む。また、ＯＷＤの項目が１である場合には、休止状態の他のディスク装置２３に書き込まれるべきデータを自己のディスク装置２３に書き込む。ＭＲＤの項目が１である場合には、自己のディスク装置２３からデータ、もしくは検索情報を読み出す。ＯＲＩが１である場合には、自己のディスク装置２３に一時的に記憶している休止状態の他のディスク装置２３の検索情報を読み出す。ＯＤＨが１である場合には、記憶部２４ｆから読み出した転送ポリシー（例えば、予め設定された転送予定所定時間や記憶装置の記憶容量）が満たされた場合に、自己のディスク装置２３に書き込んだ他のストレージノード２０のディスク装置２３に書き込まれるべきデータを、該当ディスク装置２３に対して転送するようにデータ送受信制御部２４ｅに指令を出力する。
【００３２】
なお、Ｉ／Ｏ処理部２４ｃは、Ｉ／Ｏ判定部２４ｂによる判定結果に応じた入出力処理を終了すると、内部状態を示すテーブル（図５参照）のテーブル値を０に戻す。
【００３３】
休止判定部２４ｄは、自己のディスク装置２３の休止状態あるいは非休止状態の変更を行う処理部である。具体的には、休止判定部２４ｄは、ホスト１０から休止状態変更要求を受信した場合（例えば、図４に例示するような要求内容を示すテーブルに規定されたＳＲの項目のテーブル値が１の場合）には、記憶部２４ｆから内部状態を示すテーブル（図５参照）を読み出してＳＬＰの項目のテーブル値が１であることを確認する。そして、ＳＬＰの項目のテーブル値が１である場合には、自己のディスク装置２３を非休止状態へ変更してＳＬＰの項目のテーブル値を０とする。一方、ＳＬＰの項目のテーブル値が０である場合には、休止判定部２４ｄは、自己の管理情報を非休止状態の他のディスク装置２３に対して送信するようにデータ送受信制御部２４ｅに指令を出力する。さらに、休止判定部２４ｄは、一時的に自己のディスク装置２３に記憶していた他のディスク装置２３の管理情報を削除するとともに、自己のディスク装置２３を休止状態に変更してＳＬＰの項目のテーブル値を１とする。
【００３４】
データ送受信制御部２４ｅは、データの送受信を制御する処理部である。具体的には、例えば、通信制御部２１を介して休止状態の他のディスク装置２３から受信した管理情報（例えば、放送データであれば、ユーザからの読み出し要求頻度の高いインデックス情報など）を自己のディスク装置２３に格納するほか、Ｉ／Ｏ処理部２４ｃからの指令を受け付けて、自己のディスク装置２３に書き込んだ他のストレージノード２０のディスク装置２３に書き込まれるべきデータを、該当ディスク装置２３に対して転送する。なお、管理情報を、非休止状態の他のディスク装置２３に送信する場合には、例えば、非休止状態のディスク装置２３が反応するようなタグを管理情報に添付して送信することで、非休止状態のディスク装置２３を備えるストレージノード２０に受信される。
【００３５】
記憶部２４ｆは、コントローラ２４による各種処理に必要なデータおよびプログラムを格納する格納手段（記憶手段）である。具体的には、例えば、コントローラ２４の内部状態を記憶するほか（図５参照）、休止状態の他のディスク装置２３にデータを転送する条件である転送ポリシーを記憶する。
【００３６】
［ストレージシステムによる処理（実施例１）］
次に、図６を用いて、実施例１に係るストレージシステム（コントローラ）による処理を説明する。図６は、実施例１に係るストレージシステム（コントローラ）による処理の流れを示すフローチャートである。同図に示すように、ホスト１０から要求を受け付けると（ステップＳ６０１肯定）、コントローラ２４の動作状態判定部２４ａは、動作状態判定処理を行う（ステップＳ６０２）。具体的には、動作状態判定部２４ａは、受け付けたアクセス要求が、自己宛の書き込み要求、自己宛の読み出し要求、他者宛の書き込み要求、他者宛の検索（情報の読み出し）要求、休止状態変更要求のいずれであるかを判定し、その要求内容に応じて自己の内部状態を変更する。
【００３７】
次に、Ｉ／Ｏ判定部２４ｂは、動作状態判定部２４ａによる内部状態の変更を判定するＩ／Ｏ判定処理を行う（ステップＳ６０３）。具体的には、Ｉ／Ｏ判定部２４ｂは、記憶部２４ｆから内部状態を示すテーブル（図５参照）を読み出し、ＳＬＰの項目以外の項目のテーブル値に基づいて内部状態を判定する（例えば、テーブル値が１である項目が示す内部状態であると判定する）。
【００３８】
その結果、内部状態を示すテーブル（図５参照）においてＳＬＰの項目以外の項目のテーブル値のいずれかが１である場合には（ステップＳ６０３肯定）、Ｉ／Ｏ処理部２４ｃは、その判定結果に応じたＩ／Ｏ処理を行う（ステップＳ６０４）。
【００３９】
具体的には、Ｉ／Ｏ処理部２４ｃは、記憶部２４ｆから内部状態を示すテーブル（図５参照）を読み出し、ＭＷＤの項目が１である場合には、自らのディスク装置２３にデータの書き込みを行う（自己が休止状態のときに他のストレージノード２０から転送されたデータを、一時的に非休止状態にして書き込みを行う場合を含む）。また、ＯＷＩの項目が１である場合には、休止状態の他のディスク装置２３から受信した管理情報を自己のディスク装置２３に書き込む。また、ＯＷＤの項目が１である場合には、休止状態の他のディスク装置２３に書き込まれるべきデータを自己のディスク装置２３に書き込む。ＭＲＤの項目が１である場合には、自己のディスク装置２３からデータ、もしくは検索情報を読み出す。ＯＲＩが１である場合には、自己のディスク装置２３に一時的に記憶している休止状態の他のディスク装置２３の検索情報を読み出す。ＯＤＨが１である場合には、記憶部２４ｆから読み出した転送ポリシー（例えば、予め設定された転送予定所定時間や記憶装置の記憶容量）が満たされた場合に、自己のディスク装置２３に書き込んだ他のストレージノード２０のディスク装置２３に書き込まれるべきデータを、該当ディスク装置２３に対して転送するようにデータ送受信制御部２４ｅに指令を出力する。
【００４０】
一方、内部状態を示すテーブル（図５参照）においてＳＬＰの項目が１である場合には（ステップＳ６０３否定）、休止判定部２４ｄは、自己のディスク装置２３の休止状態あるいは非休止状態の変更を行う休止判定処理を行う（ステップＳ６０５）。
【００４１】
具体的には、休止判定部２４ｄは、ＳＬＰの項目のテーブル値が１である場合には（ステップＳ６０５肯定）、図には示していないが、自己のディスク装置２３を非休止状態へ変更してＳＬＰの項目のテーブル値を０とする。一方、ＳＬＰの項目のテーブル値が０である場合には（ステップＳ６０５否定）、休止判定部２４ｄは、自己の管理情報を非休止状態の他のディスク装置２３に対して送信するようにデータ送受信制御部２４ｅに指令を出力し、さらに、一時的に自己のディスク装置２３に記憶していた他のディスク装置２３の管理情報を削除するとともに、自己のディスク装置２３を休止状態に変更してＳＬＰの項目のテーブル値を１とする（ステップＳ６０６）。
【００４２】
［実施例１の効果］
上述してきたように、実施例１によれば、このストレージシステムは、記憶装置が複数のストレージノード間で休止状態あるいは非休止状態を分担するように、休止状態あるいは非休止状態に係る状態条件（例えば、記憶装置ごとに休止状態あるいは非休止状態にする時間を設定する）を保持し、その状態条件に従って、複数のストレージノードに備えられた記憶装置を休止状態あるいは非休止状態に制御するので、非休止（リードやライトなどのアクセスを受け付けるアクティブな）記憶装置を一定期間固定することで、それ以外の記憶装置を休止状態にすることができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００４３】
また、実施例１によれば、このストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置に対するアクセス要求を代行して処理するので、一定期間休止状態の記憶装置に対するアクセス要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００４４】
また、実施例１によれば、このストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置から、その記憶装置に記憶された読み出し要求頻度の高いデータ（例えば、放送データであれば、その内容を検索するためのインデックス情報など）を受信して記憶し、休止状態に制御されている他の記憶装置に対する読み出し要求があった場合に、その記憶したデータの中から読み出し要求に対応するデータを読み出して読み出し要求の要求元に送信するので、休止状態の記憶装置に対する読み出し要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【００４５】
また、実施例１によれば、このストレージシステムは、自己の記憶装置が非休止状態に制御されているストレージノードが、休止状態に制御されている他の記憶装置に対する書き込み要求があった場合に、その書き込み要求に係るデータを一時的に記憶するとともに、所定の転送条件（例えば、予め設定された転送予定所定時間や記憶装置の記憶容量）が満たされた場合に、一時的に記憶した書き込み要求に係るデータを他の記憶装置に転送するので、休止状態に制御されている記憶装置に対する書き込み要求に対応することができ、アクセス効率の最大化と消費電力の低減とを両立させることが可能となる。
【実施例２】
【００４６】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００４７】
（システム構成等）
また、実施例１において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００４８】
また、図２示したストレージシステムおよびストレージノード２０の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、ストレージシステムおよびストレージノード２０の分散・統合の具体的形態は図示のものに限られず、ホスト１０とストレージノード２０とを統合して、ストレージノード２０に備えられたコントローラ２４によってディスク装置２３を休止状態あるいは非休止状態に制御するようにしてもよく、また、動作状態判定部２４ａとＩ／Ｏ判定部２４ｂとＩ／Ｏ処理部２４ｃとを統合するなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００４９】
なお、実施例１で説明したストレージシステムによる処理方法（図６参照）は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【００５０】
（付記１）記憶装置をそれぞれ備えた複数のストレージノードをネットワークで接続して構成されるストレージシステムにおいて、
前記記憶装置が前記複数のストレージノード間で休止状態あるいは非休止状態を分担するように当該休止状態あるいは非休止状態に係る状態条件を保持する条件保持手段と、
前記条件保持手段により保持された前記状態条件に従って、前記複数のストレージノードに備えられた記憶装置を休止状態あるいは非休止状態に制御する状態制御手段と、
を備えたことを特徴とするストレージシステム。
【００５１】
（付記２）前記ストレージノードは、前記状態制御手段により自己の記憶装置が非休止状態に制御されている場合に、前記状態制御手段により休止状態に制御されている他の記憶装置に対するアクセス要求を代行して処理するアクセス要求代行処理手段を備えたことを特徴とする付記１に記載のストレージシステム。
【００５２】
（付記３）前記ストレージノードは、前記状態制御手段により自己の記憶装置が非休止状態に制御されている場合に、前記状態制御手段により休止状態に制御されている他の記憶装置から当該記憶装置に記憶された読み出し要求頻度の高いデータを受信して記憶するデータ記憶手段をさらに備え、
前記アクセス要求代行処理手段は、前記状態制御手段により休止状態に制御されている他の記憶装置に対する読み出し要求があった場合に、前記データ記憶手段から当該読み出し要求に対応するデータを読み出して当該読み出し要求の要求元に送信することを特徴とする付記１または２に記載のストレージシステム。
【００５３】
（付記４）前記ストレージノードは、前記状態制御手段により自己の記憶装置が非休止状態に制御されている場合に、前記状態制御手段により休止状態に制御されている他の記憶装置に書き込まれるべきデータを一時的に記憶する一時的記憶手段をさらに備え、
前記アクセス要求代行処理手段は、前記状態制御手段により休止状態に制御されている他の記憶装置に対する書き込み要求があった場合に、当該書き込み要求に係るデータを前記一時的記憶手段に記憶するとともに、所定の転送条件が満たされた場合に、前記一時的記憶手段に記憶された前記書き込み要求に係るデータを前記他の記憶装置に転送することを特徴とする付記１または２に記載のストレージシステム。
【産業上の利用可能性】
【００５４】
以上のように、本発明に係るストレージシステムは、記憶装置をそれぞれ備えた複数のストレージノードをネットワークで接続して構成され、上位装置からのアクセス要求などを受け付ける場合に有用であり、特に、アクセス効率の最大化と消費電力の低減を両立させることに適する。
【図面の簡単な説明】
【００５５】
【図１】実施例１に係るストレージシステムの概要を説明するための図である。
【図２】実施例１に係るストレージシステムの構成を示すブロック図である。
【図３】状態条件テーブルの構成例を示す図である。
【図４】コントローラが受け付ける要求内容を示すテーブルの構成例を示す図である。
【図５】コントローラが取り得る内部状態を示すテーブルの構成例を示す図である。
【図６】実施例１に係るストレージシステムを構成するコントローラの処理の流れを示すフローチャートである。
【符号の説明】
【００５６】
１０  ホスト
２０  ストレージノード
２１  通信制御部
２２  入出力制御部
２３  ディスク装置
２４  コントローラ
２４ａ  動作状態判定部
２４ｂ  Ｉ／Ｏ判定部
２４ｃ  Ｉ／Ｏ処理部
２４ｄ  休止判定部
２４ｅ  データ送受信制御部
２４ｆ  記憶部
【図１】
0004818751.tif 000002
【図２】
0004818751.tif 000003
【図３】
0004818751.tif 000004
【図４】
0004818751.tif 000005
【図５】
0004818751.tif 000006
【図６】
0004818751.tif 000007