説明

負荷分散システム

【課題】
本発明の実施例によると、固体メモリ(例えばフラッシュメモリ)を拡張キャッシュ領域として利用するストレージシステムにおける負荷分散の方法を提供する。
【解決手段】
本発明の一例によると、システムは第一ストレージシステムと第二ストレージシステムを有する。第一ストレージシステムは第一ストレージシステムにおける処理の負荷に基づき、作業モードを第一モードから第二モードに変更する。第一モードにおいて、第一ストレージシステムの処理の負荷は第一ストレージシステムによって実行される。第二モードにおいて、第一ストレージシステムの処理の負荷は第一ストレージシステムと第二ストレージシステムによって実行される。

【発明の詳細な説明】
【技術分野】
【0001】
0001 本発明はストレージシステムに関し、特に高性能メディア(例えばフラッシュメモリ)を使用したストレージシステム間の負荷分散に関するものである。
【背景技術】
【0002】
0002 従来技術によると、各ストレージシステムはそのピークの作業負荷に対応するよう設計されている。近年、ストレージシステムの使用効率およびコスト低減に関する利用者の要求に応えるために、記憶領域プール等の仮想化技術が使われている。フラッシュメモリなどの高性能媒体をより効率よく使用するという技術傾向がある。長期にわたるストレージシステムの作業負荷のバランスを保持する仮想化技術がある。その一例は、自動化された媒体間のページ毎の階層化(例えばフラッシュメモリ、SAS、SATAなど)である。同時に、作業負荷の短期間の変動(急増)に対応し、複数のストレージシステム間の利用性を向上することが望まれる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
0002 ストレージシステム間の作業負荷のバランスをとっても、作業負荷の突然または周期的に発生する短時間での急増の問題に対処することはできない。一つの解決法は、フラッシュメモリをストレージシステムまたは装置における二次キャッシュ(書き込みバッファ)領域として利用することである。ストレージシステムにとって、上述のようにフラッシュメモリを追加することは効率的ではない。なぜならば、フラッシュメモリは複数のストレージシステム間で共有されないからである。更に、どのストレージシステムが追加された記憶領域(例えば、二次キャッシュとしてのフラッシュメモリ)を受領すべきか、またどれほどの量の記憶領域が追加されるべきかを決めるのは困難である。装置において、フラッシュメモリはホストとストレージシステム間のストレージキャッシュ装置に追加される。このフラッシュメモリを装置に追加する方法によると、ストレージシステム間でストレージキャッシ装置の追加されたフラッシュメモリの共有が可能となるが、その範囲は装置のスケールによって制限される。更に、低いまたは通常の作業負荷(通常状態)の場合には、この方法は効率的でない。
【課題を解決するための手段】
【0004】
0003 固体メモリ(例えばフラッシュメモリ)を拡張キャッシュ領域として使用するストレージシステムにおける負荷分散方法を提供する。システムにおいて、いくつかの装置はプール内に固体メモリ二次キャッシュ特性を有する。これらの装置はFM(フラッシュメモリ)装置から参照可能であり、複数のDKC(ディスクコントローラ)間で共有される。通常の作業負荷の間、各DKCはすべてのI/Oをその内部で処理する。DKCが高作業負荷の場合(例えば、DKC内の第一DRAMキャッシュのダーティデータの量が多くなりすぎると)、DKCは負荷を装置に分散する。高い作業負荷が収まったり低下したりして通常の作業負荷になった場合、DKCは負荷を装置に分散することを止める。FM装置を複数のストレージシステム間で共有することにより、(i)高性能記憶領域の利用効率が向上する(ストレージシステムの高作業負荷のタイミングが異なる)、(ii)高性能の記憶領域の容量利用効率が向上する(RAIDパリティーデータやスペアディスクなどの非ユーザ容量を最小化することができる)、そして(iii)性能を向上するような設計が容易となる(ユーザは単にプールに装置を加えるだけでよい)。
【0005】
0005 本発明によると、システムは第一ストレージシステムと、第二ストレージシステムを有する。前記第一ストレージシステムは、該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更する。ここで前記第一モードに基づく前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムによって実行される。前記第二モードに基づく前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムおよび前記第二ストレージシステムによって実行される。
【0006】
0006 ある実施例によると、システムにおいて、前記第一モードは通常モードであり、前記第二モードは高作業負荷モードであり、前記第一ストレージシステムは、第一ストレージデバイスによって提供される一次キャッシュ領域と、前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは、各ストレージシステムの二次キャッシュ領域ではなく、一次キャッシュ領域を介して行われ、前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが前記第一ストレージシステムの二次キャッシュ領域を介してアクセスされる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される。
【0007】
0007 具体的な実施例によると、前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記第一ストレージシステムの前記作業モードは高作業負荷モードから通常モードに変更される。前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記二次キャッシュ領域は前記第二ストレージシステムの第二ストレージデバイスによって提供される。
【0008】
0008 ある実施例によると、前記第二ストレージシステムは、前記第一ストレージシステム内の記憶領域より高い性能を有する記憶領域を有する装置であり、前記第一モードは通常モードであり、前記第二モードは高負荷モードであり、通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは装置を介さずに直接行われ、前記第一ストレージシステムが一次キャッシュ領域に有する一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが高作業負荷モードの装置を介してアクセスされる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される。
【0009】
0009 具体的な実施例によると、前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記作業モードは高作業負荷モードから通常モードに変更される。前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスおよび装置内の第二ストレージデバイスによって提供される。前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、装置は前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、高作業負荷モードの間、前記第一ストレージシステムへのI/Oアクセスは前記二次キャッシュ領域を介して行われる。前記一次キャッシュ領域は前記第一ストレージシステムと前記装置の間で分けられる論理ボリュームによって提供され、該論理ボリュームは前記第一ストレージシステムと前記装置によって提供されるチャンクを含む。前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記装置は高階層常駐領域を提供し、前記高作業負荷モードにおいて、前記第一ストレージシステムへのI/Oアクセスは、前記高階層常駐領域へのアクセスを通じて行われる。前記一次キャッシュ領域は前記第一ストレージシステムと前記装置の間で分けられる第一論理ボリュームと、第二論理ボリュームによって提供され、該第一論理ボリュームは前記第一ストレージシステムと前記装置によって提供されるチャンクを含み、第二論理ボリュームは装置によって提供される。
【0010】
0010 本発明の他の特徴によると、第一ストレージシステムであって、プロセッサと、メモリと、複数のストレージデバイスと、該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更するよう構成されたモード作業モジュールとを有する。前記第一ストレージシステムにおける処理の負荷は、第一モードに設定された前記第一ストレージシステムによって実行される。前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムおよび前記第二モードに設定された第二ストレージシステムによって実行される。
【0011】
0011 ある実施例によると、前記第一モードは通常モードであって、前記第二モードは高作業負荷モードであり、前記第一ストレージシステムは、第一ストレージデバイスによって提供される一次キャッシュ領域と、前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは、各ストレージシステムの二次キャッシュ領域ではなく、一次キャッシュ領域を介して行われ、前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが前記第一ストレージシステムの二次キャッシュ領域を介して行われる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される。前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記第一ストレージシステムの前記作業モードは高作業負荷モードから通常モードに変更される。前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記二次キャッシュ領域は前記第二ストレージシステムの第二ストレージデバイスによって提供される。
【0012】
0012 本発明はまた、第一ストレージシステムと第二ストレージシステムを含むシステムにおけるI/O(入力/出力)方法を提供する。その方法は該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更するステップを有する。ここで前記第一モードに基づく前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムによって実行される。前記第二モードに基づく前記第一ストレージシステムにおける処理の負荷を、前記第一ストレージシステムおよび前記第二ストレージシステムによって実行する。
【0013】
0013 上述した本発明の特徴および効果、またその他の特徴や効果は、後述する本発明の具体的な実施例にかかる詳細な説明に基づいて当業者に明らかとなろう。
【発明の効果】
【0014】
0004 本発明の負荷分散技術は、高性能メディア(フラッシュメモリ)の利用効率を向上する目的で利用可能であり、フラッシュメモリデバイスのみならず他の媒体においても、一次的/定期的な高作業負荷に対応してストレージシステム間の作業負荷をバランスさせることができ、性能の観点からシステム設計を容易にすることができ、物理ストレージシステムの性能の向上を容易にすることができ、高性能ストレージシステムを低性能ストレージシステムに適用することができる。
【図面の簡単な説明】
【0015】
【図1】0014 図1は、本発明の方法および装置を適用可能な、第一実施例にかかる情報システムのハードウェア構成に係る例を示す図である。
【図2】0015 図2は、第一実施例に係る図1の情報システムの物理的なシステム構成の更なる詳細を示す図である。
【図3】0016 図3は、第一実施例に係る図1の構成に本発明の論理構成を適用した例を示す図である。
【図4】0017 図4は、図2のストレージシステムにおけるメモリの例を示す図である。
【図5a】0018 図5aは、LUおよびLDEVマッピングテーブルの例を示す図である。
【図5b】0019 図5bは、LDEVおよびストレージプールマッピングテーブルの例を示す図である。
【図5c】0020 図5cは、プールチャンクおよび階層マッピングテーブルの例を示す図である。
【図5d】0021 図5dは、プール―階層情報テーブルの例を示す図である。
【図5e】0022 図5eは、階層チャンクおよびRAIDグループマッピングテーブルを示す図である。
【図5f】0023 図5fは、RAIDグループ情報テーブルの例を示す図である。
【図5g】0024 図5gは、物理デバイス(HDD)の情報テーブルの例を示す図である。
【図5h】0025 図5hは、DRAM情報テーブルの例を示す図である。
【図5i】0026 図5iは、第一実施例に係る二次キャッシュ領域情報テーブルの例を示す図である。
【図5j】0027 図5jは、外部デバイス情報テーブルの例を示す図である。
【図6a】0028 図6aは、キャッシュディレクトリ管理情報テーブルの例を示す図である。
【図6b】0029 図6bは、クリーンキューLRU(Least Recently Used:最も長い時間使われていない)管理情報の例を示す図である。
【図6c】0029a 図6cは、フリーキュー管理情報の例を示す図である。
【図7】0030 図7は、第一実施例に係るキャッシュ利用情報テーブルの例を示す図である。
【図8】0031 図8は、図2のFM装置内のメモリの例を示す図である。
【図9】0032 図9は、図2の管理コンピュータ内のメモリの例を示す図である。
【図10】0033 図10は、FM装置の作業負荷情報テーブルの例を示す図である。
【図11】0034 図11は、第一実施例に係るモード変更処理のフロー例を示す図である。
【図12a】0035 図12aは、第一実施例に係る分散/ゴーイングバックモードにおけるホスト読み出しI/O処理のフロー例を示す図である。
【図12b】0036 図12bは、第一実施例に係る分散/ゴーイングバックモードにおけるホスト書き込みI/O処理のフロー例を示す図である。
【図13a】0037 図13aは、第一実施例に係る分散モードにおける一次キャッシュから二次キャッシュへの非同期キャッシュ転送のフロー例を示す図である。
【図13b】0038 図13bは、第一実施例に係る分散およびゴーイングバックモードにおける二次キャッシュから一次キャッシュへの非同期データ転送のフロー例を示す図である。
【図14】0039 図14は、第二実施例に係る情報システムのハードウェア構成の例を示す図である。
【図15】0040 図15は、第二実施例に係る図14の情報システムの物理的なシステム構成の詳細を示す図である。
【図16】0041 図16は、第三実施例に係る情報システムのハードウェア構成の例を示す図である。
【図17】0042 図17は、第四実施例係る情報システムのハードウェア構成の例を示す図である。
【図18a】0043 図18aは、電源ユニット障害に起因するモード遷移のフロー例を示す図である。
【図18b】0044 図18bは、DRAM障害に起因するモード遷移のフロー例を示す図である。
【図18c】0045 図18cは、HDD障害に起因するモード遷移のフロー例を示す図である。
【図18d】0046 図18dは、CPU障害に起因するモード遷移のフロー例を示す図である。
【図19】0047 図19は、二次キャッシュを埋めるフロー例を示す図である。
【図20】0048 図20は、二次キャッシュを割り当てるフロー例を示す図である。
【図21】0049 図21は、第二実施例に係る本発明の論理構成の例を示す図である。
【図22】0050 図22は、第二実施例に係る二次キャッシュ領域情報テーブルの例を示す図である。
【図23】0051 図23は、キャッシュ利用情報テーブルの例を示す図である。
【図24】0052 図24は、第二実施例に係るモード遷移処理のフロー例を示す図である。
【図25】0053 図25は、第二実施例に係る非同期キャッシュ転送処理のフロー例を示す図である。
【図26】0054 図26は、第三実施例に係る本発明の論理構成例を示す図である。
【図27】0055 図27は、第三実施例に係る本発明の二次キャッシュ領域情報テーブルの例を示す図である。
【図28】0056 図28は、第三実施例に係るキャッシュ利用情報テーブルの例を示す図である。
【図29a】0057 図29aは、第三実施例に係る分散/ゴーイングバックモードにおけるホスト読み出しI/O処理のフロー例を示す図である。
【図29b】0058 図29bは、第三実施例に係る分散/ゴーイングバックモードにおけるホスト書き込みI/O処理のフロー例を示す図である。
【図30】0059 図30は、第三実施例に係る分散/ゴーイングバックモードにおける外部一次キャッシュから常駐領域への非同期データ転送プロセスのフロー例を示す図である。
【図31】0060 図31は、第四実施例に係る本発明の論理構成例を示す図である。
【図32】0061 図32は、第四実施例に係るモード遷移プロセスのフロー例を示す図である。
【図33a】0062 図33aは、第四実施例に係る通常モードから分散モードへのパススイッチング処理のフロー例を示す図である。
【図33b】0063 図33bは、第四実施例に係る分散モード(ゴーイングバックモード)から通常モードへのスイッチング処理のフロー例を示す図である。
【図34a】0064 図34aは、第四実施例に係るFM装置の分散モードにおける一次キャッシュから二次キャッシュへの非同期キャッシュ転送のフロー例を示す図である。
【図34b】0065 図34bは、第四実施例に係るFM装置の分散モードにおけるホスト読み出しI/O処理のフロー例を示す図である。
【図34c】0066 図34cは、第四実施例に係るFM装置のゴーイングバックモードにおけるホスト書き込みI/O処理の処理パターンの例を示す図である。
【図35】0067 図35は、第五実施例に係る本発明の論理構成例を示す図である。
【図36】0068 図36は、第五実施例に係る、複数のストレージシステムと複数のFM装置間で分散されるチャンクの情報テーブルの例を示す図である。
【図37】0069 図37は、第五実施例に係る、チャンクが複数のストレージシステム間に分散される状態においてのホスト読み出しI/O処理のフロー例を示す図である。
【図38】0070 図38は、第六実施例に係る論理構成の例を示す図である。
【図39】0071 図39は、第六実施例に係る管理コンピュータのフロー例を示す図である。
【図40】0072 図40は、第六実施例に係るストレージシステムにおける外部FM装置から内部デバイスへのチャンク移動プロセスのフロー例を示す図である。
【図41】0073 図41は、第六実施例に係るストレージシステムの内部デバイスから外部FM装置へのチャンク移動プロセスのフロー例を示す図である。
【図42】0074 図42は、第七実施例に係る本発明の論理構成例を示す図である。
【図43】0075 図43は、第七実施例に係る、管理コンピュータにおける作業負荷の分散およびボリューム移動プロセスのフロー例を示す図である。
【図44a】0076 図44aは、第七実施例に係るストレージシステムからFM装置へのボリューム移動処理のフロー例を示す図である。
【図44b】0077 図44bは、第七実施例に係るFM装置からストレージシステムへのボリューム移動処理のフロー例を示す図である。
【図45a】0078 図45aは、第八実施例に係るLDEVグループの情報テーブルおよび分散方法の例を示す図である。
【図45b】0079 図45bは、第八実施例に係るLDEVとLDEVグループのマッピング例を示す図である。
【図46】0080 図46は、第九実施例に係る予約情報テーブルの例を示す図である。
【図47】0081 図47は、第十実施例に係る本発明の論理構成例を示す図である。
【図48】0082 図48は、第十実施例に係るFM装置の割り当て情報の例を示す図である。
【図49】0083 図49は、第十実施例に係るFM装置領域の割り当ておよび解放処理のフロー例を示す図である。
【図50】0084 図50は、本発明の概念を示す図である。
【図51】0085 図51は、第七実施例に係るFM装置内のLDEVの情報テーブルの例を示す図である。
【図52】0086 図52は、FM措置内のLDEVチャンクの情報テーブルの例を示す図である。
【発明を実施するための形態】
【0016】
0087 以下の本発明についての詳細な説明では、開示の一部を成すとともに本発明を実施する例示的な実施形態の実例として示される添付図面を参照するが、本発明は図面の内容に限定されるものではない。図面において、類似する数字は複数の図面においてほぼ同様の構成要素を示すものである。また、留意すべき点として、詳細な説明では、以下の説明および図面に示される通り様々な実施の形態を示すが、本発明は本明細書において説明されかつ示される実施形態に限定されず、当業者が知っているであろう又は知るようになり得るその他の実施形態をも含む。本明細書における「一実施形態」、「本実施形態」、又は「上述の実施形態」の文言は、ある実施形態に関連して説明される特定の特性、構造又は特徴が、本発明の少なくとも一実施形態に含まれることを意味し、本明細書の様々な箇所において上記文言が使用されていても、必ずしもすべてが同一の実施形態を言及するものではない。更に、以下の詳細な説明において、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。ただし、本発明を実施するためにこれらの具体的かつ詳細な内容すべてが必要なわけではないことは、当業者にとって明らかであろう。状況によっては、曖昧な記載を避けるために、周知の構造、材料、回路、プロセス及びインタフェースの詳細については説明しておらず、かつ/又はブロック図において図示していない場合もある。
【0017】
0088 更に、以下の詳細な説明の一部は、コンピュータ内のオペレーションのアルゴリズムおよび記号表現で示されている。これらのアルゴリズム記述及び記号表現は、データ処理分野の当業者がその新しいアイディアの本質を最も効果的に他の当業者に伝えるために使用する手段である。アルゴリズムとは、望ましい最終状態又は結果へと導く一連の定義されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための相応量の物理的操作を必要とする。必ずしもそうとは限らないが、通常はかかる数量は、格納、転送、組み合わせ、比較その他の操作が可能な電気もしくは磁気信号又は命令の形態を取る。主に一般的な使用のために、上記の信号をビット、値、記号、文字、用語、数字、命令等として言及することが時として便利である。但し、上記の及び類似の用語すべてが、適切な物理数量に関連付けられるものであり、かつ当該数量に適用される単に便利なラベルであることに留意すべきである。別段の記載がない限り、以下の解説から明らかなように、当然のことながら説明全体を通して、「処理」、「演算」、「計算」、「判断」、「表示」等の用語を用いた説明は、コンピュータシステムのレジスタ及びメモリもしくはレジスタ又はその他の情報記憶、送信もしくは表示装置の中の物理的数量として同等にあらわされるその他のデータに操作しかつ変換する、コンピュータシステム又はその他の情報処理装置の動作またはプロセスを含み得る。
【0018】
0089 本発明は、本明細書における操作を実施する装置にも関する。この装置は、必要とされる目的のために特別に構築してもよく、又は一つ以上のコンピュータプログラムによって選択的に起動又は再構築された一つ以上の汎用コンピュータを含み得る。当該コンピュータプログラムは、光ディスク、磁気ディスク、読取専用記憶措置(ROM)、ランダムアクセスメモリ(RAM)、ソリッドステート装置及びドライブ、又は電子情報の格納に適したその他の種類の媒体等(但し、これらに限定されない)のコンピュータ読取可能記憶媒体に格納され得る。本明細書において提示するアルゴリズム及び態様は、特定のコンピュータ又はその他の装置とは本質的に関係していない。様々な汎用システムを、本明細書の教示に従ってプログラム及びモジュールと共に使用してもよく、又は望ましい方法を実施するためにより特化した装置を構築した方がよい場合も有り得る。更に本発明は、特定のプログラミング言語を参照して説明されてはいない。当然のことながら、本明細書に記載されている通りに本発明の教示内容を実施するために、様々なプログラミング言語を使用してもよい。プログラミング言語の命令は、一つ以上の処理装置、例えば中央処理装置(CPU)、プロセッサ、又はコントローラによって実行され得る。
【0019】
0090 本発明の実施例は、以下に詳細に示す通り、固体メモリ(例えばフラッシュメモリ)を拡張キャッシュ領域として使用するストレージシステムにおいて負荷分散を行う装置、方法およびコンピュータプログラムを提供する。
【0020】
0091 図50は、本発明の概念を示す。物理記憶領域プールは一つ以上のストレージシステムからなる。ホストは複数のストレージシステムを、記憶領域プール(一つ以上の物理ストレージシステム)からなる一つの仮想ストレージシステムとして認識する。つまり、ホストはストレージシステム間の稼働状態でのデータ移動技術を利用することにより、物理ストレージシステム構成に変更があった場合でも、サーバマネジャーによりシステムを停止して再構成する必要がない。仮想ストレージシステムは、処理領域、キャッシュ領域および容量領域といった記憶領域を有する。記憶領域プールにFM(高性能)装置を導入することは、仮想ストレージシステムに拡張(第二の)キャッシュや高階層容量といったより高い性能を有する領域を導入することを意味する。装置の記憶領域はプール内の物理ストレージシステム間で共有される。単に装置を導入することにより、仮想ストレージシステム(つまり物理ストレージシステム)の性能を向上させることができる。
【0021】
0092 第一実施例
【0022】
0093 図1は、本発明の方法および装置が適用される情報システムのハードウェア構成例を示す。情報システムは複数のストレージシステム120およびフラッシュメモリ(FM)デバイスのような高性能メディアを有するFM装置110を含む。装置110はストレージシステム120によって共有して使用される。管理コンピュータ140は各ストレージシステム120およびFM装置110から送られる作業負荷情報をまとめて格納する。通常の(低い)作業負荷では、各ストレージシステム120は自システム内のホスト130からのI/Oを処理する。ストレージシステム120に高作業負荷が発生している場合(ストレージシステム120のDRAMキャッシュダーティデータの量/率が高くなりすぎた場合)、ストレージシステム120は装置110に負荷を分散する。高い作業負荷が落ち着くかまたは低下した場合、ストレージシステム120は装置110に対する負荷の分散を終了する。
【0023】
0094 図2は、図1に示す情報システムの物理システム構成の詳細を示す。データ転送ネットワークとしてSAN(Storage Area Network)250が使用され、管理ネットワークとしてLAN(Local Area Network)260が使用される。システムは複数のFM装置110を含むことができる。装置110のホストインターフェース111もまた装置110とのデータの送受信に使われる。インタフェース111を分割することも可能である。メモリ113はプログラムや情報テーブルなどを格納する。装置110は更にCPU112、DRAMキャッシュ114、FM IF(インタフェース)115、FMデバイス116、インターフェースネットワーク117(115に含むこともできる)、管理コンピュータ140とのインタフェースとのための管理IF118、および内部ネットワーク119を有する。ストレージシステム120は、ホストとのインタフェースを実現するホストIF121と、CPU122と、メモリ123と、DRAMキャッシュ124と、HDD IF125と、HDD126と、インターフェースネットワーク127(125に含むこともできる)と、管理IF128と、内部ネットワーク129とを有する。HDD126は、異なる容量、回転数その他の異なる特徴を有するFC/SAS/SATAといった複数のタイプのハードディスクドライブを含むことができる。管理コンピュータ140は、ネットワークインターフェースと、CPUと、プログラム等を格納するメモリとを有する。
【0024】
0095 図3は、図1の構成に適用される本発明の論理構成例を示す。ストレージシステム120はHDD126のストレージプール323にマッピングされたボリューム(論理デバイスLDEV)322の論理ユニット(LU)321を有する。ホスト130はLU321を介してストレージシステムのボリューム322のデータにアクセスする。ホスト130は冗長性のために複数のパスに接続することができる。LDEV322のデータは、RAID、ページベース分散型RAID、シンプロビジョニングおよび動的階層化などの技術を使って、ストレージプール(物理ストレージデバイス)323にマッピングされる。ストレージプール323は(キャッシュでない)常駐記憶領域として使用される。一つのストレージシステムは複数のストレージプールを有することができる。ストレージプールはまた外部ストレージボリューム(例えば低コストストレージ)を含むことができる。ストレージプールデータは一次キャッシュ領域324および二次キャッシュ領域325に読み出し/書き込みキャッシュすることができる。
【0025】
0096 一次キャッシュ領域324はDRAMキャッシュ124内のDRAMからなり、二次キャッシュ領域325は外部デバイス326からなる。各外部デバイス326はFM装置110のボリューム(LDEV)312を仮想化する仮想デバイスである。外部デバイス326は冗長化のために複数のパスを介してFM装置110に接続することができる。FM装置110はFMデバイス116からなるストレージプール313を含む。ストレージプールデータはDRAMキャッシュ114のDRAMからなる一次キャッシュ領域314に読み出し/書き込みキャッシュすることができる。
【0026】
0097 図4は、図2のストレージシステム120内のメモリ123の例を示す。メモリ123は構成情報401(図5)、キャッシュ制御情報402(図6)および作業負荷情報403(図7)からなる。ストレージシステム120はコマンド処理プログラム411を使ってホスト130からの読み出し/書き込みI/Oを処理し、RAID制御プログラム415を使ってパリティまたはRAID制御を計算し、キャッシュ制御プログラム412を使ってキャッシュ制御を行い、内部デバイスI/O制御プログラム413を使って内部物理デバイス(HDD)のストレージとデータを送受信し、外部デバイスI/O制御プログラム414を使って外部ストレージシステム/FM装置とデータを送受信し、通信制御プログラム416を使って他のストレージシステム、FM装置、管理コンピュータおよびホスト間の管理情報/コマンドを交換する。ストレージシステム120は、例えばリモートコピー、ローカルコピー、階層移動その他の機能的プログラムおよびその情報を有することができる。
【0027】
0098 ストレージシステムの構成情報を提供する様々なテーブル構造を図5に示す。図5aは、ポートID、LUN(Logical Unit Number)およびLDEV IDの欄を有するLUとLDEVマッピングテーブル401−1の例を示す。図5bは、LDEV ID、LDEVチャンクID、プールIDおよびプールチャンクIDの欄を有するLDEVとストレージプールマッピングテーブル401−2の例を示す。図5cは、プールID、プールチャンクID、階層IDおよび階層オフセットの欄を有するプールチャンクと階層マッピングテーブル401−3の例を示す。図5dはプールID、階層ID、タイプおよびRAIDレベルの欄を有するプール―階層情報テーブル401−4の例を示す。図5eは、プールID,階層ID,階層チャンクID、RAIDグループIDおよびRAIDグループオフセットスロット#の欄を有する階層チャンクとRAIDグループマッピングテーブル401−5の例を示す。図5fはRAIDグループIDと物理デバイスIDの欄を有するRAIDグループ情報テーブル401−6の例を示す。図5gは物理デバイスID、タイプ、容量およびRPMの欄を有する物理デバイス(HDD)情報テーブル401−7の例を示す。図5hはDRAM ID、サイズおよび電源の欄を有するDRAM情報テーブル401−8の例を示す。図5iは、二次キャッシュメモリID、タイプおよびデバイスIDの欄を有する二次キャッシュ領域情報テーブル401−9の例を示す。図5jは、デバイスID,装置ID、装置LDEV ID、イニシエータポートID、ターゲットポートIDおよびターゲットLUNの欄を有する外部デバイス情報テーブル401−10の例を示す。
【0028】
0099 キャッシュ制御情報を図6に示す。キャッシュ制御情報の例は、米国特許第7,613,877に開示されており、その内容を参照することによりここに援用する。図6aはキャッシュディレクトリ管理情報テーブル402−1の例を示す。ハッシュテーブル801はLDEV#+スロット#から同一ハッシュ値を有する複数のポインタをリンクする。スロット#はLDEVのアドレスである(1スロットは512バイト×N)。セグメントはキャッシュ領域の管理単位である。各一次キャッシュおよび二次キャッシュはセグメントで管理される。本実施例においては、理解を容易にするために、スロット、一次キャッシュセグメントおよび二次キャッシュセグメントは同じサイズである。キャッシュスロット属性はダーティ/クリーン/フリーである。各一次キャッシュおよび二次キャッシュはキャッシュスロット属性を有する。セグメント#は、キャッシュ領域にスロットが割り当てられている場合、キャッシュ領域のアドレスを示す。キャッシュビットマップはセグメントにどのブロック(512バイト)が格納されているかを示す。図6bはクリーンキューLRU(Least Recently Used)管理情報402−2の例を示す。ダーティキューやほかのキューも同様に管理される。各一次キャッシュおよび二次キャッシュはキュー情報を有する。図6cはフリーキュー管理情報402−3の例を示す。各一次キャッシュおよび二次キャッシュはキュー情報を有する。フリーキャッシュ領域をマッピングテーブル(キューされていない)によって管理することができる。
【0029】
0100 図7は、キャッシュ階層、属性、セグメント#(セグメントの量)および割合の欄を有する、作業負荷情報の一タイプとしてのキャッシュ利用情報テーブル403−1の例を示す。この情報はFM装置に対して分散を行うかどうかを判断するために使用する。二次キャッシュのセグメント#(セグメントサイズ)は二次キャッシュ領域に使用される外部デバイスの容量の合計と同じである。二次キャッシュ属性「無効クリーン」および「無効ダーティ」は、二次キャッシュ領域が割り当てられているものの一次キャッシュが最新のダーティデータであることを意味している。二次キャッシュのデータは古いデータである。
【0030】
0101 図8は、図2のFM装置のメモリの例を示す。FM装置110のメモリ113の内容の大部分はストレージシステム120のメモリ123の内容と類似している(801−816は図4の401−416に対応)。図8において、構成情報801は二次キャッシュ情報および外部デバイス情報を含まない。キャッシュ制御情報802は二次キャッシュ情報を含まない。作業負荷情報803は二次キャッシュ情報を含まない。チャンクリクレイムプログラム817は二次キャッシュ領域を解放するために使用される。ストレージシステムは未使用領域をパージするためにFM装置にSCSIライトセイム(0ページリクラメーション)コマンドをFM装置に送る。FM装置は解放された領域をフリー領域とし、他の論理デバイス312に対して割り当て可能とする。
【0031】
0102 図9は、図2の管理コンピュータのメモリの例を示す。管理コンピュータ140のメモリ143の内容は、ストレージシステム構成情報901(図4の401参照)、ストレージシステム作業負荷情報902(図4の403参照)、FM装置構成情報903(図8の801参照)、FM装置作業負荷情報904(図8の803参照)および通信制御プログラム916を含む。管理コンピュータ140は通信制御プログラム916を使って各ストレージシステム120と各FM装置110から構成情報を得る。
【0032】
0103 図10は、キャッシュ階層、属性、セグメント#(セグメントの量)および割合の欄を有するFM装置作業負荷情報テーブル904−1の例を示す。この情報は各FM装置110に対して作成される。テーブル904−1は図7のキャッシュ利用情報テーブル403−1からの情報を含む。テーブル904−1はまた、FMプール利用情報(使用/フリー量/割合)を有する。ストレージシステムが、二次キャッシュ領域として使用するのに十分なフリーFM領域をFM装置が有するかどうかを判断するのに使用される。
【0033】
0104 図11は、モードを変更する処理のフロー図の例を示す。処理には三つのモードがある。通常モードでは(S1101)、ストレージシステムは内部一次キャッシュのみを使用し、外部の二次キャッシュは使用しない。S1102でストレージシステムの作業負荷が高すぎる場合、ストレージシステムプログラムはS1103に進む。S1103においてFM装置の作業負荷が高すぎない場合、プログラムはS1104の分散モードに進む。分散モードの間(S1104)ストレージシステムは内部一次キャッシュだけでなく外部二次キャッシュも使用する。S1105でFM装置の作業負荷が高すぎない場合、プログラムはS1106に進む。その他の場合、プログラムはS1107に進む。S1106において、ストレージシステムの作業負荷が収まった場合、ストレージシステムはS1107のゴーイングバックモードに変更される。その他の場合、ストレージシステムは分散モードS1104に戻る。ゴーイングバックモード(S1107)では、ストレージシステムは内部一次キャッシュだけではなく外部二次キャッシュも使用する。しかしながら、ストレージシステムは、より多くの二次キャッシュを割り当てすることはなく、クリーン属性となった二次キャッシュ領域を解放する。モード変更がS1108で完了すると、ストレージシステムは通常モードに戻る(S1101)。もしストレージシステムの作業負荷が高すぎる場合、プログラムはS1110に進む。そうでない場合、プログラムはS1108に戻る。FM装置が十分なフリー領域を有する場合、ストレージシステムは分散モードに戻る(S1104)。それ以外の場合、プログラムはS1108に戻る。ストレージシステムにより、作業負荷が高すぎて(S1102)FM装置が高い作業負荷(S1103)で作業していないと判断された場合、モードは通常モード(S1101)から分散モード(S1104)に変更される。もし(i)FM装置が高すぎる作業負荷(S1105)で作業していない場合、または(ii)FM装置が高すぎる作業負荷で作業しているものの、負荷が収まったまたは低下した場合(S1106)、モードは分散モード(S1104)からゴーイングバックモード(S1107)に変更される。ゴーイングバックモードへの変更が完了すると(S1108)、ストレージシステムは通常モード(S1101)に戻る。それ以外の場合、作業負荷がまだ高すぎて(S1109)FM装置が十分なフリー領域を有する場合(S1110)、モードはゴーイングバックモード(S1107)から分散モード(S1104)に変更される。
【0034】
0105 図11においてストレージシステムは、自身およびFM装置の作業負荷情報に基づいて、外部FM装置の二次キャッシュを使うかどうかを判断する。ストレージシステムは管理コンピュータかFM装置自身から管理ネットワークを介してFM装置の作業負荷情報を受け取る。一例によると、ストレージシステムは作業負荷量を確定するために一次キャッシュのダーティ率を利用する。「高すぎる作業負荷」の閾値は、ゆらぎを避けるため、「収まり(収束)」閾値よりも高い。他の例によると、ストレージシステムはFM装置の一次キャッシュダーティ率およびFMプール使用率を利用する。FM装置の一次キャッシュダーティ率が閾値よりも高い場合、またはFM装置のFMプール使用率が閾値よりも高い場合(例えば、フリー率が閾値よりも低い)、ストレージシステムはFM装置内の二次キャッシュの利用を減らし、遅延書き込みレスポンスのような技術を使用して自身のホストからの入力データ量を制限する。作業負荷が高すぎる場合(例えば、ダーティ率が閾値よりも高い場合)、FM装置は書き込みレスポンスを遅延することによりストレージシステムからの書き込みI/Oを制限することができる。
【0035】
0106 図12は、ホストI/O処理の例を示す。具体的には実施例1に基づき、図12aは分散/ゴーイングバックモードの間のホスト読み出しI/O処理のフロー図を示し、図12bは分散/ゴーイングバックモードの間のホスト書き込みI/O処理のフロー図を示す。理解を容易にするために、本実施例においては、図12aにおいてホストI/Oコマンドに含まれるすべてのブロックはすべて同じ属性(ダーティ/クリーン/フリー)を有する。I/O領域が異なる属性を有する場合、ストレージシステムは各フローを使用してデータを組み合わせホストへ転送する。ストレージシステムは内部物理デバイス(常駐領域)から読み出しを行った後、一次キャッシュの属性をクリーンに設定する。ストレージシステムは外部FM装置デバイス(二次キャッシュ)から読み出しを行った後、一次キャッシュの属性をダーティに設定する。二次キャッシュにクリーンヒットがある場合、ストレージシステムは各内部物理領域(常駐領域)か外部FM装置デバイス(二次キャッシュ)から読み出しを行うことができる。
【0036】
0107 図12aによると、ストレージシステムはS1201において読み出しコマンドを受け取る。ストレージシステムはS1202においてキャッシュヒット(データがすでにキャッシュにある)かキャッシュミスかを調べる。S1202−1において、ストレージシステムは一次キャッシュヒットがあるかどうかを決定する。ある場合、ストレージシステムプログラムはS1213へ進む。ない場合、ストレージシステムはデータが二次キャッシュダーティヒットかどうかをS1203で決定する。もしある場合、ストレージシステムはS1208からS1212を実行する。ない場合、ストレージシステムはS1204からS1207を実行する。S1208において、ストレージシステムは一次キャッシュを割り当てる。S1209において、ストレージシステムは装置に読み出しコマンドを送る。S1210において、ストレージシステムは装置からデータを受け取る。S1211において、ストレージシステムは一次キャッシュにデータを格納する。S1212において、ストレージシステムはキャッシュにどのデータセグメントが入っているかに基づき、キャッシュ属性を設定する(図6aおよび6bを参照)。たとえば、LDEV#+SLOT#、一次キャッシュスロット属性および一次キャッシュビットマップが更新される。S1204において、ストレージシステムは一次キャッシュを割り当てる。S1205において、ストレージシステムは物理デバイス(例えばハードディスクデバイス)を読み出す。S1206において、ストレージシステムはデータを一次キャッシュに格納する。S1207において、ストレージシステムはキャッシュ属性を設定する。その後、ストレージシステムはS1213においてホストにデータを転送する。S1214において、ストレージシステムは、MRU(最も最近使用された)およびLRU(最も最近使用されていない)ポインタを主に参照してディレクトリ入力の変更を参照するキューを遷移する。この例では、図6bで新しいディレクトリエントリが作られ、そのうちの一つのディレクトリエントリが図6cで削除される。
【0037】
0108 図12bでは、ストレージシステムはS1221において書き込みコマンドを受け取る。ストレージシステムはS1222においてキャッシュヒットかキャッシュミスかをチェックする。S1223において、ストレージシステムはデータが一次キャッシュヒットかどうかを判断する。ヒットである場合、ストレージシステムプログラムはS1228に進む。ヒットでない場合、ストレージシステムはデータが二次キャッシュヒットかどうかをS1224において判断する。ヒットである場合、ストレージシステムはS1226とS1227を実行する。ヒットでない場合、ストレージシステムはS1225を実行する。S1225において、ストレージシステムは一次キャッシュを割り当てる。S1226において、ストレージシステムは一次キャッシュを割り当てる。S1227において、ストレージシステムはキャッシュ属性を設定する。S1228において、ストレージシステムは一次キャッシュにデータを格納する。S1229において、ストレージシステムはキャッシュ属性を設定する。S1230において、ストレージシステムはレスポンスを返信する。S1231において、ストレージシステムはキューを遷移する。
【0038】
0109 説明を容易にするために、本実施例において、図12bに示すホストI/Oコマンドに含まれるすべてのブロックは同じ属性(ダーティ/クリーン/フリー)を有する。もしI/O領域が異なる属性を含む場合、ストレージシステムはブロック毎に各フローを使用する。二次キャッシュヒットがあった場合、ストレージシステムは二次キャッシュ属性を「無効」に設定する。
【0039】
0110 図13aは、第一実施例において、分散モードの間の一次キャッシュから二次キャッシュへの非同期キャッシュ転送の例を示すフロー図である。物理デバイス(常駐領域)がビジーすぎない場合、ストレージシステムはそこにデステージ(書き込みデータ)を行う。物理デバイスがビジーな場合、ストレージシステムは外部二次キャッシュへ書き込みを行う。二次キャッシュをパージするとき、ストレージシステムはSCSIライトセイム(0ページリクラメーション)コマンドをFM装置に送り、FMプール内の未使用二次キャッシュ領域を解放する。「ゴーイングバックモード」の間、ストレージシステムは一次キャッシュから外部二次キャッシュへデータ転送を行わない。
【0040】
0111 S1301において、ストレージシステムは一次キャッシュのダーティを探す。S1302においてダーティが存在しない場合、ストレージシステムはS1301に戻る。そうでない場合、ストレージシステムはS1303において物理デバイスがビジーかどうかを判断する。ビジーである場合、ストレージシステムはS1304からS1311までを実行する。ビジーでない場合、ストレージシステムはS1312からS1315までを実行する。S1304において、ストレージシステムはデータが二次キャッシュヒットかどうかを判断する。ヒットである場合、ストレージシステムプログラムはS1305をスキップする。ヒットでない場合、ストレージシステムはS1305において二次キャッシュを割り当てる。S1306において、ストレージシステムは装置に書き込みコマンドを送る。S1307において、ストレージシステムは装置からレスポンスを受け取る。S1308において、ストレージシステムは二次キャッシュ属性を設定する。S1309において、ストレージシステムは一次キャッシュをパージする。S1310において、ストレージシステムは一次キャッシュ属性を設定する。S1311において、ストレージシステムはキューを遷移する。この例において、ディレクトリエントリは一次キャッシュのダーティキューにおいて削除され、ディレクトリエントリは一次キャッシュのフリーキューにおいて作成され、ディレクトリエントリは二次キャッシュのダーティキューにおいて作成される。ストレージシステムプログラムはS1301に戻る。S1312において、ストレージシステムは物理デバイスに書き込みを行う。S1313において、ストレージシステムは一次キャッシュおよび二次キャッシュをパージする。S1314において、ストレージシステムは一次キャッシュ属性と二次キャッシュ属性を設定する。S1315において、ストレージシステムはキューを遷移する。この例において、ディレクトリエントリは一次キャッシュのダーティキューにおいて削除され、ディレクトリエントリは二次キャッシュのダーティキューにおいて削除される。
【0041】
0112 図13bは、第一実施例において、分散およびゴーイングバックモードの間の二次キャッシュから一次キャッシュへの非同期データ転送のフローの例を示す。もしゴーイングバックモードにおいて二次キャッシュにダーティが存在しない場合、ストレージシステムはすべての二次キャッシュ領域(無効属性を含む)をパージし、モードを通常モードに変更する。物理デバイス(常駐領域)に対するデータ書き込みと後者のプロセスは非同期に行うことができる。
【0042】
0113 S1321において、ストレージシステムは二次キャッシュのダーティを探す。S1322においてダーティが存在しない場合、ストレージシステムはS1335において処理モードが分散かゴーイングバックかを判断する。分散モードの場合、ストレージシステムプログラムはS1321に戻る。ゴーイングバックモードの場合、ストレージシステムはS1336においてすべての二次キャッシュをパージし、S1337においてモードを通常モードに変更し、処理を終了する。S1322においてダーティが存在する場合、ストレージシステムはS1323において物理デバイスがビジーであるかどうかを判断する。ビジーの場合、ストレージシステムプログラムはS1321に戻る。ビジーでない場合、ストレージシステムはS1324からS1334までを実行する。S1324において、ストレージシステムはデータが一次キャッシュヒットかどうかを判断する。ヒットの場合、ストレージシステムプログラムはS1325にスキップする。ヒットでない場合、ストレージシステムはS1325において一次キャッシュを割り当てる。S1326において、ストレージシステムは装置に読み出しコマンドを送る。S1327において、ストレージシステムは装置からデータを受け取る。S1328において、ストレージシステムは一次キャッシュにデータを格納する。S1329において、ストレージシステムは一次キャッシュ属性を設定する。S1330において、ストレージシステムは二次キャッシュをパージする。S1331において、ストレージシステムは二次キャッシュ属性を設定する。S1332において、ストレージシステムは物理デバイスに書き込みを行う。S1333において、ストレージシステムは一次キャッシュ属性を設定する。S1334において、ストレージシステムはキューを遷移する。この例において、ディレクトリエントリは一次キャッシュのダーティキューにおいて削除され、ディレクトリエントリは一次キャッシュのフリーキューにおいて作成され、ディレクトリエントリは二次キャッシュのダーティキューにおいて削除される。ストレージシステムプログラムはその後S1321に戻る。
【0043】
0114 図18aから18dは、その他の理由によるモード変更を示す。図18aは電源ユニット障害によるモード変更の例を示すフロー図である。処理は通常モードで行われる(S1801)。ストレージシステムの電源ユニットの障害が発生した場合(S1802)、ストレージシステムは冗長性を失ってしまう(クラスターを失う)。非冗長化モードの場合、ストレージシステムはDRAM(揮発性メモリ)のダーティデータを失うことを避けるためにライトスルーモード(キャッシングおよびライティングアフターモードではない)に設定されてもよい。ライトスルーモード(S1803)の場合、HDDレスポンス性能のせいで、ホストに対するレスポンス性能はライトアフターモードよりも低い。本実施例において、ストレージシステムは、電源ユニット障害が発生した場合、装置を使用するモードに変更される。なぜならばFM装置のレスポンス性能はHDDのレスポンス性能よりも良いからである。FM装置はライトアフターモードである。ストレージシステムはホストから書き込みデータを受け取り、一次DRAMキャッシュから二次外部キャッシュに対してライトスルーを行う。ストレージシステムは(DRAM一次キャッシュを介して)非同期的に二次キャッシュをHDDにデステージする。電源ユニットが回復した後(電源の冗長化が戻った後)(S1804)、ストレージシステムはゴーイングバックモードに変更され(S1805)、通常モードに戻る(S1806)。
【0044】
0115 図18bは、DRAM障害に起因するモード変更の例のフロー図を示す。処理は通常モードで行われる(S1821)。DRAM(揮発性メモリ)障害が発生した場合(S1822)、ストレージシステムは一次キャッシュの冗長性を失う可能性がある。その場合、ストレージシステムは電源ユニットの障害に起因して、非冗長化モードであるライトスルーモードになる可能性がある。障害が発生した場合、ストレージシステムはDRAMキャッシュの冗長性をチェックする(S1823)。冗長性を失った場合、ストレージシステムは、図18aの電源ユニット障害のケースと同様、ライトスルー二次キャッシュモードに設定される(S1824)。障害が回復した後(S1825)ストレージシステムはゴーイングバックモードに変更され(S1826)、通常モードに戻る(S1827)。
【0045】
0116 図18cは、HDD障害に起因するモード変更例のフロー図を示す。処理は通常モードで行われる(S1841)。ストレージシステムのHDDに障害が発生した場合(S1842)、ストレージシステムはHDDの冗長性を回復する(RAID再構築)。HDD障害処理の場合、HDDはコレクション読み出し/書き込みおよび再構築処理のために、通常よりもビジーになる。本実施例において、ストレージシステムは、HDDアクセスを減らすHDD障害が発生した場合、装置を利用するモードに変更される。障害HDDと共に冗長化グループ(RAID)を構成するHDDに対してこのモードが適用される。これは障害の起こった冗長化グループに対する分散モードである(S1843)。HDD冗長化が回復した後(S1844)、ストレージシステムはゴーイングバックモードに変更され(S1845)、通常モードに戻る(S1846)。
【0046】
0117 図18dは、CPU障害に起因するモード変更例のフロー図を示す。処理は通常モードで行われる(S1861)。ストレージシステムのCPUに障害が発生すると(S1862)、RAIDパリティ計算やデステージ処理能力が低下するため、DRAMキャッシュ上のダーティデータの量は増える可能性がある。本実施例において、CPU障害が発生した場合、DRAMが高作業負荷になることを防ぐために、ストレージシステムは装置を使用するモードに変更される。これが分散モードである(S1863)。障害が回復した後(S1864)、ストレージシステムはゴーイングバックモードに変更され(S1865)、通常モードに戻る(S1866)。
【0047】
0118 図19は、二次キャッシュを埋める例のフロー図を示す。ストレージシステムはS1901において、セグメントサイズフルヒットがあるかどうか(つまり、セグメントのすべてのデータがキャッシュに存在するかどうか)をチェックする。ホストからの書き込みデータサイズは二次キャッシュ管理ユニット(セグメント)に対して小さいかアライメントを外れている可能性がある。この実施例においては、ストレージシステムはHDDから読み出しを行い、ミスデータを二次キャッシュに入れることができる(S1902)。セグメントを埋めることにより、ホスト読み出し処理の場合、ストレージシステムはHDDから読み出しを行う必要がなく、二次キャッシュのデータと統合することができる(つまりよりよいレスポンス性能を実現できる)。ストレージシステムは二次キャッシュを割り当て(S1903)、そして二次キャッシュに対して書き込みを行う(S1904)。
【0048】
0119 図20は、二次キャッシュの割り当てを行う例のフロー図を示す。この実施例において、ストレージシステムは更新書き込みを受け取った時(二次キャッシュヒット)、新しい二次キャッシュ領域を割り当てることができる。これは性能だけでなくFMの寿命の面からみても好ましい。ランダム書き込みはFMの寿命の面からみてシーケンシャル書き込みよりも好ましくない。ストレージシステムはS2001において、データが二次キャッシュヒットか否かをチェックする。ヒットの場合、ストレージシステムは古い二次キャッシュを無効とし(S2002)その二次キャッシュをパージする(S2003)。ヒットでない場合、ストレージシステムはS2002とS2003をスキップする。その後、ストレージシステムは二次キャッシュを割り当て(S2004)、二次キャッシュに対して書き込みを行う(S2005)。
【0049】
0120 II 第二実施例
【0050】
0121 第二実施例において、ストレージシステムはFM装置を兼ねる。ストレージシステムは自身の内部にFMデバイスを有し、それらを常駐領域及び/または二次キャッシュ領域として使用することができる。作業負荷が高い場合、ストレージシステムは十分な量のクリーンな一次キャッシュ領域および二次キャッシュフリー領域を有する他のストレージシステムに分散する。
【0051】
0122 図14は、第二実施例にかかる情報システムのハードウェア構成例を示す。
【0052】
0123 図15は、第二実施例にかかる図14の情報システムの物理システム構成の詳細を示す。ストレージシステムは自身の内部にFMデバイスを有し、それらを常駐領域及び/または二次キャッシュ領域として使用することができる。
【0053】
0124 図21は、第二実施例にかかる本発明の論理構成例を示す。図3に示す第一実施例との相違点についてのみ説明する。ストレージシステムは内部FMデバイスを有し、それらを常駐領域(ストレージプール)およびまたは二次キャッシュ領域として使用することができる。ストレージシステムは相互にストレージシステムのボリュームを二次キャッシュ領域として仮想化することができる。それらのボリュームはホストからはアクセスされない。
【0054】
0125 図22は、第二実施例にかかる二次キャッシュ領域情報テーブルの例を示す。第二実施例と図5iに示す第一実施例との相違点の一つは、二次キャッシュが外部デバイスと内部デバイスの両方からなることである。
【0055】
0126 図23は、第二実施例にかかるキャッシュ利用情報テーブルの例を示す。図7に示す第一実施例との相違点についてのみ説明する。二次キャッシュは外部デバイスと内部デバイスの両方からなる。複数の外部二次キャッシュは複数の外部デバイスからなる。
【0056】
0127 図24は、第二実施例にかかるモード変更処理のフロー図の例を示す。図11に示す第一実施例との相違点についてのみ説明する。ストレージシステムは、FMおよび内部二次キャッシュ機能を有する場合、通常モードにおいて内部FMデバイスを二次キャッシュとして使用する(S2401)。ストレージシステムが高すぎる作業負荷状態になったとき(内部二次キャッシュのダーティ率が閾値を超えた場合)(S2402)、内部二次キャッシュを使用しつつ、相互にまたは管理コンピュータと通信して、FMデバイスを有し作業負荷を分散するのに十分な性能(容量など)を有する他のストレージシステムを探す(S2403)。S2404において、分散の対象とする他のストレージシステムを選択する。分散モードにおいては(S2405)、ストレージシステムは他のストレージシステムの作業負荷が高すぎないかを判断し(S2406)、該ストレージシステムの作業負荷が収まったかどうかを判断する(S2407)。ゴーイングバックモードでは(S2408)、ストレージシステムは、変更が完了したかどうか(S2409)、作業負荷が高すぎるかどうか(S2410)および他のストレージシステムが十分なフリー領域を有するかどうか(S2411)を判断する。
【0057】
0128 図25は、第二実施例にかかる非同期キャッシュ転送処理のフロー図の例を示す。図13aに示す第一実施例との相違点についてのみ説明する。ストレージシステムは内部FMデバイスを常駐領域として使用することができる。発見された一次キャッシュのダーティデータのチャンクがFMデバイスを常駐領域として割り当てている場合、ストレージシステムは割り当てを行わず、二次キャッシュに書き込みを行う。常駐領域(内部FM)はそれ自身も高い性能を有する。ストレージシステムはヒット/ミスおよび内部か外部二次キャッシュかをチェックし、処理を変更する。ストレージシステムは内部二次キャッシュ領域を外部二次キャッシュ領域に優先して使用する。
【0058】
0129 S2501およびS2502はS1301およびS1302と同じである。S2503において、ストレージシステムは常駐領域がFMであるかどうかを判断する。S2504およびS2505はS1303およびS1304と同じである。S2516からS2519はS1312からS1315と同じである。S2505において、二次キャッシュにおいてデータがヒットしない場合、ストレージシステムプログラムはS2506に進む。そうでない場合、ストレージシステムプログラムは内部キャッシュの場合S2508に、外部キャッシュの場合S2514に進む。S2506において、ストレージシステムは内部二次キャッシュがスペースを有するかどうかを判断する。スペースがある場合、ストレージシステムはS2507において内部二次キャッシュを割り当て、S2508に進む。スペースがない場合、ストレージシステムはS2513において外部二次キャッシュを割り当て、S2514に進む。S2508において、ストレージシステムはデバイスに書き込みを行い、S2509に進む。S2514において、ストレージシステムは書き込みコマンドを送り、S2515でレスポンスを受け取り、S2509に進む。S2509からS2512はS1308からS1311と同じである。
【0059】
0130 III 第三実施例
【0060】
0131 第三実施例において、外部装置は拡張一次キャッシュ領域として使用される。
【0061】
0132 図16は、第三実施例にかかる情報システムのハードウェア構成例を示す。作業負荷が高い場合、ストレージシステムはFM装置を拡張一次キャッシュ領域として使用する。ストレージシステムは受け取った書き込みデータを直接FM装置に転送する(内部一次キャッシュスロー)。
【0062】
0133 図26は、第三実施例にかかる本発明の論理構成例を示す。図3に示す第一実施例との相違点の一つは、図26に示すストレージシステムの一次キャッシュは内部DRAMと外部デバイスからなることである。この実施例において説明される外部一次キャッシュ技術は第一実施例(二次キャッシュとしての外部デバイス)にも第二実施例(内部FMデバイスを常駐および二次キャッシュとして使用し、ストレージシステムは相互に他のストレージシステムの領域を使用する)にも適用可能である。
【0063】
0134 図27は、第三実施例にかかる一次キャッシュ領域情報テーブルの例を示す。図5hに示す第一実施例との相違点についてのみ説明する。一次キャッシュは外部デバイスと内部デバイス(DRAM)の両方からなる。
【0064】
0135 図28は、第三実施例にかかるキャッシュ利用情報テーブルの例を示す。図7に示す第一実施例との相違点についてのみ説明する。一次キャッシュは外部デバイスと内部デバイスの両方からなる。
【0065】
0136 第三実施例にかかるモード変更処理を説明する。図11に示す第一実施例との相違点についてのみ説明する。通常モードにおいて、ストレージシステムは内部一次キャッシュのみ使用し、外部一次キャッシュは使用しない。分散モードの間は、ストレージシステムは内部一次キャッシュだけでなく外部一次キャッシュも使用する。ゴーイングバックモードの間は、ストレージシステムは内部一次キャッシュだけでなく外部一次キャッシュも使用する。ストレージシステムはこれ以上の外部一次キャッシュを割り当てず、クリーン属性となった外部一次キャッシュ領域を解放する。
【0066】
0137 図29aは、第三実施例にかかる、分散/ゴーイングバックモードにおけるホスト読み出しI/O処理のフロー図の例を示す。図12aに示す第一実施例との相違点についてのみ説明する。一次キャッシュヒットがあった場合、プログラムはミスフローパスを追う代わりに、内部ヒットか外部ヒットかに基づき異なる処理を行う。外部ヒットの場合、ストレージシステムは装置に読み出しコマンドを送る(第一実施例における読み出し二次キャッシュと同様)。ストレージシステムは内部キャッシュに外部キャッシュからデータを読み出さない(キャッシュスルー)。
【0067】
0138 S2901からS2903はS1201からS1202と同じである。S2903において、データが一次キャッシュミスである場合、ストレージシステムはS2904からS2909の処理を行う。データが内部ヒットである場合、ストレージシステムはS2908からS2909の処理を行う。データが外部ヒットである場合、ストレージシステムはS2910からS2911を行い、その後S2908からS2909を行う。S2904からS2907はS1204からS1207と同じである。S2910からS2911はS1209からS1210と同じである。S2908からS2909はS1213からS1214と同じである。
【0068】
0139 図29bは、第三実施例にかかる、分散/ゴーイングバックモードにおけるホスト書き込みI/O処理のフロー図の例を示す。図12bに示す第一実施例との相違点についてのみ説明する。一次キャッシュヒットがあった場合、プログラムはミスフローパスを追う代わりに、内部ヒットか外部ヒットかに基づき異なる処理を行う。外部ヒットの場合、ストレージシステムは書き込みコマンドを装置に対して送り、データを内部一次キャッシュに格納しない(ライトスルー)。ミスの場合、ストレージシステムは内部一次キャッシュが十分な性能(またはスペース)を有するかどうかを判断し、ない場合、ストレージシステムは外部一次キャッシュ領域を割り当て、書き込みコマンドをそこに送る。ストレージシステムは内部/外部一次キャッシュ属性を設定する。
【0069】
0140 S2921からS2923はS1221からS1223と同じである。S2923において、デーが一次キャッシュミスである場合、ストレージシステムは内部一次キャッシュがスペースを有するかどうかを判断する(S2924)。スペースがある場合、ストレージシステムは内部一次キャッシュを割り当て(S2925)、その後S2926からS2929(S1228からS1231と同じ)を実行する。スペースがない場合、ストレージシステムは外部一次キャッシュを割り当て(S2930)、S2931からS2932とS2927からS2929を実行する。ストレージシステムはS2931において書き込みコマンドを送り、S2932においてデータを受け取る。S2923に戻り、データが内部ヒットである場合、ストレージシステムはS2926からS2929を実行する。データが外部ヒットである場合、ストレージシステムはS2931からS2932とS2927からS2929を実行する。
【0070】
0141 図30は、第三実施例にかかる、分散およびゴーイングバックモードにおける外部一次キャッシュから常駐領域に対する非同期データ転送の処理のフロー図を示す。図13bに示す第一実施例との相違点についてのみ説明する。ストレージシステムは(外部二次キャッシュではなく)外部キャッシュを探す。ストレージシステムは内部一次キャッシュにデータを格納しない(ライトスルー)。内部一次キャッシュ領域を割り当て、非同期に常駐領域に書き込みを行うことも可能である。
【0071】
0142 S3001において、ストレージシステムは外部一次キャッシュにおいてダーティを探す。S3002においてダーティが存在しない場合、ストレージシステムはS3010において処理モードが分散かゴーイングバックかを判断する。分散モードにおいては、ストレージシステムプログラムはS3001に戻る。ゴーイングバックモードにおいては、S3011においてストレージシステムはすべての外部一次キャッシュをパージし、S3012においてモードを通常に変更し、処理を終了する。S3002においてダーティが存在する場合、ストレージシステムはS3003において、物理デバイスがビジーか否かを判断する。ビジーである場合、ストレージシステムプログラムはS3001に戻る。ビジーでない場合、ストレージシステムはS3004からS3009を実行する。S3004において、ストレージシステムは装置に対して読み出しコマンドを送る。S3005において、ストレージシステムは装置からデータを受け取る。S3006において、ストレージシステムは物理デバイスに対して書き込みを行う。S3007において、ストレージシステムはキャッシュ属性を設定する。S3008において、ストレージシステムは外部キャッシュをパージする。S3009において、ストレージシステムはキューを遷移する。これらのステップのうちいくつかは図13bのステップと同じである。
【0072】
0143 IV 第四実施例
【0073】
0144 第四実施例においては、ホストとストレージシステムとの間にFM装置を介してパススイッチングを備える。
【0074】
0145 図17は、第四実施例にかかる情報システムのハードウェア構成例を示す。作業負荷が高い場合、ホストはFM装置を介してストレージシステムにアクセスする。ストレージシステムとFM装置間のポート移動は、ストレージポートに対してNPIV技術やその他の技術を適用することにより実行することができる。
【0075】
0146 図31は、第四実施例にかかる本発明の論理構成例を示す。図3に示す第一実施例との相違点についてのみ説明する。ホストは分散モードの状態で装置を介してストレージシステムデータにアクセスする。ホストはストレージシステムからFM装置への代替パスを有する。装置は外部仮想化の特徴を有し、ストレージシステムのLDEVを外部デバイスとして仮想化する。装置は内部FMデバイスを使用して二次キャッシュの特徴を有する。第二実施例を本実施例に適用することもできる。各ストレージシステムはFM装置の特徴を有し、相互に作業負荷を分散することができる。
【0076】
0147 図32は、第四実施例にかかるモード変更処理のフロー図例を示す。図11に示す第一実施例との相違点についてのみ説明する。通常モードにおいて(S3201)、ホストはストレージシステムに直接アクセスする。作業負荷が高すぎ(S3202)、FM装置が高い作業負荷を有しない場合(S3203)、モードは分散モードに変更される(S3204)。分散モードへの変更の間(S3204)、ホストは直接およびFM装置を介してストレージシステムにアクセスする。装置はこのモードの間ストレージシステムのキャッシュに対して読み出しおよび書き込みを行い、ストレージシステムへの両アクセスパスの整合性を維持する。分散モードでは(S3205)、ホストはFM装置を介してストレージシステムにアクセスする。装置はストレージシステムミスデータを読み出しホストに転送する。FM装置は一次キャッシュから二次キャッシュに書き込みデータを格納し、ストレージシステムに対して非同期的に書き込みを行う。書き込まれたデータがまとめられストレージシステムに書き込まれるため、ストレージシステムの作業負荷は、データに直接にアクセスするのに比べて減らすことができる。FM装置の作業負荷が高すぎない(S3206)かまたは作業負荷が収まった場合(S3207)、モードはゴーイングバックモードに変更される(S3208)。ゴーイングバックモードの間(S3208)、FM装置はストレージシステムとデータを同期させる。FM装置はキャッシュされたデータをストレージシステムに書き込み、新たに受け取った書き込みデータをライトスルーする。同期した後、パスはストレージシステムへの直接パスに戻る。パスの変更はNPIV技術(例えば米国特許2010/0070722に記載されたDKC間の稼働状態ボリューム移動)などの技術を適用して行う。ポートはストレージシステムからログオフされ、仮想ポート#はFM装置で変更される。代替パスがある場合、FM装置はすべてのパスがストレージシステムからFM装置に変更されるまでライトスルーを行う。ALUA技術を適用してパスを作成することもできる。事前に直接およびFM装置を介して代替パスを作成することができ、ホストマルチパスソフトがどのパスを使用するかをストレージシステム/FM装置/管理コンピュータと通信することにより選択する。例えば、管理コンピュータはストレージシステムおよびFM装置のキャッシュ状態を取得し、使用すべきパスをホストに提示する。モード変更がS3209において完了すると、ストレージシステムは通常モードS3201に戻る。作業負荷が高すぎて(S3210)FM装置が十分なフリー領域を有する場合(S3211)、ストレージシステムは分散モードに変更される(S3205)。
【0077】
0148 図33aは、第四実施例にかかる通常モードから分散モードへのパススイッチング処理のフロー図例を示す。FM装置はLDEVを作成する(S3301)。管理コンピュータによってFM装置にLDEV作成を指示してもよい。FM装置はストレージシステムに接続し、FM装置において作成されたLDEVをEDEVにマッピングする(S3302)。FM装置は作成されたLDEV(S3303)において読み出し及び書き込みキャッシュスルーモードを設定し、パススイッチング間のデータ整合性を維持する(ホストは装置を介しておよび直接ストレージシステムにアクセスする)。例えば、NPIV技術を適用したパス移動において、ホストはパスをホスト―FM装置からホスト―ストレージシステムへとスイッチする(S3304)。例えば代替パスの作成および削除などのほかの方法を適用することもできる。パススイッチングの後、FM装置は一次キャッシュおよび二次キャッシュの両方のキャッシュ特性をLDEVに設定する(S3305)。
【0078】
0149 図33bは、第四実施例にかかる分散モード(ゴーイングバックモード)から通常モードへのスイッチング処理のフロー例を示す。FM装置は一次および二次キャッシュされたダーティデータをストレージシステムに書き込み、新たに受け取った書き込みデータをキャッシュスルーモードに設定することにより、ストレージシステムとデータ同期をとる(S3321)。同期をとった後、FM装置はパススイッチングの間データ整合性を維持するために、読み出しキャッシュスルーモードを設定する(S3322)。FM装置とストレージ装置は、ストレージシステムへの直接アクセスを可能とするパスへとスイッチする(S3323)。パススイッチングの後、FM装置は分散モードの間割り当てられていたLDEVとEDEVの領域を解放する(S3324)。領域は他の分散のために使うことができる。FM装置とストレージシステムは互いを結ぶパスを使わない場合、削除する。
【0079】
0150 図34aは、第四実施例において、FM装置の分散モードに基づいて一次キャッシュから二次キャッシュに行われる非同期キャッシュ転送のフロー例を示す。図13aに示す第一実施例との相違点についてのみ説明する。図34aのフロー図の処理はストレージシステムではなくFM装置によって実行される。常駐データが外部ストレージシステムにあるため、FM装置は内部二次キャッシュ領域に書き込みを行う。装置はストレージシステムにおいてチャンク割り当て情報(どのチャンクがストレージシステムのFM階層に割り当てられているか)を取得する。ストレージシステムと直接コミュニケーションをしてもよく、また管理コンピュータを介してもよい。データがストレージシステムのFMデバイス階層に割り当てられている場合、ストレージシステムは書き込みを行うのに十分な力を有する可能性があるので、装置はFM装置内の二次キャッシュを割り当てず、書き込みコマンドをストレージシステムに送る。
【0080】
0151 S3401からS3402はS1301からS1302と同じである。S3403において、ストレージシステムはFMがストレージシステム内にあるかどうかを判断する。ある場合、ストレージシステムはS3411からS3414を実行する。S3411において、ストレージシステムは書き込みコマンドを送る。S3412からS3414はS1313からS1315と同じである。ない場合、ストレージシステムはS3404からS3410を実行する。S3404とS3405はS1304とS1305と同じである。S3406において、ストレージシステムは二次キャッシュに書き込みを行う。S3407からS3410はS1308からS1311とおなじである。
【0081】
0152 第四実施例によると、FM装置において分散モードに基づき二次キャッシュから常駐領域への非同期データ転送が行われる。図13bに示す第一実施例との相違点についてのみ説明する。第四実施例の処理はストレージシステムではなくFM装置において実行される。常駐データは外部ストレージシステムにあり二次キャッシュはFM装置にあるため、FM装置は内部二次キャッシュ領域からデータを読み出し、書き込みコマンドを外部ストレージシステムに送る。
【0082】
0153 図34bは、第四実施例においてFM装置の分散モードにおけるホスト読み出しI/O処理のフロー図例を示す。図12aに示す第一実施例との相違点についてのみ説明する。図34bのフロー図の処理はストレージシステムにおいてではなくFM装置において実行される。本実施例において、分散モードの間、FM装置はI/Oコマンドをホストから受け取る。常駐データが外部ストレージシステムにあるため、キャッシュミスの場合、FM装置は読み出しコマンドをストレージシステムへ送る。二次キャッシュが(外部装置ではなく)FM装置にあるため、二次キャッシュヒットの場合、FM装置は内部二次キャッシュ領域から読み出しを行う。領域(チャンク)がストレージシステムにおいてFM階層に割り当てられている場合、読み出し/書き込みキャッシュスルー(FM装置において一次キャッシュを使用しない)を行うことができる。FM装置がストレージシステムの階層情報を配慮しないことも可能である。
【0083】
0154 S3421からS3425はS1201からS1204と同じである。S3426において、ストレージシステムは読み出しコマンドを送る。S3427において、ストレージシステムはデータを受け取る。S3428からS3431はS1206、S1207、S1213およびS1214と同じである。S3432はS1208と同じである。S3433において、ストレージシステムは二次キャッシュから一次キャッシュへ転送を行う。S3434はS1212と同じである。
【0084】
0155 図34cは、第四実施例においてFM装置のゴーイングバックモードにおけるホスト書き込みI/O処理の処理パターン例を示す。FM装置はキャッシュスルーを使ってデータの同期をとる。受け取ったデータがセグメントを埋めず、二次キャッシュにおいてデータがダーティである場合、FM装置は一次キャッシュにデータを格納し、ホストにレスポンスを返信し、非同期に一次キャッシュと二次キャッシュを統合し、ストレージシステムに書き込みを行う。
【0085】
0156 V 第五実施例
【0086】
0157 第五実施例はストレージシステムとFM装置の間に分離ボリュームを有する。
【0087】
0158 図35は、第五実施例による本発明の論理構成例を示す。SCSI Referral技術を利用して、論理ボリューム(LDEV)はLBA範囲によりいくつかのストレージシステムに分離可能である(ストレージシステムはいくつかの担当ボリューム領域を有する)。
【0088】
0159 図36は、第五実施例にかかるいくつかのストレージシステムとFM装置に分散されたチャンクの情報テーブルの例を示す。SCSI Referral技術を使って、論理ボリューム(LDEV)はいくつかのストレージシステム間で分散することができる(ストレージシステムはいくつかの担当ボリューム領域を有する)。グローバルLDEV IDとは、複数のストレージシステムとFM装置との間のボリュームの識別を意味する。分散モードの間、いくつかのチャンクはFM装置を介するパスに変更される。第四実施例において、ボリュームはFM装置に変更される。本実施例において、変更はボリューム毎ではなくチャンク毎に行われる。どのチャンクがFM装置に変更されまたは変更されるべきでないかは、ストレージシステムのデバイス階層(HDDチャンクは装置に変更されるべきであり、FMは変更されるべきでない)やチャンクのI/O頻度などといった要因に基づく。
【0089】
0160 図37は、第五実施例による、複数のストレージシステム間にチャンクが分散される場合のホスト読み込みI/O処理のフロー図例を示す。I/Oアドレスが他のストレージシステムにチャージされている場合、ストレージシステム(SCSIターゲット)はSCSI Referral技術を利用して他のポート情報を返信できる。ホストはストレージシステムに対して読み出しコマンド(S3701)を送り、ストレージシステムはコマンドを受け取る(S3702)。ストレージシステムはアドレスが自身内でチャージされたかどうかをチェックする(S3703)。含まれている場合、ストレージシステムは読み出しコマンドを処理し(内部デバイスから読み出しを行い)(S3704)、データをホストに返し(S3706)、ホストはデータを受け取る(S3707)。I/Oアドレスが他のストレージシステムにチャージされたアドレスを含む場合(本実施例においてはFM装置)(S3703)、またはすべてのデータが含まれていない場合(S3705)、ストレージシステムは残りのデータアドレス(LBA)および他のストレージシステム(FM装置)のアドレスを返す(S3708)。ホストは処理済みのデータと残りのデータ情報を受け取り(S3709)、他の読み出しコマンドを送り他のストレージシステム(FM装置)への残りのデータを取得する(S3710)。ホストはマップ情報(どのLBAがどのストレージシステムにチャージされるか)を保持できるので、このフローはFM装置への第一コマンドおよびストレージシステムへの第二コマンドとすることができる。書き込みコマンドの処理は読み出しコマンドの処理と同様である。
【0090】
0161 要求されたデータはiSCSI技術などを使って異なるポートから返信されうる。I/Oアドレスが他のストレージシステムに付け替えられる(チャージ)されるアドレスを含む場合、ストレージシステムはデータを付け替え(チャージ)する他のストレージシステムへコマンドを送ってデータをホストに返し、ストレージシステムからコマンドを受け取るストレージシステムはデータをホストに返す。
【0091】
0162 VI 第六実施例
【0092】
0163 第六実施例はFM装置を高い階層(チャンク)として使用する。
【0093】
0164 図38は、第六実施例による本発明の論理構成例を示す。図3等に示す第一実施例との相違点についてのみ説明する。ストレージシステムは高階層常駐領域(二次キャッシュでない)としてFM装置を使用する。管理コンピュータはストレージシステムやFM装置から作業負荷情報を取得し、情報を比較してどのチャンクを移動すべきかを判断し、チャンク移動を示す。ストレージシステムは階層間(内部HDDと外部FM間)でチャンクを移動する。
【0094】
0165 図39は、第六実施例にかかる管理コンピュータのフロー図例を示す。管理コンピュータはストレージシステムからチャンク情報を集める(S3901)。管理コンピュータはストレージシステムやFM装置からプール情報を取得し(S3902)、チャンクのI/O頻度を比較する(S3903)。管理コンピュータは移動すべきチャンクを、低い階層の内部装置に割り当てられているものの高いI/O頻度を有するチャンクがあるか、または高い階層のFM装置に割り当てられているものの低いI/O頻度を有するチャンクがあるかどうかの判断に基づいてサーチする(S3904およびS3906)。管理コンピュータはチャンク移動を行うようストレージシステムに指示する(S3905およびS3907)。そのような移動は外部FM装置(高い階層)から内部HDD(低い階層)に対して、または内部HDDから外部FM装置に対して、行われる。移動の振動を避ける範囲を設けることができる。自動階層化などの既知の技術を使うことができる。
【0095】
0166 この実施例において、従来の自動階層化技術との差異は以下の点を含む。従来技術によると、一つのストレージシステム(外部ストレージシステムを含み、一つのストレージシステムのみを有する)に限られる。本実施例は複数のストレージシステムにおいて使われる技術に関する。外部ストレージ(FM装置)は複数のストレージシステムから使用される。従来技術においては、チャンクのI/O頻度は一つのストレージシステム内で比較される。本実施例においては、チャンクのI/O頻度は複数のストレージシステム間で比較される。ストレージシステムAにおける高い頻度は、ストレージシステム間の作業負荷の不均衡に起因して、ストレージシステムBにおいては低い頻度である可能性がある。更に、管理コンピュータの移動判断および指示は、各ストレージシステムまたは各FM装置内に関連する。
【0096】
0167 図40は、第六実施例にかかるストレージシステムにおいて、外部FM装置から内部装置へのチャンク移動プロセスのフロー図例を示す。ストレージシステムはチャンクデータをコピーする(FM装置からチャンクデータを読み出し、それを内部装置に書きこむ)。ストレージシステムは解放コマンドを送ることにより、FM装置の使用済みチャンクを解放する(SCSIライトセイムコマンド)。FM装置内の解放領域は他のストレージシステムによって使用され得る。ストレージシステムが内部デバイスからFM装置へも移動する場合、ストレージシステムは解放することなくFM装置を使用することができる。ストレージシステムは内部デバイス領域を割り当て(S4001)、読み出しコマンドをFM装置へ送り(S4002)、返信データを取得し(S4003)、データを一次キャッシュに格納する(S4004)。ストレージシステムは解放コマンドをFM装置に送り(S4005)、マッピング情報を更新し(S4006)、内部デバイスに書き込みを行い(S4007)、一次キャッシュをパージする(S4008)。
【0097】
0168 図41は、第六実施例において、ストレージシステムの内部デバイスから外部FM装置へチャンク移動処理を行うフロー図の例を示す。ストレージシステムはチャンクデータをコピーする(チャンクデータを内部デバイスから読み出しFM装置へ書きこむ)。FM装置は書き込みコマンドを受け取ると、物理領域がまだ割り当てられていない場合、シンプロビジョニングされたボリュームへ割り当てる。ストレージシステムは内部デバイスから読み出し(S4101)、一次キャッシュへデータを格納し(S4102)、書き込みコマンドをFM装置へ送り(S4103)、FM装置からレスポンスを受け取り(S4104)、マッピング情報を更新し(S4105)、一次キャッシュをパージする(S4106)。
【0098】
0169 VII 第七実施例
【0099】
0170 第七実施例はボリューム/ページ移動に関する。本実施例は第四および第五実施例の特徴を組み合わせる。第四および第五実施例によると、FM装置はホストとストレージシステム間でキャッシュとして使用され、常駐記録領域はストレージシステム内に存在する。本実施例によると、常駐領域は移動される。
【0100】
0171 図42は、第七実施例に係る本発明の論理構成例を示す。図3に示す第一実施例との相違点についてのみ説明する。ボリュームはストレージシステムとFM装置の内部デバイス(右側)間で移動される。チャンクはストレージシステムとFM装置の内部デバイス(左側)間で移動される。管理コンピュータは各ストレージシステムおよびFM装置から作業負荷情報を受け取り、情報を比較してどのチャンク/ボリュームを移動すべきかを判断し、移動を指示する(第六実施例と同様)。ストレージシステムだけでなくFM装置も、内部デバイス(FM)からなるLDEVを有する。
【0101】
0172 図43は、第七実施例にかかる管理コンピュータのボリューム移動に伴う作業負荷分散処理のフロー図を示す。図39に示す第六実施例との相違点についてのみ説明する。管理コンピュータはストレージシステムおよびFM装置内の各ボリューム(または各ポート)の作業負荷情報を受け取る。管理コンピュータは移動イニシエータとターゲット(ストレージシステムとFM装置)を指示する。管理コンピュータはストレージシステムおよびFM装置から作業負荷情報を受け取り(S4301)、ボリュームのI/O頻度を比較する(S4302)。FM装置に低いI/Oボリュームがある場合(S4303)、管理コンピュータはFM装置からストレージシステムへの移動を指示する(S4304)。ストレージシステムHDD階層に高いI/Oボリュームがある場合(S4305)、管理コンピュータは内部装置からFM装置への移動を指示する(S4306)。
【0102】
0173 図44aは、第七実施例にかかるストレージシステムからFM装置へのボリューム移動プロセスのフロー図を示す。図33aに示す第四実施例との相違点についてのみ説明する。S4401からS4405はS3301からS3305と同じである。パススイッチング(S4404)とキャッシュ特性がONされた後(S4405)、FM装置はストレージシステムから内部装置へデータをコピーする(読み出しコマンドをストレージシステムに送り、内部デバイスに書き込みを行う)(S4406)。LDEVチャンク割り当て情報をストレージシステムとFM装置の間で交換することにより、FM装置はストレージシステム内の割り当てチャンクデータのみをコピーする。これによりコピー時間の短縮とパフォーマンスの向上およびFM装置内のプール利用を促進できる。データをコピーした後、ストレージシステムは移動元ボリュームに割り当てられていた領域を解放する(S4407)。これらの領域は他のボリュームとして使用可能である。FM装置とストレージシステムは互いをつなぐパスを削除する。FM装置はストレージシステムに解放コマンド(ライトセイムコマンド)またはLDEV削除コマンドを送ることにより、ストレージシステム内の領域を解放することができる。
【0103】
0174 図51は、第七実施例にかかるFM装置内のLDEVの情報テーブルの例を示す。LDEV IDとはFM装置内のIDである。状態とはLDEVの移動状態を示す。EDEVとはストレージシステム内のボリュームを仮想化するボリュームである。ストレージシステム内のすべての割り当てデータをコピーし、FM装置内のLDEVとEDEV間の関係を削除した後、EDEV IDはNONEになる。
【0104】
0175 図52は、FM装置内のLDEVチャンクの情報テーブルの例を示す。ストレージシステムのすべての割り当てデータがFM装置に移動(コピー)される必要はなく、高い作業負荷のデータチャンクのみがFM装置に移動されればよい。
【0105】
0176 図44bは、第七実施例にかかるFM装置からストレージシステムへのボリューム移動処理のフロー図を示す。図33bに示す第四実施例との相違点についてのみ説明する。S4424からS4427はS3321からS3324までと同じである。同期をとる前に(S4424)、LDEVがストレージシステム内に存在しないとき、ストレージシステムはLDEVを作成する(S4421)。FM装置はストレージシステムに接続し、作成されたLDEVをFM装置のEDEVにマッピングする(S4422)。FM装置は、内部デバイスのデータを読み出しストレージシステムへ書き込みコマンドを送ることにより、移動元(内部装置)から移動先(EDEVマップドストレージシステム)へデータをコピーする(S4423)。
【0106】
0177 第七実施例によると、管理コンピュータはチャンク移動に伴う作業負荷分散処理を行う。図43のボリューム移動との相違点についてのみ説明する。管理コンピュータはストレージシステムおよびFM装置内の各チャンク(ボリュームやポートではなく)の作業負荷情報を得る。
【0107】
0178 第七実施例は、ストレージシステムからFM装置へのチャンク移動処理を含む。図44aに示すボリューム移動との相違点についてのみ説明する。プログラムはFM装置へのパスをスイッチせず、ホストはストレージシステムとFM装置の両方をアクセスする。ストレージシステムおよびFM装置はストレージシステムからFM装置へのチャンクマップを変更する。もしリクエストデータが自身内でマップされずFM装置内にある場合、SCSI Referral技術を利用して、ストレージシステムはホストFM装置アドレスを返すことができる。FM装置は、EDEVから内部装置に対して、すべてのボリュームデータではなく、チャンクデータをコピー(移動)する。チャンク移動の後、移動元チャンクに割り当てられていた領域は解放される。
【0108】
0179 第七実施例は、FM装置からストレージシステムへのチャンク移動処理を含む。図44bに示すボリューム移動との相違点についてのみ説明する。プログラムはストレージシステム内にLDEVを作成する必要がない。LDEVはすでにストレージシステム内に存在する。ストレージシステムとFM装置はチャンクマップをFM装置からストレージシステムへ変更する。FM装置は、内部装置からストレージシステム(EDEV)に対し、すべてのボリュームデータではなくチャンクデータをコピー(移動)する。チャンク移動後、移動元チャンクに割り当てられていた領域は解放される。
【0109】
0180 VIII 第八実施例
【0110】
0181 第八実施例は共に分散されるボリュームグループに関する。ストレージシステムはストレージシステム内の作業負荷が高くなった場合、LDEVグループ毎に分散を行う。ユーザがグループを指定してもよいし、ストレージシステムが自身で判断してもよい。ストレージシステムが判断できるボリュームグループの例としては、ストレージシステム特性に基づくグループ、例えばリモートコピーコンシステンシグループやローカルコピーボリュームペアがありうる。
【0111】
0182 図45aは、第八実施例にかかるLDEVグループおよび分散方法の情報テーブルの例を示す。ストレージシステムはこのテーブルを有する。例えば外部キャッシュ、パススイッチングおよび移動といった作業負荷を分散するいくつかの方法がある。分散されないグループもありうる。例えば、あるデータがストレージシステムと装置に分散されることにより物理的な障害の起こるリスクがある場合、ユーザはそのデータの分散を望まない可能性がある。他の例として、FM装置はストレージシステムがボリュームに対して有する特性、例えばリモートコピーやローカルコピーなど、を有しない。
【0112】
0183 図45bは、第八実施例にかかるLDEVをLDEVグループにマッピングする例を示す。いくつかのボリュームはどのグループにも属さないことがある。
【0113】
0184 IX 第九実施例
【0114】
0185 第九実施例はFM装置の予約に関する。いつ高い作業負荷が起こるか(例えば定期的)をユーザが予測できる場合、FM装置の領域はそのタイミングのために予約される。
【0115】
0186 図46は、第九実施例にかかる予約の情報テーブルの例を示す。管理コンピュータはこの情報テーブルを参照することにより、ストレージシステムがFM装置使用のリクエストを行った時に、FM装置が割り当てを行うのに十分な容量を有するかを判断する。FM装置がこのようなテーブルを有することもできる。複数のFM装置がシステムに存在する場合、このテーブルは管理コンピュータによって保持されていたほうがよい。ユーザは管理コンピュータのユーザインターフェースにより、予約の設定をすることができる。ストレージシステムまたはFM装置がこのようなユーザインターフェースを有することもできる。FM装置はキャッシュだけでなく高い階層(常駐領域)として使われることもできる。
【0116】
0187 X 第十実施例
【0117】
0188 第十実施例によると、サーバはFM装置を利用する。
【0118】
0189 図47は、第十実施例にかかる本発明の論理構成例を示す。図3に示す第一実施例との相違点についてのみ説明する。FM装置はDRAMキャッシュを有さず、FMに直接アクセスする。サーバは、例えばPCle(登録商標)インタフェースを使って、FM装置に接続する。サーバはFM装置の領域を移動先(左側)として、または内部HDDのキャッシュ(右側)として、使用する。サーバはストレージシステムでありうる。今までの実施例において、FM装置はDRAMキャッシュを有しないこともありうる。
【0119】
0190 図48は、第十実施例にかかるFM装置の割り当て情報の例を示す。FM装置はどのFM領域が割り当てられているか否か、およびどのサーバに割り当てられているかを管理する。
【0120】
0191 図49は、第十実施例にかかるFM装置の領域の割り当ておよび解放処理のフロー図を示す。サーバはFM装置に対し割り当てコマンドを送り(S4901)、領域を割り当てる(S4902)。FM装置が十分な容量を有する場合(S4903)、領域を割り当て(S4904)、割り当てアドレスをサーバに返信し(S4905)、サーバは割り当てアドレスを受け取る(S4906)。サーバは割り当てアドレスを利用する(S4907)。サーバが装置領域の利用を必要としなくなると(S4908)、サーバはFM装置に解放コマンドを送り(S4909)、FM装置は解放コマンドを受け取り(S4910)領域を解放し(S4911)、領域は他のサーバにより使用されることができる。FM装置はサーバに対し返信(S4912)を行う(S4913)。S4903で十分な容量がない場合、FM装置はサーバに対しエラー(S4914)を送る(S4915)。
【0121】
0192 更なるアイディアおよびまたは代替方法を含む実施例もありうる。ストレージシステムは同じFMデバイスを常駐領域と二次キャッシュ領域の両方として使用することができる。パススイッチングはT11 SPC−3 ALUA(Asymmetric Logical Unit Access)技術を使って行うことができる。ホスト、ストレージシステムおよびFM装置は、FM装置を介して更なる代替パスを有することができる。装置は他の媒体、例えばPRAM(Phase change RAM)やオールDRAMを使用することができる。ホストはNASヘッド(ファイルサーバ)であってもよい。
【0122】
0193 当然のことながら、図1、図14、図16および図17に示すシステム構成は、本発明が実施され得る情報システムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、上述の発明を実施するために用いられるモジュール、プログラム及びデータ構造を格納しかつ読み出すことができる公知のI/O装置(例えば、CD及びDVDドライブ、フロッピー(登録商標)ディスクドライブ、ハードドライブ等)も有し得る。これらのモジュール、プログラム及びデータ構造は、当該コンピュータ読取可能媒体上で符号化することができる。例えば、本発明の前記データ構造は、本発明で使用されるプログラムが存在する一つ以上のコンピュータ読取可能媒体から独立したコンピュータ読取可能媒体に格納することができる。システムの構成要素は、あらゆる形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク、ワイドエリアネットワーク(例えば、インターネット)、無線ネットワーク、ストレージエリアネットワーク等を含む。
【0123】
0194 説明では、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。しかし当業者にとっては、本発明を実施するためにこれら具体的な詳細のすべてが必要なわけではないことは明らかであるだろう。また、留意すべき点として、本発明は、通常はフローチャート、フロー図又はブロック図として記載されるプロセスとして説明されてもよい。フローチャートでは動作を逐次プロセスとして説明し得るが、動作の多くは並行して又は同時に実行することができる。更に、動作の順番は並び替えてもよい。
【0124】
0195 当技術分野では周知であるように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの組み合わせによって実行することができる。本発明の実施形態の様々な態様は、回路や論理装置(ハードウェア)を用いて実施してよく、その一方で、その他の態様は、機械読取可能媒体上に記憶された命令を用いて実施してもよく、当該発明は、プロセッサによって実行された場合には、プロセッサに本発明の実施形態を実行される方法を実施させるものである。更に、本発明のいくつかの実施形態は、ハードウェアのみにおいて実施されてもよく、その他の実施形態は、ソフトウェアのみで実施されてもよい。更に、説明された様々な機能は一つのユニットで実施することができ、又はあらゆる方法によって多くの構成要素に広めることができる。ソフトウェアによって実施された場合、方法は、コンピュータ読取可能媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。望ましい場合には、圧縮およびまたは暗号化形式で命令を媒体に記憶することができる。
【0125】
0196 上記により、本発明が固体メモリを拡張キャッシュ領域として使用するストレージシステムの負荷を分散するための方法、装置およびコンピュータ読取可能媒体に記憶されたプログラムを提供するものであることが明らかであろう。更に、本明細書において特定の実施形態が示され説明されているが、当業者にとって明白なように、開示された特定の実施形態の代わりに、同じ目的を達成するために創出された構成を用いてもよい。本開示は、本発明のあらゆる適応例や変形例を対象とすることを意図したものであり、また以下の請求項で用いられる用語は、本発明を本明細書で開示した特定の実施形態に限定するよう解釈されるべきではない。むしろ本発明の範囲は、以下の請求項によって判断されるべきものであり、以下の請求項は、当該請求項が権利を有する同等物の範囲全体と共に、請求項の解釈について確立された原則に従って解釈されるものである。
【符号の説明】
【0126】
110 FM装置
120 ストレージシステム
323 ストレージプール
314、324 一次キャッシュ
325 二次キャッシュ


【特許請求の範囲】
【請求項1】
システムであって、
第一ストレージシステムと、
第二ストレージシステムを有し、
前記第一ストレージシステムは、該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更し、
ここで前記第一モードでの前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムによって実行され、
前記第二モードでの前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムおよび前記第二ストレージシステムによって実行される
ことを特徴とする、システム。
【請求項2】
請求項1に記載のシステムであって、
前記第一モードは通常モードであり、前記第二モードは高作業負荷モードであり、
前記第一ストレージシステムは、第一ストレージデバイスによって提供される一次キャッシュ領域と、前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、
通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは、各ストレージシステムの二次キャッシュ領域ではなく、一次キャッシュ領域を介して行われ、
前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが前記第一ストレージシステムの二次キャッシュ領域を介してアクセスされる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される
ことを特徴とする、システム。
【請求項3】
請求項2に記載のシステムであって、
前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記第一ストレージシステムの前記作業モードは高作業負荷モードから通常モードに変更される
ことを特徴とする、システム。
【請求項4】
請求項2に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記二次キャッシュ領域は前記第二ストレージシステムの第二ストレージデバイスによって提供される
ことを特徴とする、システム。
【請求項5】
請求項1に記載のシステムであって、
前記第二ストレージシステムは、前記第一ストレージシステム内の記憶領域より高い性能を有する記憶領域を有する装置であり、
前記第一モードは通常モードであり、前記第二モードは高作業負荷モードであり、
通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは装置を介さずに直接行われ、
前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが高作業負荷モードの装置を介してアクセスされる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される
ことを特徴とする、システム。
【請求項6】
請求項5に記載のシステムであって、
前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記作業モードは高作業負荷モードから通常モードに変更される
ことを特徴とする、システム。
【請求項7】
請求項5に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスおよび装置内の第二ストレージデバイスによって提供される
ことを特徴とする、システム。
【請求項8】
請求項5に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、装置は前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、高作業負荷モードの間、前記第一ストレージシステムへのI/Oアクセスは前記二次キャッシュ領域を介して行われる
ことを特徴とする、システム。
【請求項9】
請求項5に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムと前記装置の間で分けられる論理ボリュームによって提供され、該論理ボリュームは前記第一ストレージシステムと前記装置によって提供されるチャンクを含む
ことを特徴とする、システム。
【請求項10】
請求項5に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記装置は高階層常駐領域を提供し、前記高作業負荷モードにおいて、前記第一ストレージシステムへのI/Oアクセスは、前記高階層常駐領域へのアクセスを通じて行われる
ことを特徴とする、システム。
【請求項11】
請求項5に記載のシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムと前記装置の間で分けられる第一論理ボリュームと、第二論理ボリュームによって提供され、該第一論理ボリュームは前記第一ストレージシステムと前記装置によって提供されるチャンクを含み、前記第二ボリュームは前記装置によって提供される
ことを特徴とする、システム。
【請求項12】
第一ストレージシステムであって、
プロセッサと、
メモリと、
複数のストレージデバイスと、
該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更するよう構成されたモード作業モジュールとを有し、
前記第一ストレージシステムにおける処理の負荷は、第一モードに設定された前記第一ストレージシステムによって実行され、
前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムおよび前記第二モードに設定された第二ストレージシステムによって実行される
ことを特徴とする、第一ストレージシステム。
【請求項13】
請求項12に記載の第一ストレージシステムであって、
前記第一モードは通常モードであって、前記第二モードは高作業負荷モードであり、
前記第一ストレージシステムは、第一ストレージデバイスによって提供される一次キャッシュ領域と、前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、
通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは、各ストレージシステムの二次キャッシュ領域ではなく、一次キャッシュ領域を介して行われ、
前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが前記第一ストレージシステムの二次キャッシュ領域を介して行われる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される
ことを特徴とする、第一ストレージシステム。
【請求項14】
請求項13に記載の第一ストレージシステムであって、
前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記第一ストレージシステムの前記作業モードは高作業負荷モードから通常モードに変更される
ことを特徴とする、第一ストレージシステム。
【請求項15】
請求項13に記載の第一ストレージシステムであって、
前記一次キャッシュ領域は前記第一ストレージシステムの第一ストレージデバイスによって提供され、前記二次キャッシュ領域は前記第二ストレージシステムの第二ストレージデバイスによって提供される
ことを特徴とする、第一ストレージシステム。
【請求項16】
第一ストレージシステムと第二ストレージシステムを含むシステムにおけるI/O(入力/出力)方法であって、該方法は
該第一ストレージシステム内の処理の負荷に基づき、作業モードを第一モードから第二モードに変更するステップを有し、
ここで前記第一モードに基づく前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムによって実行され、
前記第二モードに基づく前記第一ストレージシステムにおける処理の負荷は、前記第一ストレージシステムおよび前記第二ストレージシステムによって実行される
ことを特徴とする、システムにおけるI/O方法。
【請求項17】
請求項16に記載の方法であって、
前記第一モードは通常モードであり、前記第二モードは高作業負荷モードであり、
前記第一ストレージシステムは、第一ストレージデバイスによって提供される一次キャッシュ領域と、前記第一ストレージデバイスより高い性能を有する第二ストレージデバイスによって提供される二次キャッシュ領域を有し、
通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは、各ストレージシステムの二次キャッシュ領域ではなく、一次キャッシュ領域を介して行われ、
前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが前記第一ストレージシステムの二次キャッシュ領域を介してアクセスされる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される
ことを特徴とする、方法。
【請求項18】
請求項17に記載の方法であって、
前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記第一ストレージシステムの前記作業モードは高作業負荷モードから通常モードに変更される
ことを特徴とする、方法。
【請求項19】
請求項16に記載の方法であって、
前記第二ストレージシステムは、前記第一ストレージシステム内の記憶領域より高い性能を有する記憶領域を有する装置であり、
前記第一モードは通常モードであり、前記第二モードは高負荷モードであり、
通常作業モードの間は、前記第一ストレージシステムへのI/O(入力/出力)アクセスは装置を介さずに直接行われ、
前記第一ストレージシステムが一次キャッシュ領域内の一次キャッシュダーティデータの量を第一閾値より高い状態で有し、前記第一ストレージシステムへのI/Oアクセスが高作業負荷モードの装置を介して行われる場合、前記第一ストレージシステムは通常モードから高作業負荷モードに変更される
ことを特徴とする、方法。
【請求項20】
請求項19に記載の方法であって、
前記一次キャッシュ領域の一次キャッシュダーティデータの量が、前記第一閾値を超えた後第二閾値を下回った場合、前記作業モードは高作業負荷モードから通常モードに変更される
ことを特徴とする、方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5a】
image rotate

【図5b】
image rotate

【図5c】
image rotate

【図5d】
image rotate

【図5e】
image rotate

【図5f】
image rotate

【図5g】
image rotate

【図5h】
image rotate

【図5i】
image rotate

【図5j】
image rotate

【図6a】
image rotate

【図6b】
image rotate

【図6c】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12a】
image rotate

【図12b】
image rotate

【図13a】
image rotate

【図13b】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18a】
image rotate

【図18b】
image rotate

【図18c】
image rotate

【図18d】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29a】
image rotate

【図29b】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33a】
image rotate

【図33b】
image rotate

【図34a】
image rotate

【図34b】
image rotate

【図34c】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate

【図44a】
image rotate

【図44b】
image rotate

【図45a】
image rotate

【図45b】
image rotate

【図46】
image rotate

【図47】
image rotate

【図48】
image rotate

【図49】
image rotate

【図50】
image rotate

【図51】
image rotate

【図52】
image rotate


【公開番号】特開2013−114671(P2013−114671A)
【公開日】平成25年6月10日(2013.6.10)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−165289(P2012−165289)
【出願日】平成24年7月26日(2012.7.26)
【出願人】(000005108)株式会社日立製作所 (27,607)