(57)【要約】      （修正有）【課題】あるストレージ装置の記憶領域が不足した場合、物理ディスクを増設せずに、他のストレージ装置が保有している記憶資源を有効に活用する仕組みが求められている。【解決手段】情報処理装置から送信されるデータの書き込み要求を受信すると、第一のストレージ装置は第一の記憶領域に書き込みができるかどうかを判断する。書き込みができないと判断した場合、第一のストレージ装置は、第二のストレージ装置に対してデータを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求する。これに応じて、第二のストレージ装置は第二の記憶領域が確保できるかどうかを判断するための情報を第一のストレージ装置に送信する。第一のストレージ装置は、前記情報に基づいて第二の記憶領域が確保できるかどうかを判断し、確保できると判断した場合には、前記データを第二のストレージ装置に送信して第二の記憶領域に記憶する。【選択図】      図３
2005004349.tif 000002
【特許請求の範囲】
【請求項１】
通信可能に接続された情報処理装置から送信されてくるデータの書き込み要求に応じてそのデータを第一の記憶領域に記憶する第一のストレージ装置と、
前記第一のストレージ装置と通信可能に接続する第二のストレージ装置と、
を備えるストレージシステムの制御方法において、
前記第一のストレージ装置が、前記情報処理装置から送信されてくる前記データの書き込み要求を受信するステップと、
前記第一のストレージ装置は、前記第一の記憶領域に前記データの書き込みができないと判断した場合には、前記第二のストレージ装置に対して前記データを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求するステップと、
前記第二のストレージ装置は、前記第二の記憶領域が確保できるかどうかを判断するための情報を前記第一のストレージ装置に送信するステップと、
前記第一のストレージ装置は、前記第二のストレージ装置から送信されてくる前記情報に基づいて前記第二の記憶領域が確保できるかどうかを判断するステップと、
前記第一のストレージ装置は、前記第二の記憶領域が確保できると判断した場合には、前記データを前記第二のストレージ装置に送信するステップと、
前記第二のストレージ装置は、前記第一のストレージ装置から送信されてくる前記データを前記第二の記憶領域に記憶するステップと、
を含むことを特徴とするストレージシステムの制御方法。
【請求項２】
請求項１に記載のストレージシステムの制御方法において、
前記情報処理装置から送信されてきた前記データが、前記第二のストレージ装置の前記第二の記憶領域に存在することを示す情報を記憶するステップを含むことを特徴とするストレージシステムの制御方法。
【請求項３】
請求項１に記載のストレージシステムの制御方法において、
前記第一のストレージ装置は、前記第二のストレージ装置の前記第二の記憶領域に記憶した前記データを前記第一の記憶領域に書き込み可能と判断した場合には、前記第二のストレージ装置に前記データの書き戻しを求めるためのデータの書き戻し要求を送信するステップと、
前記第二のストレージ装置は、前記第一のストレージ装置からデータの書き戻し要求を受信した場合には、前記データを前記第一のストレージ装置に送信するステップと、
前記第一のストレージ装置は、前記第二のストレージ装置から前記データを受信した場合には、前記データを前記第一の記憶領域に記憶するステップと、
を含むことを特徴とするストレージシステムの制御方法。
【請求項４】
通信可能に接続された情報処理装置から送信されてくるデータの書き込み要求に応じてそのデータを第一の記憶領域に記憶する第一のストレージ装置と、
前記第一のストレージ装置と通信可能に接続する第二のストレージ装置と、
を備えるストレージシステムにおいて、
前記第一のストレージ装置が、前記情報処理装置から送信されてくる前記データの書き込み要求を受信する手段と、
前記第一のストレージ装置は、前記第一の記憶領域に前記データの書き込みができないと判断した場合には、前記第二のストレージ装置に対して前記データを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求する手段と、
前記第二のストレージ装置は、前記第二の記憶領域が確保できるかどうかを判断するための情報を前記第一のストレージ装置に送信する手段と、
前記第一のストレージ装置は、前記第二のストレージ装置から送信されてくる前記情報に基づいて前記第二の記憶領域が確保できるかどうかを判断する手段と、
前記第一のストレージ装置は、前記第二の記憶領域が確保できると判断した場合には、前記データを前記第二のストレージ装置に送信する手段と、
前記第二のストレージ装置は、前記第一のストレージ装置から送信されてくる前記データを前記第二の記憶領域に記憶する手段と、
を備えることを特徴とするストレージシステム。
【請求項５】
通信可能に接続された情報処理装置から送信されてくるデータの書き込み要求に応じてそのデータを第一の記憶領域に記憶する手段と、
第二のストレージ装置と通信可能に接続する通信手段と、
を備えるストレージ装置において、
前記情報処理装置から送信されてくる前記データの書き込み要求を受信する手段と、
前記第一の記憶領域に前記データの書き込みができないと判断した場合には、前記第二のストレージ装置に対して前記データを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求する手段と、
前記第二のストレージ装置から送信されてくる前記情報に基づいて前記第二の記憶領域が確保できるかどうかを判断する手段と、
前記第二の記憶領域が確保できると判断した場合には、前記第二のストレージ装置の前記第二の記憶領域に前記データを記憶させるために当該データを前記第二のストレージ装置に送信する手段と、
を備えることを特徴とするストレージ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ストレージシステムの制御方法、ストレージシステム、及びストレージ装置に関する。
【０００２】
【従来の技術】
今日のグローバル化した情報社会では、情報処理システムが取り扱うデータ量が急増しており、複数のストレージ装置が運用される、例えば、データセンター等においては、ユーザに提供している記憶領域が不足するようなことが無いように管理することが求められている。
【０００３】
【特許文献１】
特開２００２−２２２０６１
【０００４】
【発明が解決しようとする課題】
ところで、データセンター等においては、一般に複数のストレージ装置が運用されており、これらのストレージ装置の記憶領域は一般にストレージ装置ごとに個別に管理されている。このため、あるストレージ装置の記憶領域が不足した場合には、そのストレージ装置に直接物理ディスク等を増設することにより記憶領域の補充が行われている。
しかしながら、データセンター等においては、あるストレージ装置の記憶領域が不足している場合に、他のストレージ装置が余剰の記憶領域を保有していることがある。このような状況下では、複数のストレージ装置全体としてみると、必ずしも記憶資源を有効に利用しているとは言い難い。そのため、複数のストレージ装置が運用される場所では他のストレージ装置が保有している記憶資源を有効に活用するための仕組みが求められている。
【０００５】
そこで、本発明は、他のストレージ装置が保有している記憶資源を有効に活用することができるストレージシステムの制御方法、ストレージシステム、及びストレージ装置を提供することを主たる目的とする。
【０００６】
【課題を解決するための手段】
上記主たる目的を達成するための発明であるストレージシステムの制御方法は、
通信可能に接続された情報処理装置から送信されてくるデータの書き込み要求に応じてそのデータを第一の記憶領域に記憶する第一のストレージ装置と、
前記第一のストレージ装置と通信可能に接続する第二のストレージ装置と、
を備えるストレージシステムの制御方法において、
前記第一のストレージ装置が、前記情報処理装置から送信されてくる前記データの書き込み要求を受信するステップと、
前記第一のストレージ装置は、前記第一の記憶領域に前記データの書き込みができないと判断した場合には、前記第二のストレージ装置に対して前記データを記憶するための第二の記憶領域を確保できるかどうかを判断するための情報を要求するステップと、
前記第二のストレージ装置は、前記第二の記憶領域が確保できるかどうかを判断するための情報を前記第一のストレージ装置に送信するステップと、
前記第一のストレージ装置は、前記第二のストレージ装置から送信されてくる前記情報に基づいて前記第二の記憶領域が確保できるかどうかを判断するステップと、
前記第一のストレージ装置は、前記第二の記憶領域が確保できると判断した場合には、前記データを前記第二のストレージ装置に送信するステップと、
前記第二のストレージ装置は、前記第一のストレージ装置から送信されてくる前記データを前記第二の記憶領域に記憶するステップと、
を含むことを特徴とする。
【０００７】
ここで、ストレージシステムとは、例えば、企業内のシステムセンターやデータセンター等で運営されているシステムである。情報処理装置とは、ストレージ装置にＳＡＮやＬＡＮを介してアクセスするパーソナルコンピュータやメインフレームコンピュータなどである。また、第一のストレージ装置及び第二のストレージ装置とは、情報処理装置から送信されてくるデータの入出力要求に応じてそのデータを記憶領域に記憶させるディスクアレイ装置や半導体記憶装置などである。第一のストレージ装置と第二のストレージ装置とは、例えば、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを介して通信可能に接続されている。
【０００８】
データを記憶するための記憶領域とは、例えば、物理ディスク（例えば、ハードディスク装置やフレキシブルディスク装置、半導体記憶装置等）により提供される物理的な記憶領域である物理ボリュームや、物理ボリューム上に論理的に設定される記憶領域である論理ボリュームなどである。上記において、記憶領域にデータの書き込みができないとは、例えば、企業や組織に割り当てられた記憶領域の空き容量が不足している状態や、物理ディスクやディスク制御部の動作が不能になった状態をいう。また、データを記憶するための記憶領域を確保できるかどうかを判断するための情報としては、例えば、ストレージ装置が備える記憶領域の空き容量の情報や、他のストレージ装置に貸し出し可能な記憶領域の情報などがある。
【０００９】
このように、本発明のストレージシステムの制御方法は、データの書き込みができなくなった場合に、リアルタイムに未使用の記憶領域を確保し、その記憶領域にデータを記憶することが可能となる。
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
＝＝＝全体構成例＝＝＝
＜ストレージシステム＞
まず、本発明の一実施例として説明するストレージシステム８００のハードウェア構成について説明する。図１は、本実施の形態に係るストレージシステム８００のハードウェア構成を示すブロック図である。
ストレージシステム８００は、第一のストレージ装置１００、第二のストレージ装置２００などの複数のストレージ装置を含んで構成される。ストレージシステム８００は、例えば、企業内のシステムセンターやデータセンター等で運営されている。
【００１１】
図１に示すように、ストレージシステム８００の第一のストレージ装置１００は、ＳＡＮ３００を介して１又は複数台の情報処理装置４００が接続されている。情報処理装置４００は、例えば銀行の自動預金預け払いサービスやインターネットのホームページ閲覧サービス等を提供するコンピュータである。第一のストレージ装置１００は、情報処理装置４００で取り扱われるデータを記憶しておくための装置として機能している。
【００１２】
ＳＡＮ３００は、例えばファイバチャネルプロトコル（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  Ｐｒｏｔｏｃｏｌ）に従って通信が行われ、情報処理装置４００と第一のストレージ装置１００とを接続するネットワークである。ＳＡＮ３００を介して行われる情報処理装置４００と第一のストレージ装置１００との間の通信は、一般にファイバチャネルプロトコルに従って行われる。情報処理装置４００からは、第一のストレージ装置１００に対して、ファイバチャネルプロトコルに従ってブロック単位のデータアクセス要求が送信される。なお、情報処理装置４００と第一のストレージ装置１００とは、必ずしもＳＡＮ３００のような通信手段で接続される必要はなく、ＬＡＮを介して接続されるようにしてもよいし、直接接続されるようにしてもよい。
【００１３】
ストレージシステム８００の第一のストレージ装置１００及び第二のストレージ装置２００は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）５００を介して管理コンピュータ６００が接続されている。管理コンピュータ６００は、ストレージシステム８００の運用・管理を行うためのコンピュータである。ＬＡＮ５００は、例えばＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）等のプロトコルに従って通信が行われ、第一のストレージ装置１００及び第二のストレージ装置２００（以下、「ストレージ装置１００，２００」と称する。）と管理コンピュータ６００とを接続するネットワークである。なお、ストレージ装置１００，２００と管理コンピュータ６００とは、必ずしもＬＡＮ５００のような通信手段で行われる必要はなく、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ  Ｉｎｔｅｒｆａｃｅ）規格の通信線やバスライン、ピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）等で接続されていてもよい。
【００１４】
第一のストレージ装置１００は、ＳＡＮ７００を介して第二のストレージ装置２００が接続されている。なお、第一のストレージ装置１００と第二のストレージ装置２００とは、必ずしもＳＡＮ３００のような通信手段で行われる必要はなく、ギガビットイーサネット（登録商標）、ＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）、公衆回線などで接続されていてもよい。なお、ＳＡＮ３００とＳＡＮ７００とは、互いに独立されたＳＡＮであってもよいし、通信可能に接続されて同一のＳＡＮで構成されていてもよい。
【００１５】
＜ストレージ装置＞
第一のストレージ装置１００及び第二のストレージ装置２００（以下、「ストレージ装置１００，２００」と称する。）は、例えば、ディスクアレイ装置や半導体記憶装置などである。第一のストレージ装置１００は、例えば、情報処理装置４００から送信されてくるデータの書き込み要求やデータの読み出し要求などのデータの入出力要求に応じてデータの入出力処理を行う。
【００１６】
また、第二のストレージ装置２００は、情報処理装置４００から送信されてくるデータの書き込み要求を受信した第一のストレージ装置１００がその書き込みデータを書き込みできない場合に、その書き込みデータを一時的に記憶しておくための記憶領域を提供する機能を有している。なお、第二のストレージ装置２００は、第一のストレージ装置１００と同様に、通信可能に接続された１又は複数の情報処理装置４００から送信されてくるデータの入出力要求に応じてデータの入出力処理を行う機能を有することとしてもよい。
【００１７】
ストレージ装置１００，２００は、チャネル制御部１１０，２１０、共有メモリ１２０，２２０、キャッシュメモリ１３０，２３０、ディスク制御部１４０，２４０、接続部１５０，２５０、ＬＵ１６０，２６０、ＬＡＮアダプタ１７０などを備えて構成される。
第一のストレージ装置のチャネル制御部１１０は、情報処理装置４００や第二のストレージ装置２００との間で通信を行うための通信インタフェースを備え、情報処理装置４００や第二のストレージ装置２１０との間でデータの入出力要求等を授受する機能を備える。第二のストレージ装置のチャネル制御部２１０は、第一のストレージ装置１００との間で通信を行うための通信インタフェースを備え、第一のストレージ装置１００との間でデータの入出力等を授受する機能を備える。
【００１８】
ストレージ装置１００，２００のディスク制御部１４０，２４０はＬＵ１６０，２６０の制御を行う。例えば、ディスク制御部１４０は、チャネル制御部１１０が情報処理装置４００から受信したデータの書き込みコマンド又は読み出しコマンドに従ってＬＵ１６０に対してデータの入出力を行う。また、チャネル制御部１１０により送信された論理アドレス指定によるＬＵ１６０へのデータアクセス要求を、物理アドレス指定による物理ディスクへのデータアクセス要求に変換する。
【００１９】
ディスク制御部１４０，２４０は、物理ディスクをＲＡＩＤの方式（例えば、ＲＡＩＤ０，１，５）で制御する機能も提供する。このようにストレージ装置１００，２００の物理ディスクがＲＡＩＤにより管理されている場合には、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋ  ｄｒｉｖｅｓ）構成（例えば、ＲＡＩＤ０，１，５）に従ったデータのアクセスを行う。
【００２０】
ＬＵ１６０，２６０は、ストレージ装置１００，２００が備える物理ディスクにより提供される物理的な記憶領域上に論理的に設定される記憶領域である。ＬＵ１６０，２６０は、情報処理装置４００から送信されてくる書き込みデータを記憶するための記憶領域である。なお、データを記憶するための記憶領域は、ＬＵ１６０，２６０の一部であってもよいし、物理ディスク（例えば、ハードディスク装置やフレキシブルディスク装置、半導体記憶装置等）により提供される物理的な記憶領域である物理ボリュームの全部又は一部であってもよい。
【００２１】
ストレージ装置１００，２００の接続部１５０，２５０はチャネル制御部１１０，２１０、共有メモリ１２０，２２０、キャッシュメモリ１３０，２３０、ディスク制御部１４０，２４０を相互に接続する。チャネル制御部１１０，２１０、共有メモリ１２０，２２０、キャッシュメモリ１３０，２３０、ディスク制御部１４０，２４０間でのデータやコマンドの授受は、接続部１５０，２５０を介することにより行われる。接続部１５０，２５０は、例えば、高速スイッチングによりデータ伝送を行う超高速クロスバスイッチなどの高速バスである。
【００２２】
ストレージ装置１００，２００のＬＡＮアダプタ１７０，２７０は、例えば、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）であり、管理コンピュータ６００との間で通信を行うための機能を提供する。
【００２３】
共有メモリ１２０，２２０及びキャッシュメモリ１３０，２３０は、チャネル制御部１１０，２１０、ディスク制御部１４０，２４０により共有される記憶メモリである。共有メモリ１２０，２２０は、例えば、制御情報やコマンド等を記憶するために利用される。キャッシュメモリ１３０，２３０は、例えば、チャネル制御部１１０，２１０とディスク制御部１４０，２４０との間でやり取りされるデータを一時的に記憶するために利用される。
【００２４】
本実施例においては、共有メモリ１２０，２２０及びキャッシュメモリ１３０，２３０がチャネル制御部１１０，２１０及びディスク制御部１４０，２４０に対して独立に設けられていることについて記載したが、本実施例はこの場合に限られるものでなく、共有メモリ１２０，２２０又はキャッシュメモリ１３０，２３０がチャネル制御部１１０，２１０及びディスク制御部１４０，２４０の各々に分散されて設けられることとしてもよい。この場合、接続部１５０，２５０は、分散された共有メモリ又はキャッシュメモリを有するチャネル制御部１１０，２１０及びディスク制御部１４０，２４０を相互に接続させることになる。
【００２５】
＜管理コンピュータ＞
管理コンピュータ６００は、ストレージシステム８００におけるストレージ装置１００，２００を保守・管理するためのコンピュータである。なお、情報処理装置４００がストレージ装置１００，２００を保守・管理するための機能を有していてもよい。
【００２６】
管理コンピュータ６００はＣＰＵやメモリなどを備えている。管理コンピュータ６００のＣＰＵは、管理コンピュータ６００の全体の制御を司るもので、メモリに格納されたプログラムを実行することにより、様々な機能等を実現している。
【００２７】
ユーザ等が管理コンピュータ６００を操作することにより、例えば、物理ディスクの構成の設定や、ＬＵ１６０，２６０の管理や設定（容量管理や容量拡張・縮小、情報処理装置４００の割り当て等）、ストレージ装置１００，２００において実行されるマイクロプログラムのインストール等を行うことができる。ここで、物理ディスクの構成の設定としては、例えば物理ディスクの増設や減設、ＲＡＩＤ構成の変更（ＲＡＩＤ１からＲＡＩＤ５への変更等）等を行うことができる。これらの設定は、管理コンピュータ６００で動作するＷｅｂサーバが提供するＷｅｂページをユーザーインタフェースとしてユーザなどにより行われる。
【００２８】
管理コンピュータ６００は、ストレージ装置１００，２００に内蔵されている形態とすることもできるし、外付けされている形態とすることもできる。管理コンピュータ６００は、ストレージ装置１００，２００及びＬＵ１６０，２６０の保守・管理を専用に行うコンピュータとすることもできるし、汎用のコンピュータに保守・管理機能を持たせたものとすることもできる。
【００２９】
＜情報処理装置＞
情報処理装置４００は、管理コンピュータ６００と同様にＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やメモリなどを備えるコンピュータである。情報処理装置４００は、例えば、パーソナルコンピュータ、ワークステーション、メインフレームコンピュータなどである。情報処理装置４００のＣＰＵは、情報処理装置４００の全体の制御を司るもので、メモリに格納されたプログラムを実行することにより、様々な機能等を実現する。
【００３０】
情報処理装置４００は、第一のストレージ装置１００に対してデータの書き込み要求やデータの読み出し要求などのデータの入出力要求を送信することにより、ＬＵ１６０に記憶されているデータの読み出し、あるいはＬＵ１６０に対するデータの書き込みを行う。図２に、データの書き込み要求やデータの読み出し要求などのデータの入出力要求のコマンドフォーマットの一例を示す。ヘッダには情報処理装置４００のＩＤなどが設定される。ポートＩＤには、データの入出力要求の処理対象となる論理ボリューム１６０に接続するためのポートのＩＤが設定される。ＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）には当該データの入出力要求が対象とする論理ボリューム１６０の識別子が設定される。アドレスにはデータの読み出し先又は書き込み先の論理アドレスが設定される。また、データ長には読み出し対象又は書き込み対象のデータのデータ長が設定される。なお、データの入出力要求がデータの書き込み要求である場合には、これらの他に書き込み対象のデータが付加される。
【００３１】
＝＝＝実施例１＝＝＝
次に、情報処理装置４００が第一のストレージ装置１００に対してデータの書き込み要求やデータの読み出し要求などのデータの入出力要求を送信した場合におけるストレージシステム８００の処理について説明する。
【００３２】
＜データの書き込み要求受信時の処理＞
図３は、情報処理装置４００から第一のストレージ装置１００に対してデータの書き込み要求が送信された場合におけるストレージシステム８００のデータの書き込み処理の一例を説明するフローチャートである。
【００３３】
第一のストレージ装置１００のチャネル制御部１１０が情報処理装置４００から送信されてくるデータの書き込み要求を受信すると（Ｓ３００）、チャネル制御部１１０はデータの書き込みコマンドにより指定されたＬＵ１６０にデータの書き込みができるか否かを判断する（Ｓ３０１）。この判断は、例えば、図５に示す第一のストレージ装置１００の論理ボリューム１６０の空き容量管理テーブル２２００を参照して、データの書き込みコマンドにより指定されたＬＵ１６０の空き容量とデータの書き込みコマンドのデータ長とを比較することにより行われる。なお、論理ボリュームの空き容量管理テーブル２２００は、例えば、チャネル制御部１１０がディスク制御部１４０からリアルタイムに各ＬＵ１６０の空き容量報告を受信することにより作成される。この論理ボリュームの空き容量管理テーブル２２００は、共有メモリ１２０に記憶されていてもよいし、ＬＵ１６０に記憶されていてもよい。
【００３４】
論理ボリュームの空き容量管理テーブル２２００を参照して、データの書き込みコマンドにより指定されたＬＵ１６０の空き容量と、データの書き込みコマンドのデータ長とを比較した結果、ＬＵの空き容量がデータ長より大きい場合にはデータの書き込みができると判断される。一方、ＬＵの空き容量がデータ長より小さい場合にはデータの書き込みができないと判断される。この判断は、このようにチャネル制御部１１０が行うこととしてもよいが、ディスク制御部１４０が行うこととしてもよい。
【００３５】
（Ｓ３０１）の判断の結果、データの書き込みができると判断した場合（Ｓ３０１；Ｙｅｓ）には、チャネル制御部１１０は、受信したデータの書き込みコマンドを共有メモリ１２０に書き込むと共に、情報処理装置４００から受信した書き込み対象となるデータ（以下、「書き込みデータ」と称する）をキャッシュメモリ１３０に書き込む。ディスク制御部１４０は、リアルタイムに共有メモリ１２０の内容を監視している。ディスク制御部１４０は、この監視により共有メモリ１２０にデータの書き込みコマンドが書き込まれていることを検知すると、キャッシュメモリ１３０から書き込みデータを読み出し、データの書き込みコマンドに指定されたＬＵ１６０及び論理アドレスに基づいて、その書き込みデータをＬＵ１６０に書き込む（Ｓ３０２）。
【００３６】
ディスク制御部１４０は、指定されたＬＵ１６０にデータの書き込みが完了すると、その旨をチャネル制御部１１０に通知する。そして前記通知を受信したチャネル制御部１１０は、情報処理装置４００から送信されてくるデータの書き込みコマンドにより指定された場所（例えば、ＬＵＮ、論理アドレス及びデータ長）や、書き込みデータを実際に記憶させた場所（例えば、ストレージ装置、ＬＵＮ及び論理アドレス）などを、ＬＵ１６０や共有メモリ１２０等に記憶されているデータ管理テーブル２１００に記録する（Ｓ３０３）。
【００３７】
図４に、データ管理テーブル２１００の一例を示す。図４に示すように、データ管理テーブル２１００には、情報処理装置４００から送信されてくるデータの書き込みコマンドにより指定されたＬＵＮや論理アドレス、データ長などのデータの管理アドレスと、情報処理装置４００から送信されてくる書き込みデータを実際に記憶させたストレージ装置、ＬＵＮ及び論理アドレスなどのデータの実アドレスとが記録されている。
【００３８】
次に、第一のストレージ装置１００のチャネル制御部１１０は、情報処理装置４００に書き込み完了報告を通知し（Ｓ３０４）、データの書き込み処理を終了する。なお、情報処理装置４００への書き込み完了報告は、このようにＬＵ１６０へのデータの書き込み動作と同期に行われることとしてもよいが、ＬＵ１６０への実際のデータの書き込み動作とは非同期に行われることとしてもよい。
【００３９】
一方、（Ｓ３０１）の判断の結果、データの書き込みができないと判断した場合（Ｓ３０１；Ｎｏ）には、ディスク制御部１４０はチャネル制御部１１０に対してその旨を通知する。そして前記通知を受信したチャネル制御部１１０は、第一のストレージ装置１００と通信可能に接続されたストレージ装置（本実施例においては、第二のストレージ装置２００）に対して、データを記憶するための記憶領域を確保できるかどうかを判断するための情報を要求する（Ｓ３０５）。なお、この情報の要求は、チャネル制御部１１０がディスク制御部１４０の動作の不能によりデータの書き込みができないと判断した場合や、ディスク制御部１４０が物理ディスクの動作の不能によりデータの書き込みコマンドで指定されたＬＵ１６０にデータの書き込みができないと判断した場合にも行われることとしてもよい。
【００４０】
第二のストレージ装置２００のチャネル制御部２１０は、第一のストレージ装置１００からデータを記憶するための記憶領域を確保できるかどうかを判断するための情報の要求を受信すると（Ｓ３０６）、第一のストレージ装置１００にデータを記憶するための記憶領域を確保できるかどうかを判断するための情報を送信する（Ｓ３０７）。この情報は、例えば、図６に示す第二のストレージ装置２００の論理ボリューム管理テーブル２３００であってもよいし、図７に示す貸し出し可能な論理ボリューム管理テーブル２４００であってもよい。これらのテーブルを第一のストレージ装置１００が参照することにより、データを記憶するための記憶領域を確保できるかどうかを判断することができる。
【００４１】
図６に示すように、論理ボリューム管理テーブル２３００には、第二のストレージ装置２００における各ＬＵ２６０の使用状況、空き容量、アクセス頻度などが記録されているが、これらに限定されるものではなく、データの重要度や、ＬＵ２６０の記憶容量に対する使用領域の割合（利用率）などが記録されていてもよい。図７に示す貸し出し可能な論理ボリューム管理テーブル２４００には、第二のストレージ装置２００がＬＵ２６０を貸し出してもよいと判断した記憶領域、例えば、未使用の記憶領域やあらかじめユーザ等から貸し出し許可を得ている記憶領域、などの情報が記録されている。これらのテーブルは、第一のストレージ装置１００からデータを記憶するための記憶領域を確保できるかどうかを判断するための情報の要求があった場合に作成することとしてもよいが、あらかじめ共有メモリ２２０やＬＵ２６０などに記憶されていることとしてもよい。
【００４２】
第一のストレージ装置１００のチャネル制御部１１０が第二のストレージ装置２００からデータを記憶するための記憶領域を確保できるかどうかを判断するための情報を受信すると（Ｓ３０８）、第一のストレージ装置のチャネル制御部１１０は、当該情報に基づいて前記記憶領域を確保できるかどうかを判断する（Ｓ３０９）。この判断は、論理ボリューム管理テーブル２３００が送信されてきた場合には、ＬＵ２６０の使用状況が「未使用」であるか、空き容量が情報処理装置４００から送信されてきた書き込みデータのサイズより大きいか、ＬＵ２６０のアクセス頻度が「低」であるか、などを判断することにより行われる。また、貸し出し可能な論理ボリューム管理テーブル２４００が送信されてきた場合には、貸し出し可能な記憶領域が情報処理装置４００から送信されてきた書き込みデータのサイズより大きいかどうかを判断することにより行われる。
【００４３】
（Ｓ３０９）の判断の結果、書き込みデータを記憶するための記憶領域を確保できないと判断した場合（Ｓ３０９；Ｎｏ）には、情報処理装置４００に対してデータの書き込みができない旨を通知し（Ｓ３１７）、管理コンピュータ６００に対してＬＵ１６０の空き領域がない旨を通知し（Ｓ３１８）、データの書き込み処理を終了する。一方、（Ｓ３０９）の判断の結果、書き込みデータを記憶するための記憶領域を確保できると判断した場合（Ｓ３０９；Ｙｅｓ）には、チャネル制御部１１０は、当該記憶領域を指定した書き込みコマンド及び書き込みデータ（データの書き込み要求）を、当該記憶領域を有する第二のストレージ装置２００に送信する（Ｓ３１０）。
【００４４】
第二のストレージ装置２００のチャネル制御部２１０は、第一のストレージ装置１００から送信されてくるデータの書き込み要求を受信すると（Ｓ３１１）、受信したデータの書き込みコマンドを共有メモリ２２０に書き込むと共に、第一のストレージ装置１００から受信した書き込みデータをキャッシュメモリ２３０に書き込む。
【００４５】
第二のストレージ装置２００のディスク制御部２４０は、共有メモリ２２０にデータの書き込みコマンドが書き込まれていることを検知すると、キャッシュメモリ２３０から書き込みデータを読み出す。そして、その書き込みデータを、データの書き込みコマンドで指定された記憶領域に書き込む（Ｓ３１２）。ディスク制御部２４０は、指定された記憶領域にデータの書き込みが完了すると、チャネル制御部２１０に対してその旨を通知する。そして前記通知を受信したチャネル制御部２１０は、第一のストレージ装置１００にデータの書き込み完了報告を通知する（Ｓ３１３）。
【００４６】
第一のストレージ装置１００のチャネル制御部１１０は、第二のストレージ装置２００からデータの書き込み完了報告通知を受信すると（Ｓ３１４）、情報処理装置４００から送信されてきたデータの書き込みコマンドにより指定された場所（例えば、ＬＵＮ、論理アドレス及びデータ長）や、書き込みデータを実際に記憶させた場所（例えば、ストレージ装置、ＬＵＮ及び論理アドレス）などを、ＬＵ１６０や共有メモリ１２０等に記憶されているデータ管理テーブル２１００に記録する（Ｓ３１５）。この記録により、第一のストレージ装置１００は各データがどのストレージ装置のどのＬＵに記憶されているかを把握することが可能となる。
【００４７】
第一のストレージ装置１００のチャネル制御部１１０は、第二のストレージ装置２００からデータの書き込み完了報告の通知を受信すると（Ｓ３１４）、データの書き込み完了報告を情報処理装置４００に通知し（Ｓ３１６）、ＬＵ１６０にデータの書き込みができない旨を管理コンピュータ６００に通知する（Ｓ３１８）。そして、ストレージシステム８００はデータの書き込み処理を終了する。
【００４８】
以上のように、物理ディスク又はディスク制御部１４０の障害や、ＬＵ１６０の容量不足などの問題が生じてＬＵ１６０にデータの書き込みができない場合には、情報処理装置４００の業務を中断させることなく、他のストレージ装置が保有する記憶領域を借用してデータを記憶する。したがって、ストレージシステム８００において存在する記憶資源を有効に利用することが可能となる。なお、本発明の実施例においては、情報処理装置４００が直接アクセスできる記憶領域だけに限らず、直接アクセスできない記憶領域にもデータを記憶することが可能であることは言うまでもない。
【００４９】
また、第一のストレージ装置１００から管理コンピュータ６００にＬＵ１６０にデータの書き込みができない旨を通知すること（Ｓ３１６）により、ストレージシステム８００を管理するオペレータ等は、物理ディスク又はディスク制御部１４０の障害や、ＬＵ１６０の容量不足などの問題が生じてＬＵ１６０にデータの書き込みができないことを知ることができる。なお、チャネル制御部１１０は、管理コンピュータ６００にＬＵ１６０にデータの書き込みができない旨を通知するとともに（Ｓ３１６）、データ管理テーブル２１００のデータの管理アドレス及び実アドレスの情報を通知することとしてもよい。これにより、管理コンピュータ６００は、ＬＵ１６０に書き込みができなかったデータがどこに記憶されているかを知ることができ、物理ディスク又はディスク制御部１４０の障害や、ＬＵ１６０の容量不足などの問題を解決した後に、オペレータ等はデータごとに後述するデータの書き戻し処理をストレージシステム８００に実行させることが可能になる。
【００５０】
以上に説明した実施例では、情報処理装置４００から送信されてくるデータの書き込みコマンドにより指定されたＬＵ１６０にデータの書き込みができない場合に、第一のストレージ装置１００は第二のストレージ装置２００から記憶領域を借用して前記データの書き込みを行わせることとしたが、第一のストレージ装置１００は当該ストレージ装置が備える記憶領域を借用して前記データの書き込みを行わせることとしてもよい。
【００５１】
＜データの読み出し要求受信時の処理＞
図８は、情報処理装置４００からデータの読み出し要求が第一のストレージ装置１００に送信された場合におけるストレージシステム８００のデータの読み出し処理の一例を説明するフローチャートである。
【００５２】
第一のストレージ装置１００のチャネル制御部１１０が情報処理装置４００から送信されてくるデータの読み出し要求を受信すると（Ｓ８００）、データ管理テーブル２１００を参照して、データの読み出しコマンドにより指定されたＬＵＮ及び論理アドレスをデータの実アドレスに記録されているＬＵＮ及び論理アドレスに変換する。そして、データの実アドレスに記録されているストレージ装置が第一のストレージ装置１００であるか否かを判断する（Ｓ８０２）。この判断により、第一のストレージ装置１００であると判断した場合（Ｓ８０２；Ｙｅｓ）には、変換したデータの読み出しコマンドをディスク制御部１４０に送出する。なお、チャネル制御部１１０からディスク制御部１４０への前記変換したデータの読み出しコマンドの伝達は、共有メモリ１２０を介して行われてもよい。
【００５３】
ディスク制御部１４０は、チャネル制御部１１０から変換したデータの読み出しコマンドを受領すると、変換したデータの読み出しコマンドにより指定されたＬＵＮ及び論理アドレスに基づいて、その読み出し対象のデータ（以下、「読み出しデータ」と称する）をＬＵ１６０から読み出す（Ｓ８０３）。そして、この読み出したデータをキャッシュメモリ１３０に書き込む。ディスク制御部１４０は、キャッシュメモリ１３０へのデータ転送が完了すると、その旨をチャネル制御部１１０に通知する。そして前記通知を受領したチャネル制御部１１０は、キャッシュメモリ１３０に記憶されている読み出しデータを情報処理装置４００に送信し（Ｓ８０４）、データの読み出し処理を終了する。
【００５４】
（Ｓ８０２）の判断により、第一のストレージ装置１００でないと判断した場合（Ｓ８０２；Ｎｏ）には、第一のストレージ装置１００のチャネル制御部１１０は、データの実アドレスに記録されているストレージ装置（本実施例においては、第二のストレージ装置２００）に対して変換したデータの読み出し要求を送信する（Ｓ８０５）。
【００５５】
第二のストレージ装置２００のチャネル制御部２１０は、第一のストレージ装置１００からデータの読み出し要求を受信すると（Ｓ８０６）、このデータの読み出しコマンドをディスク制御部２４０に送出する。ディスク制御部２４０は、チャネル制御部２１０からデータの読み出しコマンドを受領すると、そのコマンドに基づいて読み出しデータをＬＵ２６０から読み出し、その読み出したデータをキャッシュメモリ２３０に書き込む。ディスク制御部２４０は、キャッシュメモリ２３０へのデータ転送が完了すると、その旨をチャネル制御部２１０に通知する。そして前記通知を受領したチャネル制御部２１０は、キャッシュメモリ２３０に記憶されている読み出しデータを第一のストレージ装置１００に送信する（Ｓ８０７）。
【００５６】
第一のストレージ装置１００のチャネル制御部１１０は、第二のストレージ装置２００から前記読み出しデータを受信すると（Ｓ８０８）、情報処理装置４００に読み出しデータを送信し（Ｓ８０４）、データの読み出し処理を終了する。
【００５７】
＜データの書き戻し処理＞
次に、ＬＵ１６０の空き容量不足や、物理ディスク又はディスク制御部１４０の障害などの問題が解決した場合に行われるストレージシステム８００のデータの書き戻し処理について説明する。
データの書き戻し処理は、第一のストレージ装置１００が第二のストレージ装置２００に書き込ませたデータの書き戻しができると判断した場合に自動的に行われる。具体的には、ユーザ等がＬＵ１６０に記憶されているデータを削除することにより、ＬＵ１６０の空き容量が第二のストレージ装置に書き込ませたデータのサイズより大きくなった場合や、第一のストレージ装置１００にＬＵ１６０を増加した場合や、物理ディスク又はディスク制御部１４０を修理・交換した場合などに開始される。以下、ストレージシステム８００のデータの書き戻し処理について説明する。
【００５８】
図９は、ストレージシステム８００のデータの書き戻し処理の一例を説明するフローチャートである。第一のストレージ装置１００のディスク制御部１４０は、データの書き戻し処理を開始するとデータ管理テーブル２１００を参照して、第二のストレージ装置２００に記憶されているデータの返還を求めるための書き戻し要求を作成し、それを第二のストレージ装置２００に送信する（Ｓ９００）。第二のストレージ装置２００のチャネル制御部２１０は、第一のストレージ装置１００からデータの書き戻し要求を受信すると（Ｓ９０１）、チャネル制御部２１０は受信したデータの書き戻しコマンドをディスク制御部２４０に送出する。なお、チャネル制御部２１０からディスク制御部２４０へのデータの書き戻しコマンドの伝達は、共有メモリ２２０を介して行われることもある。
【００５９】
ディスク制御部２４０は、チャネル制御部２１０からデータの書き戻しコマンドを受領すると、そのコマンドに指定されている書き戻し対象のデータ（以下、「書き戻しデータ」と称する）をＬＵ２６０から読み出して（Ｓ９０２）、読み出したデータをキャッシュメモリ２３０に書き込む。ディスク制御部２４０は、キャッシュメモリ２３０へのデータ転送が完了すると、その旨をチャネル制御部２１０に通知する。そして前記通知を受信したチャネル制御部２１０は、キャッシュメモリ２３０に記憶されている書き戻しデータをデータの書き戻しコマンドと共に第一のストレージ装置１００に送信する（Ｓ９０３）。
【００６０】
第一のストレージ装置１００のチャネル制御部１１０は、第二のストレージ装置２００からデータの書き戻しコマンド及び書き戻しデータを受信すると（Ｓ９０４）、ＬＵＮ及びアドレスを指定したデータの書き込みコマンドを作成する。このデータの書き込みコマンドのＬＵＮには、本来書き戻しデータが書き込まれるはずだったＬＵ１６０の識別子や、増加されたＬＵ１６０の識別子が指定される。また、データの書き込みコマンドのアドレスには、未使用の記憶領域の論理アドレスが指定される。なお、データの書き込みコマンドにより指定されたＬＵＮは、データ管理テーブル２１００を参照して、データの書き戻しコマンドを送信したストレージ装置や、データの書き戻しコマンドにより指定されているＬＵＮ及び論理アドレスなどに基づいて決定される。
【００６１】
次に、チャネル制御部１１０は、作成したデータの書き込みコマンドを共有メモリ１２０に書き込むと共に、書き戻しデータをキャッシュメモリ１３０に書き込む。第一のストレージ装置１００のディスク制御部１４０は、共有メモリ１２０にデータの書き込みコマンドが書き込まれていることを検知すると、キャッシュメモリ１３０から書き戻しデータを読み出す。そして、ディスク制御部１４０はその書き戻しデータをＬＵ１６０に書き込む（Ｓ９０５）。
【００６２】
ディスク制御部２４０は、データの書き込みコマンドにより指定されたＬＵ１６０に書き戻しデータの書き込みが完了すると、データの書き込みが完了した旨をチャネル制御部１１０に通知する。その通知を受信したチャネル制御部１１０は、書き戻しデータを記憶した場所をデータ管理テーブル２１００に記録する（Ｓ９０６）。具体的には、データ管理テーブル２１００のデータの実アドレスのストレージ装置の識別子を第一のストレージ装置の識別子に変換し、データの実アドレスのＬＵＮ及び論理アドレスを、チャネル制御部１１０がデータの書き込みコマンドにおいて指定したＬＵＮ及び論理アドレスに変換する。
【００６３】
次に、チャネル制御部１１０は、データの書き戻しコマンドにおいて指定したＬＵＮ及び論理アドレスなどに基づいて書き戻しデータの削除コマンドを作成し、第二のストレージ装置２００に対して書き戻しデータの削除を要求する（Ｓ９０７）。第二のストレージ装置２００のチャネル制御部２１０は、書き戻しデータの削除要求を受信すると（Ｓ９０８）、このデータの削除コマンドをディスク制御部２４０に送出する。ディスク制御部２４０は、チャネル制御部２１０からデータの削除コマンドを受領すると、そのコマンドに基づいてＬＵ２６０からデータを削除する（Ｓ９０９）。ディスク制御部２４０は、データの削除が完了すると、その旨をチャネル制御部２１０に通知する。そして前記通知を受領したチャネル制御部２１０は、データ削除の完了報告を第一のストレージ装置１００に送信する（Ｓ９１０）。
【００６４】
第一のストレージ装置１００のチャネル制御部２１０は、第二のストレージ装置２００からデータの完了報告を受信すると（Ｓ９１１）、管理コンピュータ８００に対してデータの書き戻しの完了報告を通知し（Ｓ９１２）、データの書き戻し処理を終了する。なお、チャネル制御部１１０は、管理コンピュータ６００にデータの書き戻しの完了報告を通知するとともに（Ｓ９１２）、データ管理テーブル２１００のデータの管理アドレス及び実アドレスの情報を通知することとしてもよい。
【００６５】
以上のように、第一のストレージ装置１００が第二のストレージ装置２００に書き込ませたデータの書き戻しができると判断した場合には、データの書き戻し処理が開始される。これにより、オペレータ等は物理ディスク又はディスク制御部１４０の障害や、ＬＵ１６０の容量不足などの問題を解決した後に、オペレータ等はデータの書き戻し作業という煩雑な操作を行う必要がなくなる。
【００６６】
＝＝＝他の実施例＝＝＝
前述の実施例では、２台のストレージ装置１００，２００を備えるストレージシステム８００におけるデータの書き込み処理やデータの書き戻し処理、データの読み出し処理について説明したが、図１０や図１１に示すような複数台のストレージ装置を備えるストレージシステム８００にも適用することができ、また、上述と同様の効果を得ることができる。
【００６７】
図１０は、他の実施例として説明するストレージシステム８００の全体構成を示すブロック図である。ストレージシステム８００の第一のストレージ装置１１００には、ＳＡＮ３００を介して１又は複数台の情報処理装置４００が接続されており、ＳＡＮ７００を介して第二のストレージ装置１２００が接続されている。また、第二のストレージ装置１２００には、ＳＡＮ７１０を介して第三のストレージ装置１３００が接続されている。第一乃至第三のストレージ装置１１００，１２００，１３００には、ＬＡＮ５００を介して管理コンピュータ６００が接続されている。
【００６８】
図１１は、他の実施例として説明するストレージシステム８００の全体構成を示すブロック図である。ストレージシステム８００の第一のストレージ装置１１００には、ＳＡＮ３００を介して１又は複数台の情報処理装置４００が接続されており、ＳＡＮ７００を介して第二のストレージ装置１２００、第三のストレージ装置１３００、及び第四のストレージ装置１４００が接続されている。第一乃至第四のストレージ装置１１００，１２００，１３００，１４００には、ＬＡＮ５００を介して管理コンピュータ６００が接続されている。
【００６９】
＝＝＝応用例＝＝＝
本発明のストレージシステムのデータの書き込み処理やデータの書き戻し処理などの制御方法は、例えば、各企業に割り当てられた記憶領域にデータの書き込みができなかった場合に、他のストレージ装置の記憶領域をレンタルして一時的にデータを記憶させるサービスに適用可能である。以下、この記憶領域のレンタルサービスについて図１及び図１２〜図１５を用いて詳述する。
【００７０】
図１２は、ストレージ装置１００の論理ボリューム１６０の空き容量を管理するテーブル２１００の一例を示す。図１２に示されるように、第一のストレージ装置１００の各ＬＵ１６０は各使用者（会社）に割り当てられている。なお、本実施例においては、会社ＤのＬＵ５（１６０）の使用状況には、ＬＵ５（１６０）の空き容量がないため、「使用不可」が記録されている。また、会社ＥのＬＵ６（１６０）の使用状況には、ディスク制御部１４０に何らかの障害が発生したことによりアクセスができないため、「使用不可」が記録されている。
【００７１】
会社Ａのデータの書き込み要求が情報処理装置４００から送信されてくると、第一のストレージ装置１００は、論理ボリュームの空き容量管理テーブル２５００を参照してデータの書き込みができると判断する。そして、第一のストレージ装置１００は前記会社ＡのデータをＬＵ１（ＬＵ１６０）に書き込む。一方、会社Ｄ又は会社Ｅのデータの書き込み要求が情報処理装置４００から送信されてくると、第一のストレージ装置１００は、論理ボリュームの空き容量管理テーブル２５００を参照してデータの書き込みができないと判断する。そして、第一のストレージ装置１００は、第二のストレージ装置２００にデータを記憶するための記憶領域を確保できるかどうかを判断するための情報を要求する。
【００７２】
この情報の要求を受信した第二のストレージ装置２００は、例えば、図１３に示す論理ボリューム管理テーブル２６００や、図１４に示す貸し出し可能な論理ボリューム管理テーブル２７００などの情報を第一のストレージ装置１００に送信する。この情報を受信した第一のストレージ装置１００は、この情報を参照して借用したい論理ボリュームを選択する。なお、借用したいＬＵ２６０の選択は、例えば、あらかじめユーザなどによって指定された条件（例えば、使用できる領域や、使用状況など）に基づいて選択される。
【００７３】
第一のストレージ装置１００は、選択したＬＵ２６０や論理アドレスなどを指定してデータの書き込み要求を第二のストレージ装置２００に送信する。このデータの書き込み要求を受信した第二のストレージ装置２００は、データの書き込みコマンドにより指定されたＬＵ２６０に書き込みデータを書き込み、データの書き込み完了報告を第一のストレージ装置１００に通知する。
【００７４】
データの書き込み完了報告の通知を受信した第一のストレージ装置１００は、データ管理テーブル２１００のデータの管理アドレス及びデータの実アドレスを記録し、情報処理装置４００にデータの書き込み完了報告を通知する。また、第一のストレージ装置１００は、管理コンピュータ６００にＬＵ５（１６０）に空き容量が不足している旨を通知するとともに、会社Ｄが第二のストレージ装置２００のＬＵ３（２６０）の記憶領域を３００ＭＢ借用していることを通知する。これらの通知を受信した管理コンピュータ６００は、これらのことをディスプレイに表示する。また、会社Ｄが第二のストレージ装置２００のＬＵ３（２６０）の記憶領域を３００ＭＢ借用していることを、図１５に示す記憶領域借用情報２８００に記録する。この記憶領域借用情報には、記憶領域を借用している利用者、借用先の情報（ストレージ装置やＬＵＮなど）、使用領域、レンタル料などが記録されている。なお、レンタル料は、例えば、使用領域、使用日数、ストレージ装置の性能、回線速度などによって計算される。
【００７５】
以上のように、本発明のストレージシステム８００の制御方法は、他のストレージ装置の記憶領域をレンタルして一時的にデータを記憶させるサービスに適用可能である。
【００７６】
なお、上述においては、複数のストレージ装置１００，２００間で記憶領域の貸し借りについて説明したが、同一のストレージ装置内で記憶領域の貸し借りを行うこととしてもよい。以下、具体的に説明することとする。
【００７７】
会社ＢのＬＵ２（１６０）に対するデータの書き込み要求が情報処理装置４００から送信されてくると、第一のストレージ装置１００は、論理ボリュームの空き容量管理テーブル２５００を参照してデータの書き込みができないと判断する。そして、第一のストレージ装置１００は、他のストレージ装置にデータを記憶するための記憶領域を確保できるかどうかを判断するための情報を要求する前に、まず、第一のストレージ装置１００は、当該ストレージ装置１００にデータを記憶するための記憶領域を確保できるかどうかを判断する。
【００７８】
この判断は、第一のストレージ装置１００が有する論理ボリューム管理テーブル２３００や貸し出し可能な論理ボリューム管理テーブル２４００などを参照して、未使用のＬＵ１６０が存在するか否か、または第一のストレージ装置１００内に貸し出し可能な記憶領域が存在するか否かなどを確認し、会社Ｂに借用させるＬＵ１６０を選択する。なお、借用させるＬＵ１６０の選択は、例えば、あらかじめユーザなどによって指定された条件（例えば、使用できる領域や、使用状況など）に基づいて行われることとしてもよい。
【００７９】
第一のストレージ装置１００は、データを記憶するための記憶領域を確保できると判断した場合には、その記憶領域（例えば、ＬＵ４（１６０））にデータを書き込む。そして、データ管理テーブル２１００のデータの管理アドレス及びデータの実アドレスを記録し、情報処理装置４００にデータの書き込み完了報告を通知する。また、第一のストレージ装置１００は、管理コンピュータ６００にＬＵ２（１６０）に空き容量が不足している旨を通知するとともに、会社Ｂが第一のストレージ装置１００のＬＵ４（１６０）の記憶領域を４９０００ＭＢ借用していることを通知する。これらの通知を受信した管理コンピュータ６００は、これらのことをディスプレイに表示する。また、会社Ｂが第一のストレージ装置１００のＬＵ４（１６０）の記憶領域を４９０００ＭＢ借用していることを、図１５に示す記憶領域借用情報２８００に記録する。
【００８０】
一方、データを記憶するための記憶領域を確保できないと判断した場合には、上述のように、第一のストレージ装置１００は、第二のストレージ装置２００にデータを記憶するための記憶領域を確保できるかどうかを判断するための情報を要求し、同様の処理がなされる。
【００８１】
以上本実施の形態について説明したが、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得ると共に、本発明にはその等価物も含まれる。
【００８２】
【発明の効果】
本発明によれば、本発明は複数のストレージ装置が保有する記憶資源を有効に利用することができるストレージシステムの制御方法、ストレージシステム、及びストレージ装置を提供することができる。
【図面の簡単な説明】
【図１】本実施の形態に係る、ストレージシステムのハードウェア構成を示すブロック図である。
【図２】本実施の形態に係る、データの入出力要求のコマンドフォーマットの一例を示す図である。
【図３】本実施の形態に係る、ストレージシステムのデータの書き込み処理の一例を説明するフローチャートである。
【図４】本実施の形態に係る、データ管理テーブルの一例を示す図である。
【図５】本実施の形態に係る、第一のストレージ装置の論理ボリュームの空き容量管理テーブルの一例を示す図である。
【図６】本実施の形態に係る、第二のストレージ装置の論理ボリューム管理テーブルの一例を示す図である。
【図７】本実施の形態に係る、貸し出し可能な論理ボリューム管理テーブルの一例を示す図である。
【図８】本実施の形態に係る、ストレージシステムのデータの読み出し処理の一例を説明するフローチャートである。
【図９】本実施の形態に係る、ストレージシステムのデータの書き戻し処理の一例を説明するフローチャートである。
【図１０】本実施の形態に係る、ストレージシステムの全体構成の例を示すブロック図である。
【図１１】本実施の形態に係る、ストレージシステムの全体構成の例を示すブロック図である。
【図１２】本実施の形態に係る、第一のストレージ装置の論理ボリュームの空き容量管理テーブルの一例を示す図である。
【図１３】本実施の形態に係る、第二のストレージ装置の論理ボリューム管理テーブルの一例を示す図である。
【図１４】本実施の形態に係る、貸し出し可能な論理ボリューム管理テーブルの一例を示す図である。
【図１５】本実施の形態に係る、記憶領域借用情報の一例を示す図である。
【符号の説明】
１００，１１００  第一のストレージ装置
２００，１２００  第二のストレージ装置
１１０，２１０    チャネル制御部
１２０，２２０    共有メモリ
１３０，２３０    キャッシュメモリ
１４０，２４０    ディスク制御部
１５０，２５０    接続部
１６０，２６０    論理ボリューム（ＬＵ）
１７０，２７０    ＬＡＮアダプタ
３００，７００，７１０，７２０    ＳＡＮ
４００    情報処理装置
５００    ＬＡＮ
６００    管理コンピュータ
８００    ストレージシステム
１３００  第三のストレージ装置
１４００  第四のストレージ装置
【図１】
2005004349.tif 000003
【図２】
2005004349.tif 000004
【図３】
2005004349.tif 000005
【図４】
2005004349.tif 000006
【図５】
2005004349.tif 000007
【図６】
2005004349.tif 000008
【図７】
2005004349.tif 000009
【図８】
2005004349.tif 000010
【図９】
2005004349.tif 000011
【図１０】
2005004349.tif 000012
【図１１】
2005004349.tif 000013
【図１２】
2005004349.tif 000014
【図１３】
2005004349.tif 000015
【図１４】
2005004349.tif 000016
【図１５】
2005004349.tif 000017