(57)【特許請求の範囲】
【請求項１】
計算機と、この計算機から受信するデータを格納する複数のディスク装置及びその複数のディスク装置から構成される複数の論理ユニットを有するストレージ装置とを含むストレージシステムであって、
前記複数の論理ユニットを用いて構成されるグループ及びそのグループが起動中か否かを少なくとも含むグループ情報を格納するグループ管理テーブルと、
前記グループに含まれる論理ユニットに対応するディスク装置の電源をＯＮ／ＯＦＦする電力制御部と、
前記複数のディスク装置に格納されるデータの格納位置と対応する論理ユニットの論理ユニット番号、前記データのビット列を代表する値及び前記論理ユニットと対応する前記計算機が指定する番号を含む管理情報を格納するデータ管理テーブルと、
前記計算機からデータを受信すると、そのデータのビット列を代表する値を算出する算出部と、
この算出部で算出された値と同一の値が前記データ管理テーブルに格納されているか否かを判断する判断部と、
この判断部で同一の値が格納されていないと判断した場合は、前記受信したデータのビット列を代表する値を前記データ管理テーブルに格納するとともに前記グループ管理テーブルに基づいて起動しているグループを構成する論理ユニット番号と対応するディスク装置に前記データを格納する第１の格納部と、
前記判断部で同一の値が格納されていると判断した場合は、前記データ管理テーブルで管理される管理情報に基づいて、前記受信したデータを重複して格納することを除去する重複除去処理を実行すべきであるか否かを判断し、この判断結果に応じて、前記グループ管理テーブルで管理されているグループ情報に基づいて起動しているグループを構成する論理ユニット番号と対応する前記ディスク装置への格納の要否を制御する第２の格納部と、
を備えることを特徴とするストレージシステム。
【請求項２】
データを前記ディスク装置に仮格納する論理ユニット番号及び前記データのビット列を代表する値を少なくとも含む未比較データ情報を格納する未比較データ管理テーブルを備え、
前記第２の格納部は、
前記受信したデータのビット列を代表する値と同一の値が前記未比較データ管理テーブルに格納されているか否かを判断する未比較判断部と、
この未比較判断部で同一の値が格納されていると判断した場合は、前記グループ管理テーブルに基づいて起動しているグループを構成する論理ユニット番号と対応するディスク装置に前記受信したデータを格納するとともに前記受信したデータを格納する前記ディスク装置と対応する論理ユニット番号及び前記受信したデータのビット列を代表する値を前記未比較データ管理テーブルに格納する未比較データ処理部と、
前記未比較判断部で同一の値が格納されていないと判断した場合は、前記データを重複して格納することを除去する重複除去処理を行う重複除去処理部とを含む、
ことを特徴とする請求項１記載のストレージシステム。
【請求項３】
前記重複除去処理部は、
前記受信したデータのビット列を代表する値と同一の値を持つデータが格納されているディスク装置が起動しているか否かを前記グループ管理テーブルに基づいて判断する状態判断部と、
この状態判断部で前記ディスク装置が起動中であると判断した場合は、前記ディスク装置から前記値と対応するデータを読み出し、その読み出したデータと前記受信したデータとが一致するか否かを判断するデータ判断部と、
このデータ判断部でデータが一致すると判断した場合は、前記データ管理テーブルの前記読み出したデータの論理ユニット番号と対応させて前記受信したデータの前記計算機が指定する番号を格納する第３の格納部と、
前記データ判断部でデータが一致しないと判断した場合は、前記読み出したグループと対応するディスク装置に前記受信したデータを格納するとともに前記受信データの管理情報を前記データ管理テーブルに格納する第４の格納部とを含む、
ことを特徴とする請求項２記載のストレージシステム。
【請求項４】
前記重複除去処理部は、
前記状態判断部で前記ディスク装置が起動中でないと判断した場合は、前記グループ管理テーブルで管理されるグループの起動ができるか否かを判断する起動判断部を含み、
前記起動判断部で前記グループの起動ができると判断した場合に前記省電力制御部は前記他のグループと対応するディスク装置の電源をＯＮし、
前記ディスク装置の電源をＯＮした場合に前記データ判断部は、前記データが一致であるか否かの判断を行なうこと、
を特徴とする請求項３記載のストレージシステム。
【請求項５】
前記起動判断部は、予め設定された起動できるグループのグループ数と、現在起動しているグループ数とを比較して前記他のグループが起動できるか否かの判断を行なうこと、
を特徴とする請求項４記載のストレージシステム。
【請求項６】
前記重複除去処理部は、
前記起動判断部で前記グループの起動ができないと判断した場合は、起動しているグループと対応するディスク装置に前記受信したデータを格納するとともに前記受信データの管理情報を前記データ管理テーブルに格納する第５の格納部を含む、
ことを特徴とする請求項４記載のストレージシステム。
【請求項７】
前記グループは、ＲＡＩＤグループである、
ことを特徴とする請求項１記載のストレージシステム。
【請求項８】
データのビット列を代表する値、起動候補の前記グループ及び前記値のカウント数を含む起動候補情報を格納する起動候補テーブルと、
前記未比較データ管理テーブルに未比較データ情報が格納されている場合に、前記値が同一なデータを同一の前記グループとなるように再配置する最適化処理を行う最適化処理部とを備える、
ことを特徴とする請求項２記載のストレージシステム。
【請求項９】
前記データ最適化処理部は、通常の処理中に前記グループの起動／停止時が発生した場合、停止中の前記グループが起動した場合、前記未比較データ管理テーブルに格納された未比較データ数が予め設定された閾値以上になった場合、ユーザ又は前記計算機によって指定された場合の少なくともいずれかを契機として処理を開始すること、
を特徴とする請求項８記載のストレージシステム。
【請求項１０】
計算機と、この計算機から受信するデータを格納する複数のディスク装置及びその複数のディスク装置から構成される複数の論理ユニットを有するストレージ装置とを含むストレージシステムの消費電力低減方法であって、
前記ストレージ装置は、
前記複数の論理ユニットを用いて構成されるグループ及びそのグループが起動中か否かを少なくとも含むグループ情報を格納するグループ管理テーブルと、
前記グループに含まれる論理ユニットに対応するディスク装置の電源をＯＮ／ＯＦＦする電力制御部と、
前記複数のディスク装置に格納されるデータの格納位置と対応する論理ユニットの論理ユニット番号、前記データのビット列を代表する値及び前記論理ユニットと対応する前記計算機が指定する番号を含む管理情報を格納するデータ管理テーブルとを含み、
前記計算機からデータを受信すると、そのデータのビット列を代表する値を算出するステップと、
この算出された値と同一の値が前記データ管理テーブルに格納されているか否かを判断するステップと、
この判断するステップで同一の値が格納されていないと判断した場合、前記受信したデータのビット列を代表する値を前記データ管理テーブルに格納するとともに前記グループ管理テーブルに基づいて起動しているグループを構成する論理ユニット番号と対応するディスク装置に前記データを格納する第１のステップと、
前記判断するステップで同一の値が格納されていると判断した場合は、前記データ管理テーブルで管理される管理情報に基づいて、前記受信したデータを重複して格納することを除去する重複除去処理を実行すべきであるか否かを判断し、この判断結果に応じて、前記グループ管理テーブルで管理されているグループ情報に基づいて起動しているグループを構成する論理ユニット番号と対応する前記ディスク装置への格納の要否を制御する第２のステップと、
を有することを特徴とするストレージシステムの消費電力低減方法。
【請求項１１】
前記ストレージ装置は、データを前記ディスク装置に仮格納する論理ユニット番号及び前記データのビット列を代表する値を少なくとも含む未比較データ情報を格納する未比較データ管理テーブルを備え、
前記第２のステップは、
前記受信したデータのビット列を代表する値と同一の値が前記未比較データ管理テーブルに格納されているか否かを判断する未比較ステップと、
この未比較ステップで同一の値が格納されていると判断した場合は、前記グループ管理テーブルに基づいて起動しているグループを構成する論理ユニット番号と対応するディスク装置に前記受信したデータを格納するとともに前記受信したデータを格納する前記ディスク装置と対応する論理ユニット番号及び前記受信したデータのビット列を代表する値を前記未比較データ管理テーブルに格納する未比較データを処理するステップと、
前記未比較ステップで同一の値が格納されていないと判断した場合は、前記データを重複して格納すること除去するステップとを含む、
ことを特徴とする請求項１０記載のストレージシステムの消費電力低減方法。
【請求項１２】
前記除去するステップは、
前記受信したデータのビット列を代表する値と同一の値を持つデータが格納されているディスク装置が起動しているか否かを前記グループ管理テーブルに基づいて判断する状態を判断するステップと、
この状態を判断するステップで前記ディスク装置が起動中であると判断した場合は、前記ディスク装置から前記値と対応するデータを読み出し、その読み出したデータと前記受信したデータとが一致するか否かをデータ判断するステップと、
このデータ判断するステップでデータが一致すると判断した場合は、前記データ管理テーブルの前記読み出したデータの論理ユニット番号と対応させて前記受信したデータの前記計算機が指定する番号を格納する第３のステップと、
前記データ判断するステップでデータが一致しないと判断した場合は、前記読み出したグループと対応するディスク装置に前記受信したデータを格納するとともに前記受信データの管理情報を前記データ管理テーブルに格納する第４のステップとを含む、
ことを特徴とする請求項１１記載のストレージシステムの消費電力低減方法。
【請求項１３】
前記除去するステップは、
前記状態を判断するステップで前記ディスク装置が起動中でないと判断した場合は、前記グループ管理テーブルで管理されるグループの起動ができるか否かを判断する起動を判断するステップを含み、
前記起動を判断するステップで前記グループの起動ができると判断した場合に前記省電力制御部は前記他のグループと対応するディスク装置の電源をＯＮし、
前記ディスク装置の電源をＯＮした場合に、前記データ判断するステップは前記データが一致であるか否かの判断を行なうこと、
を特徴とする請求項１２記載のストレージシステムの消費電力低減方法。
【請求項１４】
前記起動を判断するステップは、予め設定された起動できるグループのグループ数と、現在起動しているグループ数とを比較して前記他のグループが起動できるか否かの判断を行なうこと、
を特徴とする請求項１３記載のストレージシステムの消費電力低減方法。
【請求項１５】
前記除去するステップは、
前記起動を判断するステップで前記グループの起動ができないと判断した場合は、起動しているグループと対応するディスク装置に前記受信したデータを格納するとともに前記受信データの管理情報を前記データ管理テーブルに格納する第５のステップを含む、
ことを特徴とする請求項１３記載のストレージシステムの消費電力低減方法。
【請求項１６】
前記グループは、ＲＡＩＤグループである、
ことを特徴とする請求項１０記載のストレージシステムの消費電力低減方法。
【請求項１７】
前記ストレージ装置は、データのビット列を代表する値、起動候補の前記グループ及び前記値のカウント数を含む起動候補情報を格納する起動候補テーブルを備え、
前記未比較データ管理テーブルに未比較データ情報が格納されている場合に、前記値が同一なデータを同一の前記グループとなるように再配置する最適化処理を行うステップを有する、
ことを特徴とする請求項１１記載のストレージシステムの消費電力低減方法。
【請求項１８】
前記最適化処理を行うステップは、通常の処理中に前記グループの起動／停止時が発生した場合、停止中の前記グループが起動した場合、前記未比較データ管理テーブルに格納された未比較データ数が予め設定された閾値以上になった場合、ユーザ又は前記計算機によって指定された場合の少なくともいずれかを契機として処理を開始すること、
を特徴とする請求項１７記載のストレージシステムの消費電力低減方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム及びストレージシステムの消費電力低減方法に関し、特にディスクを用いたストレージシステム及びストレージシステムの消費電力低減方法に適用しても好適なものである。
【背景技術】
【０００２】
業務データ等のバックアップ、アーカイブにおいて、ディスクアレイに格納するデータ量の増大を抑制しデータ容量効率を高めるため、重複するデータをディスクに格納しないデータ重複除去に関する技術（以下、データ重複除去ともいう）が公開されている。データ重複除去技術は、新たにディスクに書き込むデータ、いわゆるライトデータが、ディスクに格納済みのデータと同一内容の場合、最終的に重複するデータはディスクに書き込まない技術である。ライトデータがディスクに格納済みのデータと同一内容であるか否かの検証には、一般的にハッシュを用いた高速な検索を利用している（例えば、特許文献１参照）。
【０００３】
一方、ディスクアレイは、多数のディスクを備えた装置である。ディスクアレイに備えられた多数のディスクを同時に稼動させると、ディスクアレイの消費電力は大きくなってしまう。この問題の解決策として、ディスクアレイで同時に稼動可能なディスクの数を制限することにより、ディスクアレイ全体での消費電力を削減し、省電力効果をあげる技術が公開されている（例えば、特許文献２参照）。
【特許文献１】米国特許第6928526号公報
【特許文献２】米国特許第5423046号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来、ディスクを用いたストレージシステムでは、ディスクに格納されたデータの重複除去に際し、消費電力を抑制する制御を同時に実施することは考慮されていない。このためデータ重複除去を実施するディスクアレイにおいて、稼動可能なディスク数の制限による消費電力の削減を同時に実施した場合、データ重複除去によるディスクへのアクセスを考慮していないため、効率的なディスク稼動の制御ができない。その結果、無駄なディスクの稼動が必要となり、最適な省電力効果が発揮でないという問題が発生する。
【０００５】
本発明は、以上の点を考慮してなされたもので、データ重複除去とディスク稼動の制御を同時に実施した場合、データ重複除去によるデータ容量の効率化と、ディスク稼動の制御による省電力効果を最大限に発揮することのできるストレージシステム及びストレージシステムの消費電力低減方法を提案しようとするものである。
【課題を解決するための手段】
【０００６】
本発明は、計算機と、この計算機から受信するデータを格納する複数のディスク装置及びその複数のディスク装置から構成される複数の論理ユニットを有するストレージ装置とを含むストレージシステムであって、前記複数の論理ユニットを用いて構成されるグループ及びそのグループが起動中か否かを少なくとも含むグループ情報を格納するグループ管理テーブルと、前記グループに含まれる論理ユニットに対応するディスク装置の電源をＯＮ／ＯＦＦする電力制御部と、前記複数のディスク装置に格納されるデータの格納位置と対応する論理ユニットの論理ユニット番号、前記データのビット列を代表する値及び前記論理ユニットと対応する前記計算機が指定する番号を含む管理情報を格納するデータ管理テーブルと、前記計算機からデータを受信すると、そのデータのビット列を代表する値を算出する算出部と、この算出部で算出された値と同一の値が前記データ管理テーブルに格納されているか否かを判断する判断部と、この判断部で同一の値が格納されていないと判断した場合は、前記受信したデータのビット列を代表する値を前記データ管理テーブルに格納するとともに前記グループ管理テーブルに基づいて起動しているグループを構成する論理ユニット番号と対応するディスク装置に前記データを格納する第１の格納部と、前記判断部で同一の値が格納されていると判断した場合は、前記データ管理テーブルで管理される管理情報に基づいて、前記受信したデータを重複して格納することを除去する重複除去処理を実行すべきであるか否かを判断し、この判断結果に応じて、前記グループ管理テーブルで管理されているグループ情報に基づいて起動しているグループを構成する論理ユニット番号と対応する前記ディスク装置への格納の要否を制御する第２の格納部とを備えるものである。
【発明の効果】
【０００７】
本発明によれば、データ重複除去と起動可能な省電力グループを制限する消費電力の抑制を同時に実施した場合、データ重複除去によるデータ容量の効率化と、ディスク稼動の制御による省電力効果を最大限に発揮することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態について図面を参照して説明する。
【０００９】
第１の実施形態：
（１−１）構成の説明
図１は、ストレージシステム１の構成の一例を示す図である。図１では業務用途等のアプリケーションが稼動する計算機であるホスト１００と、ホスト１００から送信されたデータを格納するディスクアレイ２００は、ＳＡＮ（Storage Area Network）を介して接続されている。なお、図１では計算機としてホスト１００のみ記載しているが、実際には複数台の計算機を有していてもよい。
【００１０】
ディスクアレイ２００は、ＳＡＮに接続されるファイバーチャネルインターフェイス（以下、ＦＣ／ＩＦ）２５０と、管理用インターフェイス（以下、管理Ｉ／Ｆ)２６０を有する。なお管理Ｉ／Ｆ２６０は、ディスクアレイ２００のデータを管理サーバ３００などのほかの装置と遣り取りするためのインターフェイスである。ＦＣＩ／Ｆ２５０は、ディスクアレイ２００から読み出されたデータやディクスアレイ２００に書き込まれるデータをホスト１００などとやり取りするためのインターフェイスである。
【００１１】
また、ディスクアレイ２００は、ディスクアレイ２００を制御するＣＰＵ２１０と、各種管理テーブルや各種プログラムなどを格納するメモリ２２０と、ユーザデータを格納するキャッシュ２３０を有する。さらに、ディスクアレイ２００は複数のディスク２９１〜２９８を制御するディスクコントローラ２４０を有する。
【００１２】
ディスクコントローラ２４０には、既述のディスク２９１〜２９８が接続されている。これらディスク群（ディスク２９１〜２９８）は、各々ＲＡＩＤ（Redundant Arrays of independent（inexpensive）Disc）と呼ばれる冗長構成を持つＲＡＩＤグループ２７１〜２７２が設定されている。また、ディスク２９１〜２９８内の記憶領域は、ＳＣＳＩの論理ユニット（ＬＵ：Logical Unit）２８１〜２８３としてホスト１００からアクセスされる。図１ではＬＵ２８１〜２８３は、上記ディスク群の中の複数のディスクに跨って存在する記憶領域として示されているが、一つのディスク内の記憶領域から構成されるＬＵでもよい。また、ＬＵはＲＡＩＤグループを跨って設定されてもよいものとする。
【００１３】
メモリ２２０には、省電力グループ制御プログラム２２１と、省電力グループ管理テーブル２２２と、データ重複除去プログラム２２３と、重複データ管理テーブル２２４と、重複未比較データ管理テーブル２２５と、データプール管理テーブル２２６と、起動候補省電力グループ管理テーブル２２７が格納されている。これらの詳細な説明については後述する。
【００１４】
（１−２)ディスクアレイの消費電力の抑制
この第１の実施形態では、省電力グループ制御プログラム２２１は、省電力グループ管理テーブル２２２を利用して、ディスクアレイ２００に含まれるディスク２９１〜２９８の起動及び停止を制御することで、消費電力の削減を実現する。
【００１５】
省電力グループ制御プログラム２２１は、ディスクアレイ２００の仕様、またはネットワーク管理者等により、ＲＡＩＤグループ単位や、ＬＵ単位、またはディスク単位からなる省電力グループを予め設定されている。また、同時に稼動できる省電力グループの上限数である上限値も予め設定されている。
【００１６】
図２で示す省電力グループ管理テーブル２２２は、省電力グループを管理するためのテーブルである。省電力グループ管理テーブル２２２は省電力識別番号欄２２２１、状態欄２２２２、ＲＡＩＤグループ番号欄２２２３、ＬＵ番号欄２２２４及びボリューム利用率欄２２２５を有している。
【００１７】
省電力識別番号欄２２２１には省電力グループごとの識別子が格納される。状態欄２２２２には省電力識別番号ごとに省電力グループの稼動状態が格納される。ＲＡＩＤグループ番号欄２２２３には省電力の制御グループに内包されるＲＡＩＤグループ番が号格納される。ＬＵ番号欄２２２４にはＬＵの識別子が格納される。ボリューム利用率欄２２２５には省電力グループごとのボリュームの利用率が格納される。
【００１８】
省電力管理テーブル２２２には、例えば、図２に示すように、省電力識別番号欄２２２１に格納される省電力識別番号“Ｐ−０１”に対応して、状態欄２２２２には状態として“稼働中”、ＲＡＩＤグループ番号欄２２２３にはＲＡＩＤグループ番号として“ＲＧ０１”、ＬＵ番号欄２２２４にはＬＵ番号として“ＬＵ０１，ＬＵ０２”及びボリューム利用率欄２２２５にはボリューム利用率として“５０％”が格納される。
【００１９】
省電力グループ制御プログラム２２１は、省電力グループ管理テーブル２２２のうち、省電力識別番号欄２２２１に格納される省電力識別番号と状態欄２２２２に格納される状態から、現在稼動している省電力グループ数を把握し、常にディスクアレイ２００に含まれる稼動中の省電力グループ数が前述した上限値を超えないよう制御する。
【００２０】
具体的には、この第１の実施形態では、省電力グループ制御プログラム２２１の省電力グループはＲＡＩＤグループ単位とする。特定のＬＵに対するアクセスが発生した場合に、省電力グループ管理テーブル２２２のＲＡＩＤグループ番号欄２２２３に格納されるＲＡＩＤグループ番号と、状態欄２２２２に格納される状態と、ＲＡＩＤグループに含まれるＬＵ番号欄２２２４に格納されるＬＵ番号とを参照する。該特定のＬＵを含む特定のＲＡＩＤグループの状態欄２２２２に格納される状態から省電力グループ制御プログラム２２１は起動が必要か判断する。さらに起動が必要な場合は、省電力グループ制御プログラム２２１は上限値による制限を受けるか否かを判断する。そして、特定のＲＡＩＤグループが利用制限を受けない場合には、省電力グループ制御プログラム２２１は、該特定のＬＵへのデータアクセス処理の実行を許容し、実際に該特定のＬＵを含む特定のＲＡＩＤグループを起動させ、ディスク上のデータにアクセス可能とする。一方、特定のＲＡＩＤグループが利用制限を受ける場合には、省電力グループ制御プログラム２２１は、データアクセス処理を待機させる。上記は公知で開示されている技術であり、本実施例に関連する内容を除いて詳細は省略している。
【００２１】
なお、この第１の実施形態では、一例として省電力グループをＲＡＩＤグループ単位として説明している。しかし省電力グループは、ＬＵ単位、ディスク単位、同一電源から電力を供給されている筐体やシャーシ単位、１台以上のディスクアレイ単位、としてもよいもとする。
【００２２】
このように単位が変わると図２で示す省電力グループに内包される要素が増減する。例として、省電力グループの単位をディスクアレイ単位とし、複数のディスクアレイに跨って省電力の制御を実施する場合のストレージシステム２の構成を図１０に示す。ディスクアレイ２０１〜２０３は、図１のディスクアレイ２００と同様な構成である。このため、ディスクアレイ２０１〜２０３の構成については説明を省略する。
【００２３】
図１０の例では、省電力制御の対象である各ディスクアレイ２００〜２０３と接続された計算機である電力制御サーバ４０１上で省電力グループ制御プログラム２２１が動作する。また、電力制御サーバ４０１は省電力グループ制御プログラム２２１で用いられる省電力グループ管理テーブル２２２がメモリに格納される。
【００２４】
なお、電力制御サーバ４０１は独立した専用のサーバとして示してあるが、他の装置、例えばストレージ仮想化装置や、ＦＣ（Fiber Channel）スイッチ内に内蔵されていてもかまわないものとする。電力制御サーバ４０１上の省電力グループ制御プログラム２２１は、各ディスクアレイ２０１〜２０３からの稼動・停止等の状態欄２２２２に格納される“状態”に関する情報を収集し、それを元に各ディスクアレイ２０１〜２０３の稼動・停止を制御する。すなわち、省電力グループ制御プログラム２２１は、ホスト１００からの各ディスクアレイ２０１〜２０３へのアクセスを監視し、停止中のディスクアレイへのアクセスがある場合、同時に稼動可能なディスクアレイ数を予め定めた上限値を超えるかどうかを判定し、その結果を元にディスクアレイの稼動・停止を制御する。
【００２５】
なお、この制御と同時に各ディスクアレイ２０１〜２０３自体が個別に省電力グループ制御プログラム２２１をもち、各ディスクアレイ内部の筐体やシャーシ単位、ＲＡＩＤグループ単位、ＬＵ単位、ディスク単位などで省電力グループを設定し、この省電力グループの稼動状態を制御してもよい。当然、これらの制御を電力制御サーバ４０１に集約させて制御してもよい。
【００２６】
また、図１０に示すストレージシステム２とは異なり、電力制御サーバ４０１を持たず、各ディスクアレイ２０１〜２０３が省電力グループ制御プログラム２２１を持ち、そのうち１台のディスクアレイの省電力グループ制御プログラム２２１が電力制御サーバ４０１と同様の機能を有し、残りのディスクアレイの稼動・停止の制御を実施してもよい。この場合、電力グループ制御プログラム２２１が稼動しているディスクアレイが停止する時は、他の稼動しているディスクアレイに省電力制御と稼動状況を示す情報を引き継がせるものとする。
【００２７】
また、全てのディスクアレイ２０１〜２０３それぞれが常に他のディスアレイが保持する省電力グループの情報と同期を取ることで、各ディスクアレイ２０１〜２０３で個別に省電力制御を実施してもよい。
【００２８】
なお、第１の実施形態では、省電力の制御する内容をＲＡＩＤグループ単位でのディスクの停止と起動としているが、各省電力グループ単位ごとに個別にもつ省電力状態、例えばディスク単位でのスリープモードへの遷移などとしてもよいものとする。
【００２９】
（１−２）データ重複除去
第１の実施形態では、データ重複除去プログラム２２３が重複データ管理テーブル２２４を利用することで、ディスクに書き込まれるデータのうちデータの内容が同一のデータの書き込みを制限し、ディスク２９１〜２９８に格納されるデータ容量を削減する効果を実現する。
【００３０】
図３は、重複データ管理テーブル２２４を示す図である。重複データ管理テーブル２２４は、ディスク２９１〜２９８に格納される重複データを管理するためのテーブルである。重複データ管理テーブル２２４は、ハッシュ値欄２２４１、実データ格納アドレス欄２２４２及びホスト側指定アドレス欄２２４３を有している。
【００３１】
ハッシュ値欄２２４１にはデータのハッシュ値が格納される。実データ格納アドレス欄２２４２には、ＬＵ番号：ＬＢＡが格納される。ホスト側指定アドレス欄２２４３には、ＬＵ番号：ＬＢＡが格納される。
【００３２】
重複データ管理テーブル２２４には、例えば図３に示すように、ハッシュ値欄２２４１に格納されたハッシュ値“ａ”に対応して実データ格納アドレス欄２２４２に“ＬＵ０１：１０００００”、ホスト側指定アドレス欄２２４３に“００１：１０１０００”が格納される。
【００３３】
次に、重複データ管理テーブル２２４を利用したデータ重複処理プログラム２２３の処理について説明する。ホスト１００からのライトデータと該ライトデータの書き込み先を指定した論理アドレス（以下、ホスト側指定アドレス）をディスクアレイ２００が受信した際に、データ重複処理プログラム２２３は、ライトデータのデータを代表する数値であるハッシュ値を算出し、重複データ管理テーブル２２４のハッシュ値欄２２４１に格納されたハッシュ値と比較することで、既にディスク２９１〜２９８に書き込まれているデータとライトデータが同一内容の可能性があるか否かを判断する。
【００３４】
重複データ管理テーブル２２４に該ライトデータのハッシュ値と同一の値がない場合、データ重複処理プログラム２２３は、該ライトデータを新規のデータとしてディスクに書き込み、重複データ管理テーブル２２４に新規の行を追加し、該ライトデータのハッシュ値とディスクに書き込み先の論理アドレスをハッシュ値欄２２４１と実データ格納アドレス欄２２４２に格納し、ホスト側指定アドレスをホスト側指定アドレス欄２２４３に格納する。
【００３５】
一方、重複データ管理テーブル２２４に該ライトデータのハッシュ値と同一の値がある場合、データ重複処理プログラム２２３は既に同一データを書き込まれている可能性があると判断する。この場合、データ重複処理プログラム２２３は重複データ管理テーブル２２４を参照し、該ライトデータのハッシュ値と同一のハッシュ値の実データ格納アドレス欄２２４２に格納された論理アドレスが示すディスク上のデータを読み出し、該ライトデータとデータ内容を比較する。
【００３６】
比較の結果、データ内容が一致した場合、データ重複処理プログラム２２３は該ライトデータをディスクに書き込まず、重複データ管理テーブル２２４の該ライトデータのハッシュ値の行のホスト側指定アドレス欄２２４３にホスト側指定アドレスを追加する。
【００３７】
一方、比較の結果、データ内容が一致しない場合、ハッシュ値は同じだが元データは異なるシノニムが発生している。この場合、データ重複処理プログラム２２３は該ライトデータをディスクに書き込み、重複データ管理テーブル２２４の該ライトデータのハッシュ値と同一ハッシュ値の行の実データ格納アドレス欄２２４２に該ライトデータの書き込み先の論理アドレスを追加し、ホスト側指定アドレス欄２２４３にホスト側指定アドレスを追加する。
【００３８】
つまり、シノニムの発生したハッシュ値は、同一ハッシュ値でも異なるデータをディスク上に持つ。すなわち、重複データ管理テーブル２２４は、一つのハッシュ値に対して、実データ格納アドレスとホスト側指定アドレスの組み合わせを複数持つことになる。
【００３９】
なお、ホスト１００からのリードの際、データ重複除去プログラム２２３は重複データ管理テーブル２２４のホスト側指定アドレス欄２２４３を参照し、対応する実データ格納アドレス欄２２４２に格納された論理アドレスが示すディスクからデータを読み出し、ホスト１００に返す。なお、上記は公知で開示されている技術であり、本実施形態に関連する内容を除いて詳細な説明を省略している。
【００４０】
ところで、ディスクアレイ２００はデータプール管理テーブル２２６を用いて、“実ボリュームＬＵ番号”に示される複数のＬＵを、ホスト１００に“ホスト側ボリューム番号”に示される仮想的な１つ以上のＬＵとして認識させるストレージボリューム仮想化の仕組みを有している。これは一般的に開示されているストレージの仮想化技術であり、本実施形態では仮想化の仕組み自体は重要ではないため説明を省略する。
【００４１】
なお、データプール管理テーブル２２６は、図４に示すように、ホスト欄２２６１、ホスト側ボリューム番号欄２２６２及び実ボリュームＬＵ番号欄２２６３を有している。ホスト欄２２６１には、ホストを示す情報が格納される。ホスト側ボリューム番号欄２２６２にはホスト側のボリューム番号が格納される。実ボリュームＬＵ番号欄２２６３にはホスト側のボリューム番号と対応する実ボリュームＬＵ番号が格納される。データプール管理テーブル２２６には、ホスト欄２２６１に格納されるホスト“Ａ”に対応してホスト側ボリューム番号欄２２６２にホスト側ボリューム番号として“００１”、実ボリュームＬＵ番号欄２２６３に実ボリュームＬＵ番号として“ＬＵ０１，ＬＵ０２，ＬＵ０３，ＬＵ０４，ＬＵ０５，ＬＵ０６”が格納される。
【００４２】
この第１の実施形態では、既述のデータ重複除去を適用する範囲を、データプール管理テーブル２２６の実ボリュームＬＵ番号欄２２６２に示されるホストが認識している仮想ＬＵに対応する複数のＬＵ単位としている。勿論、データ重複除去が適用される範囲は、仮想化されたボリューム単位に限定しなくてもよい。例えばホストに割り当てられた１つ以上のＬＵ単位や、データ重複除去プログラム２２３により予め設定されたホストと関連のない１つ以上のＬＵ単位や、ＲＡＩＤグループ単位、ディスクアレイ単位などでもよいものとする。
【００４３】
以上がストレージシステム１，２の構成である。ただし、この第１の実施形態のストレージシステム１，２の構成は本発明が適用されるストレージシステムの一例である。すなわち、この第１の実施形態では、データ重複除去に関するデータ重複除去プログラム２２３と、重複データ管理テーブル２２４が有する機能はディスクアレイ２００のメモリ２２０に格納されることとしているが、これに限るものではない。例えば、これらデータ重複除去を実現する機能はディスクアレイ２００の外部に位置し、ＳＡＮを介してホスト１００とディスクアレイ２００のデータの仲介をする独立した計算機にデータ重複除去装置として存在してもよいもとする。また、上記機能はデータ重複除去装置ではなく別の装置、例えば仮想化装置等に実装される構成でもよい。
【００４４】
上記の場合、ディスクアレイ２００と外部に存在するデータ重複除去プログラム２２３と、重複データ管理テーブル２２４は、ディスクアレイ２００の管理Ｉ／Ｆ２６０またはＦＣＩ／Ｆ２５０を介して接続され、後述するデータ重複除去を考慮した省電力制御で必要となる既述の省電力グループ管理テーブル２２２と、重複データ管理テーブル２２４、及びデータプール管理テーブル２２６と、重複未比較データ管理テーブル２２５との情報を遣り取りできるものとする。
【００４５】
重複未比較データ管理テーブル２２５は、同時に起動可能なＲＡＩＤグループ数を制限する上限値により同一ハッシュ値をもつデータがディスクからリードできず、その結果データ内容の比較を実施しないでディスクに書き込まれたライトデータ（以下、未比較データともいう）が格納されるテーブルである。
【００４６】
重複未比較データ管理テーブル２２５は、図５に示すように、データ仮格納アドレス欄２２５１、ホスト側指定アドレス欄２２５２及びハッシュ値欄２２５３を有している。データ仮格納アドレス欄２２５１には、データ重複除去処理でデータを仮格納するアドレスが格納される。ホスト側指定アドレス欄２２５２にはホスト側指定アドレスが格納される。ハッシュ値欄２２５３は、データ仮格納アドレスに格納されるデータのハッシュ値が格納される。重複未比較データ管理テーブル２２５には、例えば図５に示すように、データ仮格納アドレス欄２２５１に格納されるデータ“ＬＵ０３：１０００００”に対応してホスト側指定アドレス欄２２５２にホスト側指定アドレスとして“００１：１０９０００”、ハッシュ値欄２２５３にハッシュ値“ａ”が格納される。
【００４７】
(１−３)データ重複除去を考慮した省電力制御
データ重複除去において、ホスト１００からのライトデータをディスクアレイ２００が受信した際、前述の通り、データ重複除去プログラム２２３は該ライトデータが既にディスク２９１〜２９８に書かれたデータか否かを判断するためハッシュ等を利用した高速な検索を実施する。
【００４８】
しかし、シノニムが発生している場合を考慮し、ライトデータと同一ハッシュ値が存在した場合、ホスト１００からライトデータを受領したディスクアレイ２００は、データプール管理テーブル２２６に示されたデータ重複除去の範囲にあるＬＵのうち、同一ハッシュ値をもつデータを格納しているディスク全てにアクセスする可能性が生じる。
【００４９】
一方、ディスクアレイ２００は既述の通り省電力グループ制御プログラム２２１が、省電力グループ管理テーブル２２２を利用し、同時に起動するＲＡＩＤグループ数を上限値で制限し、消費電力の抑制を実施している。
【００５０】
このため、データ重複除去において同一ハッシュ値発生時にデータ比較を実施するためディスク２９１〜２９８へのリードアクセスが発生する際、リード対象の論理アドレスを含むＲＡＩＤグループが停止状態であった場合、起動までディスク起動の時間がかかり性能の低下が発生する。また上限値の制限が適用されている場合、該当するＲＡＩＤグループが起動できず、データ比較が実施できない。
【００５１】
更に、同一ハッシュ値のデータが異なるＲＡＩＤグループに分散して格納されている場合、同一ハッシュ値が発生するたびに、同一ハッシュ値を含む複数のＲＡＩＤグループを起動させる必要が生じ、省電力効果の低減となる。
【００５２】
そこで、上記課題を解決する本発明の処理を、図６から図９のフローチャートを参照して説明する。
【００５３】
先ず、ホスト１００からのライト処理について説明する。図６はこのライト処理を示すフローチャートである。この処理は、ホスト１００からライトデータとその書き込み先のホスト側指定アドレスをディスクアレイ２００が受信したときに開始される。
【００５４】
先ず、ステップＳ１００１において、データ重複除去プログラム２２３は該ライトデータのハッシュ値を算出する。次に、ステップＳ１００２において、データ重複除去プログラム２２３は同一ハッシュ値が重複データ管理テーブル２２４のハッシュ値欄２２４１にあるかを判断する。
【００５５】
同一ハッシュ値がない場合（Ｓ１００２：ＮＯ）、新規のデータ内容のライトデータであると判断できるため、ステップＳ１００３において、データ重複除去プログラム２２３は重複データ管理テーブル２２４に新規に追加し、該ライトデータのハッシュ値をハッシュ値欄２２４１に書き込み先の論理アドレスを実データ格納アドレス欄２２４２に、ホスト側指定アドレスをホスト側指定アドレス欄２２４３に格納する。その後、ステップＳ１００４において、データ重複除去プログラム２２３は省電力グループ管理テーブル２２２を参照し、起動しているＲＡＩＤグループのＬＵに該ライトデータを書き込む
【００５６】
一方、重複データ管理テーブル２２４に該ライトデータのハッシュ値と同一の値がある場合は（Ｓ１００２：ＹＥＳ）、既に同一データを書き込まれている可能性があると判断されるため、ステップＳ１００５において、データ重複除去プログラム２２３は、重複除去の判断の処理を実施する。
【００５７】
ステップＳ１００４の処理又はステップＳ１００５の処理が終了すると、ライト処理は終了する。
【００５８】
次に、重複除去の判断の処理について説明する。図７はステップＳ１００５の重複除去の判断処理を示すフローチャートである。
【００５９】
ステップＳ２００１において、データ重複除去プログラム２２３は、重複未比較データ管理テーブル２２５のハッシュ値欄２２５３に格納されるハッシュ値が、該ライトデータのハッシュ値に一致するか比較する。
【００６０】
上記ステップ２００１の結果が一致しない場合（Ｓ２００１：ＮＯ）、ステップＳ２００２において、データ重複除去プログラム２２３は、重複除去の実施処理を行う。この重複除去の実施処理については図８を用いて後述する。
【００６１】
上記ステップ２００１の結果が一致する場合（Ｓ２００１：ＹＥＳ）、既にディスク上には同一ハッシュ値をもつ未比較データが存在する。該ライトデータのデータ内容の比較をするには、重複データ管理テーブル２２４と、重複未比較データ管理テーブル２２５に登録された同一ハッシュ値のデータを全てディスクからリードする必要がある。本実施形態では、起動ＲＡＩＤグループ数の制限のため全てのディスクを起動できない。ディスクからの同一ハッシュ値のデータを全てリードできないため、ステップＳ２００３において、データ重複除去プログラム２２３は省電力グループ管理テーブル２２２を参照し、起動しているＲＡＩＤグループのＬＵにデータ内容の比較を実施していない該ライトデータを書き込む。
【００６２】
その後、ステップＳ２００４において、データ重複除去プログラム２２３は、重複未比較データ管理テーブル２２５に該ライトデータを未比較データとして格納する。すなわち、ステップＳ２００３で該ライトデータを書き込んだディスクの論理アドレスをデータ仮格納アドレス欄２２５１に、該ライトデータのホスト側指定アドレスをホスト側指定アドレス欄２２５２、該ライトデータのハッシュ値をハッシュ値欄２２５３に格納する。
【００６３】
次に、重複除去の実施処理について説明する。図８はこの重複除去の実施処理を示すフローチャートである。
【００６４】
先ず、データ重複除去プログラム２２３は、ステップＳ３００１において、重複データ管理テーブル２２４の当該ライトデータと同一ハッシュ値の実データ格納アドレス欄２２４２に格納される実データ格納アドレスのＬＵ番号と、省電力グループ管理テーブル２２２のＬＵ番号欄２２２４に格納されるＬＵ番号とを比較し、当該ＬＵを含むＲＡＩＤグループの状態欄２２２２に格納される“状態”が“起動中”であるか否かを判断する。
【００６５】
当該ＲＡＩＤグループの状態欄２２２２が“停止中”の場合（Ｓ３００１：ＮＯ）、ステップＳ３００２において、データ重複除去プログラム２２３は、当該ＬＵが含まれるＲＡＩＤグループを起動させることが可能か判断する。起動正否の判断は、省電力グループ制御プログラム２２１が、省電力グループ管理テーブル２２２を参照し、上限値の制限内かで判断する。
【００６６】
このステップＳ３００２のＲＡＩＤグループの起動判断の結果、当該ＲＡＩＤグループの起動できない場合は（Ｓ３００２：ＮＯ）、データ重複除去プログラム２２３はディスクから同一ハッシュ値のデータをリードできない。この結果、データ重複除去プログラム２２３は当該ライトデータのデータ内容の比較ができない。このためデータ重複除去プログラム２２３はステップＳ３００３において、省電力グループ管理テーブル２２２を参照し、ステップＳ３００１で確認したＲＡＩＤグループとは異なる、起動中のＲＡＩＤグループのＬＵに該ライトデータを書き込む
【００６７】
その後、ステップＳ３００４において、データ重複除去プログラム２２３は重複未比較データ管理テーブル２２５に該ライトデータを未比較データとして格納する。ステップＳ３００３で該ライトデータを書き込んだディスクの論理アドレスをデータ仮格納アドレス欄２２５１、ホスト側指定アドレスをホスト側指定アドレス欄２２５２及びハッシュ値をハッシュ値欄２２５３に格納する。
【００６８】
ステップＳ３００１で状態欄２２２２が“起動中”の場合（Ｓ３００１：ＹＥＳ）、又はステップ３００２において、上記ＲＡＩＤグループの起動は可能であると判断された場合は（Ｓ３００２：ＹＥＳ）、ステップＳ３００５において、データ重複除去プログラム２２３は、当該ＲＡＩＤグループを起動状態にし、重複データ管理テーブル２２４の該ライトデータのハッシュ値の実データ格納アドレス欄２２４２に格納された全ての論理アドレスのデータをディスクからリードし、該ライトデータとデータ内容の比較を実施する。
【００６９】
上記ステップＳ３００５の結果、データが一致した場合（Ｓ３００５：ＹＥＳ）、既に同一データがディスク２９１〜２９８上に存在するため、データ重複除去プログラム２２３は、当該ライトデータはディスク２９１〜２９８に書き込まない。またこの場合、データ重複除去プログラム２２３は、ステップＳ３００６において、ステップＳ３００５の比較で結果が一致したデータの論理アドレスが格納された重複データ管理テーブル２２４の実データ格納アドレス欄２２４２と同じ行のホスト側指定アドレス欄２２４３に当該ライトデータのホスト側指定アドレスを格納する。
【００７０】
上記ステップＳ３００５の結果、データが一致しなかった場合（Ｓ３００５：ＮＯ）、ステップＳ３００７において、データ重複除去プログラム２２３は、該ライトデータは新規のデータとし、省電力グループ管理テーブル２２２を参照し、ステップＳ３００５で比較データをリードし起動中のＲＡＩＤグループのＬＵに該ライトデータを書き込む。
【００７１】
その後、ステップＳ３００８において、データ重複除去プログラム２２３は重複データ管理テーブル２２４の該ライトデータのハッシュ値の行の実データ格納アドレス欄２２４２に該ライトデータの書き込み先の論理アドレスを追加し、ホスト側指定アドレス欄２２４３にホスト１００から指定されたアドレスを追加する。
【００７２】
以上がホスト１００からのライトデータのディスクアレイ２００における処理手順である。本処理では、同一ハッシュ値を持つデータがないライトデータは、新規のデータとしてディスク２９１〜２９８上に格納され、算出されたハッシュ値がハッシュ値欄２２４１に、ディスク上の論理アドレスが実データ格納アドレス欄２２４２に、ホスト側指定アドレスがホスト側指定アドレス欄２２４３（重複データ管理テーブル２２４）に、新規に登録される。
【００７３】
また、同一ハッシュ値をもつデータが存在し、比較の結果データ内容が異なることが確定しているライトデータは、データ自体はディスク２９１〜２９８上に格納され、既にある同一ハッシュ値の行の、ディスク上の論理アドレスが実データ格納アドレス欄２２４２に、ホスト側指定アドレスがホスト側指定アドレス欄２２４３（重複データ管理テーブル２２４）に追加で登録される。
【００７４】
さらに、また、省電力グループの上限値によりディスクが起動できず同一ハッシュ値をもつデータとのデータ内容の比較が実施できなかったライトデータは、ライトデータを一時的に書き込んだディスク上の論理アドレスがデータ仮格納アドレス欄２２５１に、ハッシュ値がハッシュ値欄２２５３に、ホスト側指定アドレスがホスト側指定アドレス欄２２５２（重複未比較データ管理テーブル２２５）に新規に登録される。
【００７５】
次に、本発明において、データ重複除去プログラム２２３が実施するデータ最適化処理について説明する。データ最適化処理とは、重複未比較データ管理テーブル２２５に登録されている未比較データに対して、データ内容の比較を実施し、データの内容が同一な場合は、通常のデータ重複除去を実施することである。更に、同一ハッシュ値を持ちデータ内容が異なることが確定したデータは、ディスク２９１〜２９８上のデータ位置を移動させ、同じハッシュ値をもつデータが格納された省電力グループに集められる。
【００７６】
データ最適化処理の結果、データ最適化処理後にライトデータを受信し、同一ハッシュ値が発生しディスク上のデータとデータ内容の比較が発生した際、同一ハッシュ値をもつデータが集約された省電力グループのみを起動させることでディスクからの同一キャッシュ値をもつデータのリードが可能となる。
【００７７】
続いて、本実施形態におけるデータ最適化処理について説明する。図９はこのデータ最適化処理の手順を示すフローチャートである。
【００７８】
先ず、ステップＳ４００１において、データ重複除去プログラム２２３は以下の（１）から（６）の場合をデータ最適化処理の実施契機としてデータ最適化実施を行なうこととする。具体的には、（１）通常の処理中にＲＡＩＤグループの起動／停止時が発生する場合、（２）ヘルスチェックなどで停止中のＲＡＩＤグループが起動する場合、（３）上記上限値に余裕がある場合、（４）省電力グループ管理テーブル２２２で示される省電力グループ単位であるＲＡＩＤグループのボリューム利用率欄２２２５に格納されるボリューム利用率がユーザの指定した閾値を越えた場合、（５）重複未比較データ管理テーブル２２５に格納された未比較データ数が予め設定された閾値以上になった場合、（６）ユーザまたはホスト１００のアプリケーションによって実施を指定された場合である。本実施形態では、これら（１）から（６）のいずれかの場合をデータ最適化処理の実施契機とすることとするが、実施契機は、これら（１）から（６）いずれかの場合に限られるものではない。
【００７９】
次に、ステップＳ４００２において、データ重複除去プログラム２２３は、重複未比較データ管理テーブル２２５を参照し、未比較データが存在するか否かを判断する。未比較データが存在しない場合（Ｓ４００２：ＮＯ）、データ重複除去プログラム２２３は、再度ステップＳ４００１へ戻り、データ最適化処理開始の契機を待つ。
【００８０】
一方、未比較データが存在する場合（Ｓ４００２：ＹＥＳ）、データ重複除去プログラム２２３は未比較データのデータ内容を比較するために稼動が必要なＲＡＩＤグループの候補を選択し、結果を起動候補省電力グループ管理テーブル２２７に格納する。
【００８１】
具体的な一例としては、データ重複除去プログラム２２３は、未比較データそれぞれに対して、各々のハッシ値と同一値をもつ重複未比較データ管理テーブル２２５のデータ仮格納アドレス欄２２５１に格納されたＬＵ番号、及び重複データ管理テーブル２２４の実データ格納アドレス欄に格納されたＬＵ番号を取り出す。次に、データ重複除去プログラム２２３は、省電力グループ管理テーブル２２２から上記ＬＵ番号を含むＲＡＩＤグループを選択する。この結果、全ての未比較データのハッシュ値ごとにデータ内容の比較のため起動する必要があるＲＡＩＤグループの候補（以下、起動候補ＲＡＩＤグループともいう）が選定される。そして、ステップＳ４００３において、データ重複除去プログラム２２３は、その結果を起動候補省電力グループ管理テーブル２２７に格納する。
【００８２】
ここで起動候補省電力グループ管理テーブル２２７について説明する。なお、図１１は、起動候補省電力グループ管理テーブル２２７を示す図である。起動候補省電力グループ２２７は、データを格納するために起動するＲＡＩＤグループの候補を格納するテーブルである。起動候補省電力グループ管理テーブル２２７は、ハッシュ値欄２２７１、起動候補省電力グループ欄２２７２及び同一ハッシュ値データ数欄２２７３を有している。ハッシュ値欄２２７１にはハッシュ値が格納される。起動候補省電力グループ欄２２７２には起動候補省電力グループが格納される。同一ハッシュ値データ数欄２２７３には同一ハッシュ値データ数が格納される。起動候補省電力グループ管理テーブル２２７には、例えば図１１に示すように、ハッシュ値欄２２７１のハッシュ値“ａ”に対応して起動候補省電力グループ欄２２７２には起動候補省電力グループとして“ＲＧ０１，ＲＧ０２，ＲＧ０３”という３つのＲＡＩＤグループが格納され、同一ハッシュ値データ数欄２２７３には、ＲＡＩＤグループ“ＲＧ０１”と対応して同一ハッシュ値データ数“２”が、ＲＡＩＤグループ“ＲＧ０２”と対応して同一ハッシュ値データ数“１”が、ＲＡＩＤグループ“ＲＧ０３”と対応して同一ハッシュ値データ数“１”が格納される。
【００８３】
なお本実施形態では、省電力グループはＲＡＩＤグループ単位としているため、起動候補省電力グループにはＲＡＩＤグループの識別子を記載する場合について説明することとするが、省電力グループの単位が異なる場合は、省電力識別番号を用いてもよい。
【００８４】
次に、データ重複除去プログラム２２３は、ステップＳ４００４において、起動候補省電力グループ管理テーブル２２７及び電力グループ管理テーブル２２２を参照し、省電力グループ制御プログラム２２１が保持する上限値の範囲で、省電力グループ制御プログラム２２１に指示をだし起動候補ＲＡＩＤグループを稼動させ、未比較データのデータ内容をハッシュ値ごとに比較する。
【００８５】
なお、起動候補ＲＡＩＤグループの総数が上限値を超えている場合、データ重複除去プログラム２２３は、起動候補ＲＡＩＤグループを上限値内で順番に立ち上げデータをリードし、ディスクアレイ２００のキャッシュ２３０にリードしたデータを格納し、このデータと比較する。また起動中のディスクの一部を一時領域をとして利用し、上記のキャッシュ２３０の代わりに利用してもよいものとする。また、ユーザに警告をだして上限値の変更を促してもよいものとする。
【００８６】
ステップＳ４００４の比較の結果、データ内容が一致した未比較データは（Ｓ４００４：ＹＥＳ）、データ重複除去プログラム２２３が、１つ以上の重複したデータがディスク上にあると判断する。このため、ステップＳ４００５において、データ重複除去プログラム２２３は、この重複したデータを１つ残して他は全て削除する。重複データ削除の優先度は、重複したデータが全て同一ＲＡＩＤグループにある時は、未比較データの方から削除する。重複データが異なるＲＡＩＤグループにある場合は、起動候補省電力グループ管理テーブル２２７に格納された同一ハッシュ値の起動候補省電力グループの中で同一ハッシュ値データ数が小さい方の起動候補省電力グループに格納されたデータの方から削除する。
【００８７】
次に、ステップＳ４００６において、データ重複除去プログラム２２３は、削除したデータの重複データ管理テーブル２２４、重複未比較データ管理テーブル２２５、起動候補省電力グループ管理テーブル２２７の情報を、ディスク２９１〜２９８上のデータ削除に合わせて整理する。
【００８８】
具体的な一例としては、ステップＳ４００５で削除したデータが重複未比較データ管理テーブル２２５に格納されたデータの場合、当該データを重複未比較データ管理テーブル２２５から削除し、重複データ管理テーブル２２４に格納しなおす。この格納内容は未比較データの“ホスト側指定アドレス”の情報を、ハッシュ値、データ内容ともに一致したデータに該当する重複データ管理テーブル２２４のホスト側指定アドレス欄２２４３に追加するものである。この結果、重複データ管理テーブル２２４は、１つのハッシュ値と実データ格納アドレスの組み合わせに対して複数のホスト側指定アドレス持つ場合が存在することとなる。
【００８９】
ステップＳ４００５で削除したデータが、重複データ管理テーブル２２４に格納されたデータだった場合は、ステップＳ４００６において、データ重複除去プログラム２２３は、以下に説明する重複未比較データ管理テーブル２２５及び、重複データ管理テーブル２２４の整理を行う。
【００９０】
この整理は、削除したデータと比較した未比較データを示す重複未比較データ管理テーブル２２５の格納情報から削除し、重複データ管理テーブル２２４に格納しなおすものである。具体的にはデータ重複除去プログラム２２３は、重複未比較データ管理テーブル２２５に格納された“データ仮格納アドレス”、“ハッシュ値”及び“ホスト側指定アドレス”を、重複データ管理テーブル２２４の実データ格納アドレス欄２２４２、ハッシュ値欄２２４１及びホスト側指定アドレス欄２２４３に格納する。さらに、データ重複除去プログラム２２３は、削除したデータを示す重複データ管理テーブル２２４に格納されていた情報を削除し、当該データのホスト側指定アドレスの情報を、先ほど重複未比較データ管理テーブル２２５から重複データ管理テーブル２２４に移動したデータと対応するホスト側指定アドレス欄２２４３に追加する。この整理は順番が前後してもかまわないが、結果的に、データ内容が一致した重複データは、ディスクアレイ２００上のディスク２９１〜２９８には１つしか存在せず、かつ当該データ内容に対するホスト側指定アドレスを示す情報は全て引き継がれるものとする。最後に、データ重複除去プログラム２２３は、削除したデータの数に合わせて、起動候補省電力グループ管理テーブル２２７の同一ハッシュ値データ数欄２２７３に格納される同一ハッシュ値データ数を削除したデータの数だけ減少させる。
【００９１】
一方、ステップ４００４の比較の結果、データ内容が一致しない場合、データ重複除去プログラム２２３は、当該データは、重複したデータがディスク２９１〜２９８上にないと判断する。この結果、ハッシュ値は同じだがデータ内容は異なるため削除対象とはならない。そして、ステップＳ４００７において、データ重複除去プログラム２２３は、以下に説明する重複未比較データ管理テーブル２２５及び、重複データ管理テーブル２２４の整理を行う。
【００９２】
データ重複除去プログラム２２３は、データ内容が一致しないデータを示す重複未比較データ管理テーブル２２５の格納情報を削除し、重複データ管理テーブル２２４に格納しなおす。
【００９３】
具体的には、ステップＳ４００７において、データ重複除去プログラム２２３は、当該データを示す重複未比較データ管理テーブル２２５の格納情報のうち“データ仮格納アドレス”及び“ホスト側指定アドレス”を、重複データ管理テーブル２２４の同一ハッシュ値の行の“実データ格納アドレス”及び“ホスト側指定アドレス”に移動する。この結果、重複データ管理テーブル２２４は、１つのハッシュ値に対して、複数の実データ格納アドレスとホスト側指定アドレスの組み合わせを持つ場合が存在するようになる。
【００９４】
上記ステップＳ４００４からステップＳ４００７までの重複データの削除は重複未比較データ管理テーブル２２５に格納された情報がなくなるまで繰り返し実施される。
【００９５】
最後に、ステップＳ４００８において、データ重複除去プログラム２２３は、ハッシュ値が同じでデータ内容が異なるデータを、同じ省電力グループに集約させるためデータを移動させ、それに伴う重複データ管理テーブル２２４及び起動候補省電力グループ管理テーブルを整理する。
【００９６】
具体的な一例としては、データ重複除去プログラム２２３は、重複データ管理テーブル２２４の実データ格納アドレス欄２２４２省電力グループ管理テーブル２２２を参照する。そして同一ハッシュ値で異なる省電力グループにデータが格納されている場合、データ重複除去プログラム２２３は、このデータを移動し、同じ省電力グループにデータを集める。移動元と移動先の決定は、起動候補省電力グループ管理テーブル２２７を参照し、同一ハッシュ値データ数欄２２７３から“同一ハッシュ値データ数”が少ない省電力グループから“同一ハッシュ値データ数”が多い省電力グループにデータを移動させる。このデータの移動に伴い、重複データ管理テーブル２２４の移動したデータを示す格納情報のうち実データ格納アドレス欄２２４２に格納される実データ格納アドレスを移動先のアドレスに変更する。さらに、データ重複除去プログラム２２３は、起動候補省電力グループ管理テーブル２２７の同一ハッシュ値データ数欄２２７３の“同一ハッシュ値データ数”をデータが異なる省電力グループに移動したのに合わせて変更する。
【００９７】
上記のステップＳ４００８は、起動候補省電力グループ管理テーブル２２７の同一ハッシュ値データ数欄２２７３に格納される“同一ハッシュ値データ数”がすべて一つの“起動候補省電力グループ”に集約されるまで繰り返し実施する。
【００９８】
上記ステップＳ４００８の処理が終了するとステップＳ４００１の処理へ戻り、上記で説明したデータ最適化実施の契機が訪れると再び上述した処理が実行される。
【００９９】
この第１の実施形態のストレージシステム１によると、ディスクアレイ２００においてデータ重複除去とディスク稼動の制御を同時に実施した場合に、データ重複除去によるデータ容量の効率化と、ディスク稼動の制御による省電力効果を最大限に発揮することができる。
【０１００】
なお、上記実施形態は一例であり、上記実施形態と異なる手順で処理を実施してもよいもとする。すなわち、結果的に、データ内容が同じ重複データは削除することでディスク上に必ずデータを１つとし、複数の省電力グループに分散して格納されているハッシュ値が同じでデータ内容が異なるデータは同一省電力グループに集約して格納されればよいものとする。例えば、データ最適化処理に際して省電力グループの起動回数を減らすために、ステップＳ４００２からＳ４００８までを同時に実施してもよいものとする。
【０１０１】
第２の実施形態：
（２−１）構成の説明
第２の実施形態の構成は、上記第１の実施形態のストレージシステム１の構成と同様であるため省略する。
【０１０２】
（２−２）ディスクアレイの消費電力の抑制
【０１０３】
上記第１の実施形態と同様のため省略する。ただし、省電力グループの中に１つ以上、ディスクアレイ２００が稼動中は、常にアクセスが可能な状態で起動している省電力グループ（以下、常時稼動グループと呼ぶ）が定義されている。
【０１０４】
（２−３）データ重複除去
上記第１の実施形態と同様のため省略する。
【０１０５】
（２−４）  データ重複除去を考慮した省電力制御
上記第１の実施形態と処理の流れは以下の点を除いて同様であるため同様な点については説明を省略し、異なる点について以下に説明する。
【０１０６】
上記第１の実施形態と異なりこの第２の実施形態では、常時稼動グループを未比較データの一時的な格納場所に利用する。この場合、図７ステップＳ２００２における未比較データは全て常時稼動グループに一時的に保持される。また、データ最適化処理に際しては、ステップＳ４００５の重複データの削除処理、ステップＳ４００８の同一ハッシュ値のデータ移動処理は、必ず常時稼動グループを削除元、移動元とする。
【０１０７】
さらに、常時稼動グループが常にアクセス可能である特性を活かし、同一ハッシュ値のデータ数が予め決められた閾値以上になった場合、該当するハッシュ値のデータを全て常時稼動グループに移動させてもよいもとする。
【０１０８】
これにより、図８のステップＳ３００１での省電力グループが起動しているかの判断において、常時稼動グループは常に起動しているため、余分な省電力グループの起動を必要としないデータ重複除去の実施が可能となる。
【０１０９】
なお、この第２の実施形態では、常時稼動グループはディスク２９１〜２９８が一つ以上含まれる省電力グループの一つの制御形態としている。しかしながら、このディスク２９１〜２９８が含まれる制御形態とは異なり、揮発／不揮発性のメモリなどのディスクアレイ２００の稼動時にアクセスが可能なデータ記憶領域が含まれる制御形態であってもよい。
【０１１０】
第３の実施形態：
（３−１）構成の説明
第３の実施形態の構成は、上記第１の実施形態のストレージシステム１の構成と同様であるため省略する。
【０１１１】
（３−２）ディスクアレイの消費電力の抑制
上記第１の実施形態と同様のため省略する。
【０１１２】
（３−３）データ重複除去
上記第１の実施形態と同様のため詳細な説明は省略する。ただし、ホスト１００からディスクアレイ２００へのライトデータは、データ重複除去プログラム２２３により、複数のセグメントに分割されてからハッシュ値を計算されることとする。また、セグメントの大きさはデータ重複除去の仕様によって異なっていてもよいものとする。
【０１１３】
（３−４）データ重複除去を考慮した省電力制御
上記第１の実施形態と同様な点については説明を省略し、異なる点について以下に説明する。
【０１１４】
上記第１の実施形態と異なり第３の実施形態では、ライトデータが複数のセグメントに分割されている。これら一つのライトデータから分割された複数のセグメントはホスト１００からは連続したデータとして認識される。その結果、ホスト１００からのデータリードで同時にディスクから読み出される確立が高くなる。上記第１の実施形態に適用した場合、連続性のあるセグメント群に所属するデータ（以下、関連データと呼ぶ）の一部が、異なる省電力グループ（上記第１の実施形態の場合はＲＡＩＤグループ）に格納される場合も発生する。この場合、連続したセグメントを呼び出す際に複数の省電力グループを起動させる必要が生じる。この結果、省電力グループが停止状態などの省電力状態であった場合、複数の省電力グループを起動させる必要が生じ、省電力効果の低減となる。そこで、この第３の実施形態では、連続性のあるデータの関連性を示す情報を保持し、この情報を元にデータ最適化処理の際に、同じ省電力グループとなるようにデータを配置する。
【０１１５】
具体的には、図３に示す重複データ管理テーブル２２４と、図５に示す重複未比較データ管理テーブル２２５に、関連アドレスを格納する関連アドレス欄を追加する。図１２は関連アドレス欄を追加した重複データ管理テーブル２２８、図１３は関連アドレス欄を追加した重複未比較データ管理テーブル２２９を示す図である。
【０１１６】
図１２に示すように重複データ管理テーブル２２８は、ハッシュ値欄２２８１、実データ格納アドレス欄２２８２及びホスト側指定アドレス欄２２８３に加え、関連アドレス欄２２８４が設けられている。また、図１３に示すように重複未比較データ管理テーブル２２９は、データ仮格納アドレス欄２２９１、ホスト側指定アドレス欄２２９２及びハッシュ値欄２２９３に加え、関連アドレス欄２２９４が設けられている。
【０１１７】
図１２及び図１３に示すように、関連アドレス欄２２８４は実データ格納アドレス欄２２８２と、関連アドレス欄２２９４はデータ仮格納アドレス欄２２９１とそれぞれ１対１の関係となっている。また、実データ格納アドレス欄２２８２又は、データ仮格納アドレス欄２２９１で示されるディスク上のアドレスに格納されたデータの関連データがある場合、当該データのディスク上のアドレスが複数格納される。
【０１１８】
このアドレスが複数格納される処理を上記第１の実施形態を基に具体的に説明すると、第１の実施形態でのライトデータをディスクに書き込むタイミング、つまり、実データ格納アドレスを重複データ管理テーブル２２８、又はデータ仮格納アドレスを重複未比較データ管理テーブル２２９に格納するタイミングで、関連アドレス欄２２８４、又は関連アドレス欄２２９４に、関連データとしてディスク２９１〜２９８に書き込まれた論理アドレスを登録する。なお、関連データが複数の連続性をもつ場合は、関連アドレス欄２２８４，２２９４には複数の論理アドレスが格納される。
【０１１９】
さらに、データ最適化処理の際、同一ハッシュ値をもつデータの移動と重複データ管理テーブル２２８、重複未比較データ管理テーブル２２９などの管理テーブルの整理を実施後に、“関連アドレス”を利用したデータの再配置とテーブルの整理を実施する。なお、これらの処理は同時に実施してもよいものとする。
【０１２０】
次に、第３の実施形態におけるデータ最適化処理について説明する。図１４はこのデータ最適化処理を示すフローチャートである。なお、図１４におけるステップＳ４００１からＳ４００８は、図９で説明した処理と同様であるため説明を省略し、新たに追加されたステップＳ４００９について詳細に説明する。
【０１２１】
ステップＳ４００９において、データ重複除去プログラム２２３は、重複データ管理テーブル２２８の実データ格納アドレス欄２２８２と関連アドレス欄２２８４を参照する。そして、データ重複除去プログラム２２３は、ＬＵ番号が異なっていると判断した場合、さらに、当該ＬＵ番号が異なるＲＡＩＤグループに所属しているか否かを、省電力グループ管理テーブル２２２を参照し判断する。この結果、データ重複除去プログラム２２３は異なるＲＡＩＤグループに所属していると判断した場合、同一のＲＡＩＤグループにデータを移動し、データ移動に伴い変更したアドレスに合わせて重複データ管理テーブル２２８の実データ格納アドレス欄２２８２と関連アドレス欄２２８４を書き換える。データ重複除去プログラム２２３は、この処理を“実データ格納アドレス”と“関連アドレス”が全て同じＲＡＩＤグループに属するまで繰り返す。この結果、“関連データ”は同じＲＡＩＤグループ（省電力グループ）上に格納される。
【０１２２】
ただし、この際、重複データ管理テーブル２２８の“ハッシュ値”に対して“実データ格納アドレス”が複数格納されているデータに関しては、同一ハッシュ値のデータを集約するため同一省電力グループに集められているデータのため除外してもよいものとする。
【０１２３】
なお、同一省電力グループに、同一ハッシュ値で異なるデータを同一省電力グループへ集約するかを優先するか、または関連データを同一省電力グループに集約するかを優先するかは、ユーザが指定してもよいし、例えば同一ハッシュ値のデータ数と関連データの数を比較し、多い方を優先するなどシステム的に決定してもよいものとする。
【０１２４】
さらに、上記第３の実施形態では、一例としてライトデータがデータ重複除去プログラム２２３により分割された場合で説明したが、ホスト１００のアプリケーション等でのデータの連続性が示される情報、例えば差分ファイルなどの特性を利用して関連データとしてもよい。
【０１２５】
また、上記第１から第３の実施形態では、説明の都合上、処理の主体を省電力グループ管理プログラム２２１又はデータ重複除去プログラム２２３とした場合で説明しているが、当該処理は、省電力グループ管理プログラム２２１又はデータ重複除去プログラム２２３がＣＰＵ２１０により実行されて実現されるものである。
【０１２６】
さらに、上記第１から第３の実施形態において、取り扱うライトデータの単位はブロック単位でもファイル単位のいずれの単位を用いてもよい。
【０１２７】
さらに、上記各実施形態では本発明のストレージシステムをディスクアレイ２００に適用した場合で説明したが、これに限られるものではなく、広くストレージシステムに適用できるものである。
【０１２８】
また、上記実施の形態では本発明を、ホスト１００と、この１００から受信するデータを格納する複数のディスク２９１〜２９８及びその複数のディスク２９１〜２９８から構成される複数の論理ユニット２８１〜２８３を有するディスクアレイ２００とを含むストレージシステム１であって、ディスクアレイ２００は、複数の論理ユニット２８１〜２８３を用いて構成されるＲＡＩＤグループ２７１，２７２及びそのＲＡＩＤグループ２７１，２７２が起動中か否かを少なくとも含むグループ情報を格納する省電力グループ管理テーブル２２２と、ＲＡＩＤグループに含まれる論理ユニッ２８１〜２８３トに対応するディスクク２９１〜２９８の電源をＯＮ／ＯＦＦするディスクアレイコントローラ２４０と、複数のディスク２９１〜２９８に格納されるデータの格納位置と対応する論理ユニット２８１〜２８３の論理ユニット番号（ＬＵ）、データのビット列を代表するハッシュ値及び論理ユニット２８１〜２８３と対応するホスト１００が指定するホスト側指定番号を含む管理情報を格納する重複データ管理テーブル２２４とを含み、ホスト１００からデータを受信すると、そのデータのビット列を代表する値を算出するステップ（Ｓ１００１）と、この算出されたハッシュ値と同一のハッシュ値が重複データ管理テーブル２２４に格納されているか否かを判断するステップと（Ｓ１００２）、この判断するステップで同一のハッシュ値が格納されていないと判断した場合は受信したデータを重複データ管理テーブル２２４に格納するとともに省電力グループ管理テーブル２２２に基づいて起動しているグループを構成する論理ユニット番号と対応するディスク２９１〜２９８にデータを格納する第１のステップと（Ｓ１００３，Ｓ１００４）、判断するステップで同一のハッシュ値が格納されていると判断した場合は受信したデータを省電力グループ管理テーブル２２２で管理されるグループ情報及び重複データ管理テーブル２２４で管理される管理情報に基づいて、ディスク２９１〜２９８に格納する第２のステップと（Ｓ１００５）を有するものに適用した場合ついて説明したが、これに限るものでない。
【０１２９】
また、ディスクアレイ２００は、データをディスク２９１〜２９８に仮格納する論理ユニット番号及びデータのビット列を代表するハッシュ値を少なくとも含む未比較データ情報を格納する重複未比較データ管理テーブル２２５を備え、第２のステップは、受信したデータのビット列を代表するハッシュ値と同一のハッシュ値が前記未比較データ管理テーブルに格納されているか否かを判断する未比較ステップと（Ｓ２００１）、この未比較ステップで同一のハッシュ値が格納されていると判断した場合は、省電力グループ管理テーブル２２２に基づいて起動しているグループを構成する論理ユニット番号と対応するディスク２９１〜２９８に受信データを格納するとともに受信データを格納するディスク２９１〜２９８と対応する論理ユニット番号及び受信したデータのビット列を代表するハッシュ値を重複未比較データ管理テーブルに格納する未比較データを処理するステップと（Ｓ２００３，Ｓ２００４）、未比較ステップで同一のハッシュ値が格納されていないと判断した場合は、データを重複して格納すること除去するステップ（Ｓ２００２）を含む場合について説明したいが、これに限るものではない。
【０１３０】
さらに、除去するステップは、受信したデータのビット列を代表するハッシュ値と同一のハッシュ値を持つデータが格納されているディスク２９１〜２９８が起動しているか否かを省電力グループ管理テーブル２２２に基づいて判断する状態を判断するステップと（Ｓ３００１）、この状態を判断するステップでディスク２９１〜２９８が起動中であると判断した場合は、ディスク２９１〜２９８からハッシュ値と対応するデータを読み出し、その読み出したデータと受信したデータとが一致するか否かをデータ判断するステップと（Ｓ３００５）、このデータ判断するステップでデータが一致すると判断した場合は、重複データ管理テーブル２２４の読み出したデータの論理ユニット番号と対応させて受信したデータのホスト１００が指定するホスト側指定番号を格納する第３のステップと（Ｓ３００６）、データ判断するステップでデータが一致しないと判断した場合は、読み出したＲＡＩＤグループと対応するディスク２９１〜２９８に受信したデータを格納するとともに受信データの管理情報を重複データ管理テーブル２２４に格納する第４のステップ（Ｓ３００７，Ｓ３００８）を含む場合について説明したが、これに限るものではない。
【０１３１】
さらに、除去するステップは、状態を判断するステップでディスク２９１〜２９８が起動中でないと判断した場合は、省電力グループ管理テーブル２２２で管理されるＲＡＩＤグループの起動ができるか否かを判断する起動を判断するステップ（Ｓ３００２）を含み、起動を判断するステップでＲＡＩＤグループの起動ができると判断した場合にディスクアレイコントローラ２４０他のＲＡＩＤグループと対応するディスク２９１〜２９８の電源をＯＮし、ディスク２９１〜２９８の電源をＯＮした場合に、データ判断するステップはデータ一致か否かの判断を行なう場合について説明したが、これに限るものではない。
【０１３２】
さらに、除去するステップは、起動を判断するステップでＲＡＩＤグループの起動ができないと判断した場合は、起動しているＲＡＩＤグループと対応するディスク２９１〜２９８に受信したデータを格納するとともに受信データの管理情報を重複データ管理テーブルに格納する第５のステップ（Ｓ３００３，Ｓ３００４）を含む場合について説明したが、これに限るものではない。
【０１３３】
ディスクアレイ２００は、データのビット列を代表するハッシュ値、起動候補のＲＡＩＤグループ及びハッシュ値のカウント数を含む起動候補情報を格納する起動候補省電力グループテーブル２２７を備え、重複未比較データ管理テーブル２２５に未比較データ情報が格納されている場合に、ハッシュ値が同一なデータを同一のＲＡＩグループとなるように再配置する最適化処理を行うステップ（Ｓ４００１からＳ４００８）を有する場合について説明したが、これに限るものではない。
【産業上の利用可能性】
【０１３４】
本発明は、ストレージシステム及びストレージシステムの消費電力低減方法に広く適用することができる。
【図面の簡単な説明】
【０１３５】
【図１】本発明の第１の実施形態に係わるストレージシステムの構成を示す図である。
【図２】同実施形態に係わる省電力管理テーブルを示す図である。
【図３】同実施形態に係わる重複データ管理テーブルを示す図である。
【図４】同実施形態に係わるデータプール管理テーブルを示す図である。
【図５】同実施形態に係わる重複未比較データ管理テーブルを示す図である。
【図６】同実施形態に係わるライト処理を示すフローチャートである。
【図７】同実施形態に係わる重複除去の判断処理を示すフローチャートである。
【図８】同実施形態に係わる重複除去の実施処理を示すフローチャートである。
【図９】同実施形態に係わるデータ最適化処理の一例を示すフローチャートである。
【図１０】同実施形態に係わるストレージシステムの構成の変形例を示す図である。
【図１１】本発明の第２の実施形態に係わる起動候補省電力グループ管理テーブルを示す図である。
【図１２】本発明の第３の実施形態に係わる重複データ管理テーブルを示す図である。
【図１３】同実施形態に係わる重複未比較データ管理テーブルを示す図である。
【図１４】同実施形態に係わるデータ最適化処理の一例を示すフローチャートである。
【符号の説明】
【０１３６】
１，２…ストレージシステム、１００…ホスト、２００…ディスクアレイ、３００…管理サーバ、２１０…ＣＰＵ、２２０…メモリ、２２１…省電力グループ制御プログラム、２２２…省電力グループ管理テーブル、２２３…データ重複除去プログラム、２２４，２２８…重複データ管理テーブル、２２５，２２９…重複未比較データ管理テーブル、２２６…データプール管理テーブル、２２７…起動候補省電力グループ管理テーブル、２４０…ディスクアレイコントローラ、２７１…ＲＡＩＤグループ、２８１〜２８３…論理ユニット、２９１〜２９８…ディスク、４０１…電力制御サーバ 
【図１】
0005060876.tif 000002
【図２】
0005060876.tif 000003
【図３】
0005060876.tif 000004
【図４】
0005060876.tif 000005
【図５】
0005060876.tif 000006
【図６】
0005060876.tif 000007
【図７】
0005060876.tif 000008
【図８】
0005060876.tif 000009
【図９】
0005060876.tif 000010
【図１０】
0005060876.tif 000011
【図１１】
0005060876.tif 000012
【図１２】
0005060876.tif 000013
【図１３】
0005060876.tif 000014
【図１４】
0005060876.tif 000015