(57)【要約】【課題】  記憶装置からメモリにデータを読出してコピーする方法とは別の方法で、他の記憶装置にデータをコピーする。【解決手段】  ストレージシステムは、キャッシュメモリと、メモリに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備える。ストレージシステムは、書込み対象データを受信する都度、その書込み対象データをキャッシュメモリを介してコピー元記憶装置に書くと共に、受信した書込み対象データをサイドファイルにも書く。ストレージシステムは、或るタイミングで、サイドファイルに蓄積された複数の書込み対象データを他のストレージシステムに送信する。それにより、他のストレージシステム内のコピー先記憶装置に、コピー元記憶装置に記憶された複数の書込み対象データが書込まれる。【選択図】図２
2006260355.tif 000002
【特許請求の範囲】
【請求項１】
アクセス要求を発行する要求発行元とコピー先記憶装置を備えた他のストレージシステムとの両方に通信可能に接続することができるストレージシステムにおいて、
コントローラと、
キャッシュメモリを含んだ一以上のメモリと、
前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、
コピー元記憶装置と
を備え、
前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行し、
前記コントローラが、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを前記他のストレージシステムに送信することで、前記コピー元記憶装置に記憶された複数の書込み対象データが前記コピー先記憶装置に書込まれるようにする、
ストレージシステム。
【請求項２】
前記サイドファイルは、前記キャッシュメモリに用意されている、
請求項１記載のストレージシステム。
【請求項３】
前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を、前記要求発行元及び／又はそれを制御する発行元コントローラに知らしめる、
請求項１記載のストレージシステム。
【請求項４】
前記コントローラは、前記サイドファイルの使用状況のチェックを行い前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめるということを、定期的に実行する、
請求項３記載のストレージシステム。
【請求項５】
前記コントローラは、所定のイベントを検出した場合に、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめる、
請求項３記載のストレージシステム。
【請求項６】
前記コントローラは、前記所定のイベントがなくなったことを検出した場合に、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめることをやめる、
請求項５記載のストレージシステム。
【請求項７】
前記コントローラは、前記チェックされた使用状況を、前記受信されたアクセス要求に対する応答にセットし、前記使用状況がセットされた応答を、前記要求発行元及び／又は前記発行元コントローラに返送する、
請求項３記載のストレージシステム。
【請求項８】
前記コントローラは、前記アクセス要求のうち読出し要求ではなく書込み要求の前記要求発行元及び／又は前記発行元コントローラに、前記チェックされた使用状況を知らしめる、
請求項３記載のストレージシステム。
【請求項９】
前記要求発行元は、アクセス要求を発行するアプリケーションプログラムであり、
前記ストレージシステムは、前記アプリケーションプログラムと前記アプリケーションプログラムを制御する制御プログラムとを備えたホスト装置に通信可能に接続しており、
前記コントローラは、前記チェックされた使用状況を前記制御プログラムに知らしめる、
請求項３記載のストレージシステム。
【請求項１０】
前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況に応じて、前記要求発行元を制御する、
請求項１記載のストレージシステム。
【請求項１１】
アクセス要求を発行する要求発行元と、
コピー先記憶装置を備えた他のストレージシステムと、
前記要求発行元と前記他のストレージシステムとの両方に通信可能に接続されたストレージシステムと
を備え、
前記ストレージシステムは、
コントローラと、
キャッシュメモリを含んだ一以上のメモリと、
前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、
コピー元記憶装置と
を備え、
前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行し、
前記ストレージシステム及び前記他のストレージシステムの少なくとも一方が、前記サイドファイルに蓄積された複数の書込み対象データを前記コピー先記憶装置に書込む、
システム。
【請求項１２】
前記サイドファイルは、前記キャッシュメモリに用意されている、
請求項１１記載のシステム。
【請求項１３】
前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめ、
前記要求発行元及び／又は前記発行元コントローラは、前記チェックされた使用状況に応じた処理を実行する、
請求項１１記載のシステム。
【請求項１４】
前記発行元コントローラは、前記チェックされた使用状況を受け、その使用状況に基づいて、自分の制御対象である前記要求発行元を制御する、
請求項１３記載のシステム。
【請求項１５】
前記ストレージシステムは、ホスト装置と通信可能に接続しており、
前記ホスト装置は、前記要求発行元であるアプリケーションプログラムと、前記発行元コントローラである制御プログラムと、記憶資源とを備え、
前記記憶資源には、前記使用状況がどんな場合にどのアプリケーションプログラムに対してどんな処理を実行させるかを表す対処情報が記憶されており、
前記制御プログラムは、前記受けた使用状況と前記記憶資源内の対処情報とに基づいて、前記アプリケーションプログラムを制御する、
請求項１４記載のシステム。
【請求項１６】
前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況に応じて、前記要求発行元を制御する、
請求項１１記載のシステム。
【請求項１７】
ストレージシステムに通信可能である装置において、
アクセス要求を発行する要求発行元から前記アクセス要求を受信する前記ストレージシステムは、
コントローラと、
キャッシュメモリを含んだ一以上のメモリと、
前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、
コピー元記憶装置と
を備え、
前記アクセス要求は、読出し要求又は書込み要求であり、
前記要求発行元は、前記書込み要求を発行する場合には書込み対象データも発行し、
前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行し、
前記ストレージシステム及び前記他のストレージシステムのうちの少なくとも一方により、前記サイドファイルに蓄積された複数の書込み対象データが、他のストレージシステム内のコピー先記憶装置に書込まれ、
前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記装置に知らしめ、
前記装置が、
前記チェックされた使用状況に応じた処理を前記要求発行元に対して実行する、
装置。
【請求項１８】
ストレージシステムが要求発行元から書込み要求及び書込み対象データを受信し、
前記受信が行われる都度に、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを、前記ストレージシステムに備えられるキャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを、前記ストレージシステムに備えられるコピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを、前記ストレージシステムに備えられる一以上のメモリに用意された記憶域であるサイドファイルに書込む処理、
を実行し、
或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを、前記ストレージシステムの他のストレージシステムに送信し、
前記送信された複数の書込み対象データを、前記他のストレージシステムに備えられたコピー先記憶装置に書込む、
記憶制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの記憶技術に関する。
【背景技術】
【０００２】
例えば、特許文献１に開示のデータコピー方法が知られている。コピー元は、記憶サブシステムであり、その記憶サブシステムには、メモリを含んだ記憶制御機構６５と、記憶装置６１とが備えられている。コピー先は、記憶サブシステムの外部に存在する他の記憶装置である。
【０００３】
記憶サブシステムは、コピーセッション中にコピー元の記憶装置６１における或るトラックがアプリケーション６７によって更新される場合、そのトラック内の更新前のデータを、サイドファイルとして、記憶制御機構６５におけるメモリに移す。そして、記憶サブシステムは、メモリに移されたサイドファイル（更新前のデータ）を他の記憶装置にコピーする。
【０００４】
【特許文献１】特開平６−８３６７７号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述したデータコピー方法では、記憶装置からメモリにデータを移すために、記憶装置からデータを読出す必要が出るので、コピーの終了までに長い時間がかかる可能性がある。そのため、上記の方法とは別の方法で、データのコピーを行うのが好ましい。
【０００６】
従って、本発明の一つの目的は、記憶装置からメモリにデータを読出してコピーする方法とは別の方法で、他の記憶装置にデータをコピーすることにある。
【０００７】
本発明の他の目的は、後の説明から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本発明の第一の側面に従うストレージシステムは、アクセス要求を発行する要求発行元とコピー先記憶装置を備えた他の（例えば外部の）ストレージシステムとの両方に通信可能に接続することができる。ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置（例えば、物理的又は論理的な記憶装置）とを備える。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記コントローラが、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを前記他のストレージシステムに送信する。それにより、前記コピー元記憶装置に記憶された複数の書込み対象データが前記コピー先記憶装置に書込まれる。
【０００９】
一つの実施態様では、前記サイドファイルは、前記キャッシュメモリに用意されてもよい。
【００１０】
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を、前記要求発行元及び／又はそれを制御する発行元コントローラに知らしめることができる。
【００１１】
ここで、「知らしめる」とは、例えば、チェックされた使用状況を通知すること、又は、所定の場所に登録された使用状況を前記要求発行元及び／又はそれを制御する発行元コントローラに読出させることである。
【００１２】
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況のチェックを行い前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめるということを、定期的に実行することができる。
【００１３】
一つの実施態様では、前記コントローラは、所定のイベントを検出した場合に、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめることができる。
【００１４】
一つの実施態様では、前記コントローラは、前記所定のイベントがなくなったことを検出した場合に、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめることをやめることができる。
【００１５】
一つの実施態様では、前記コントローラは、前記チェックされた使用状況を、前記受信されたアクセス要求に対する応答にセットし、前記使用状況がセットされた応答を、前記要求発行元及び／又は前記発行元コントローラに返送することができる。
【００１６】
一つの実施態様では、前記コントローラは、前記アクセス要求のうち読出し要求ではなく書込み要求の前記要求発行元及び／又は前記発行元コントローラに、前記チェックされた使用状況を知らしめることができる。
【００１７】
一つの実施態様では、前記要求発行元は、アクセス要求を発行するアプリケーションプログラムであってもよい。前記ストレージシステムは、前記アプリケーションプログラムと前記アプリケーションプログラムを制御する制御プログラムとを備えたホスト装置に通信可能に接続していてもよい。前記コントローラは、前記チェックされた使用状況を前記制御プログラムに知らしめることができる。
【００１８】
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況に応じて、前記要求発行元を制御することができる。具体的には、例えば、前記コントローラは、サイドファイルの使用状況が悪い状況になってしまっている（例えば、空きが少なくなっていきている）場合には、その使用状況が改善されるような処理（例えば、書込み対象データを前記ストレージシステムに送信しない）を前記要求発行元に行わせることができる。
【００１９】
本発明の第二の側面に従うシステムは、アクセス要求を発行する要求発行元と、コピー先記憶装置を備えた他のストレージシステムと、前記要求発行元と前記他のストレージシステムとの両方に通信可能に接続されたストレージシステムとを備える。前記ストレージシステムは、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備える。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記ストレージシステム及び前記他のストレージシステムの少なくとも一方が、前記サイドファイルに蓄積された複数の書込み対象データを前記コピー先記憶装置に書込む。
【００２０】
一つの実施態様では、前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記要求発行元及び／又は前記発行元コントローラに知らしめることができる。前記要求発行元及び／又は前記発行元コントローラは、前記チェックされた使用状況に応じた処理を実行することができる。
【００２１】
一つの実施態様では、前記発行元コントローラは、前記チェックされた使用状況を受け、その使用状況に基づいて、自分の制御対象である前記要求発行元を制御することができる。
【００２２】
一つの実施態様では、前記ストレージシステムは、ホスト装置と通信可能に接続していてもよい。前記ホスト装置は、前記要求発行元であるアプリケーションプログラムと、前記発行元コントローラである制御プログラムと、記憶資源とを備えることができる。前記記憶資源には、前記使用状況がどんな場合にどのアプリケーションプログラムに対してどんな処理を実行させるかを表す対処情報が記憶されていてもよい。前記制御プログラムは、前記受けた使用状況と前記記憶資源内の対処情報とに基づいて、前記アプリケーションプログラムを制御することができる。
【００２３】
本発明の第三の側面に従う装置は、ストレージシステムに通信可能である装置である。前記ストレージシステムは、アクセス要求を発行する要求発行元から前記アクセス要求を受信するものであり、コントローラと、キャッシュメモリを含んだ一以上のメモリと、前記一以上のメモリの少なくとも一つに用意された記憶域であるサイドファイルと、コピー元記憶装置とを備える。前記アクセス要求は、読出し要求又は書込み要求である。前記要求発行元は、前記書込み要求を発行する場合には書込み対象データも発行する。前記ストレージシステムが書込み対象データ及び書込み要求を前記要求発行元から受信する都度に、前記コントローラが、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを前記キャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを前記コピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを前記サイドファイルに書込む処理、
を実行する。前記ストレージシステム及び前記他のストレージシステムのうちの少なくとも一方により、前記サイドファイルに蓄積された複数の書込み対象データが、他のストレージシステム内のコピー先記憶装置に書込まれる。前記コントローラは、前記サイドファイルの使用状況をチェックし、前記チェックされた使用状況を前記装置に知らしめる。前記装置は、前記チェックされた使用状況に応じた処理を前記要求発行元に対して実行する。
【００２４】
本発明の第四の側面に従う記憶制御方法は、ストレージシステムが要求発行元から書込み要求及び書込み対象データを受信し、前記受信が行われる都度に、以下の（１）乃至（３）の処理、
（１）前記受信された書込み対象データを、前記ストレージシステムに備えられるキャッシュメモリに書込む処理、
（２）前記キャッシュメモリから前記書込み対象データを読出し、前記読出された書込み対象データを、前記ストレージシステムに備えられるコピー元記憶装置に書込む処理、
（３）前記キャッシュメモリに書き込まれる書込み対象データを、前記ストレージシステムに備えられる一以上のメモリに用意された記憶域であるサイドファイルに書込む処理、
を実行し、或るタイミングで、前記サイドファイルに蓄積された複数の書込み対象データを、前記ストレージシステムの他のストレージシステムに送信し、前記送信された複数の書込み対象データを、前記他のストレージシステムに備えられたコピー先記憶装置に書込む。
【００２５】
上述したコントローラ、発行元コントローラ及び装置のうちの少なくとも一つは、ハードウェア、コンピュータプログラム又はそれらの組み合わせにより構築することができる。コンピュータプログラムは、所定のプロセッサに読み込まれて実行される。また、コンピュータプログラムがプロセッサに読み込まれて行われる情報処理の際、適宜に、メモリ等のハードウェア資源上に存在する記憶域が使用されてもよい。
【発明を実施するための最良の形態】
【００２６】
図１は、本発明の一実施形態に係るシステムのハードウェア構成の概要を示す。
【００２７】
ＬＡＮ（Local Area Network）等の通信ネットワーク２に、システム管理者用端末３と、一又は複数（説明の便宜上二台とする）の業務サーバ５Ａ及び５Ｂと、管理サーバ７と、複数（説明の便宜上二台とする）のストレージシステム９Ａ及び９Ｂとが接続されている。従って、各装置３、５Ａ、５Ｂ、７、９Ａ又は９Ｂは、通信ネットワーク２を介して、他の装置３、５Ａ、５Ｂ、７、９Ａ又は９Ｂと通信可能である。また、複数の業務サーバ５Ａ及び５Ｂと、複数のストレージシステム９Ａ及び９Ｂとが、ＳＡＮ（Storage Area Network）６に接続されている（ＳＡＮ６に代えて他の通信ネットワークでも良い）。また、ストレージシステム９Ａが別のストレージシステム９Ｂに専用線（例えばファイバチャネルケーブル）４を介して接続されている（専用線４は無くても良い）。
【００２８】
システム管理者用端末３、業務サーバ５Ａ及び５Ｂ、及び管理サーバ７は、どれも実質的に同じ構成を採用することができる。そのため、業務サーバ５Ａを代表的に例に採り説明する。業務サーバ５Ａは、例えば、一以上のＣＰＵ（Central Processing Unit）２０５や記憶資源（例えば一以上のメモリ２０７及び／又は一以上のハードディスクドライブ（ＨＤＤ）２０９）等のハードウェア資源を備えたコンピュータシステムである。業務サーバ５Ａは、例えば、パーソナルコンピュータ、ワークステーション、サーバマシン、メインフレーム等として構成することができる。また、業務サーバ５Ａは、例えば、キーボードスイッチやポインティングデバイス、マイクロフォン等の情報入力装置（図示せず）と、例えば、モニタディスプレイやスピーカー等の情報出力装置（図示せず）とを備えることもできる。
【００２９】
ストレージシステム９Ａ及び９Ｂは、どれも実質的に同じ構成を採用することができる。そのため、ストレージシステム９Ａを代表的に例に採り説明する。ストレージシステム９Ａは、ストレージ制御装置２１Ａと、一又は複数の記憶装置（例えばＨＤＤ）３０９とを備える。ストレージ制御装置２１Ａは、ストレージシステム９Ａの動作を制御する装置であり、一以上のＣＰＵ３０５や、一以上の制御メモリ３０７や、一以上のキャッシュメモリ３０８を備えることができる。制御メモリ３０７は、ストレージシステム９Ａが行う処理の制御に必要とされる情報（例えば図２に記載されている構成情報２６Ａ）を記憶するためのメモリである。キャッシュメモリ３０８は、業務サーバ５Ａ又は５Ｂと記憶装置３０９との間でやり取りされるデータを一時的に記憶するためのメモリである。制御メモリ３０７とキャッシュメモリ３０８は、必ずしも別々のメモリである必要はなく、例えば、同一のメモリ上で、制御メモリ領域とキャッシュメモリ領域とが用意される方法が採用されても良い。また、複数の記憶装置はRAID構成が採用されてもよい。
【００３０】
上記のハードウェア構成の下で、例えば、ストレージシステム９Ａは、専用線４、ＳＡＮ６又は通信ネットワーク２を介して、他のストレージシステム９Ｂにデータを送信することができる。
【００３１】
また、例えば、業務サーバ５Ａは、データの書き込み要求又はデータの読み出し要求であるアクセス要求を、ストレージシステム９Ａに発行し、そのアクセス要求を受けたストレージシステム９Ａが、そのアクセス要求を処理することができる。具体的には、例えば、アクセス要求がデータの書き込み要求の場合、ストレージシステム９ＡのＣＰＵ３０５が、その書き込み要求に従って、業務サーバ５Ａからのデータをキャッシュメモリ３０８に書き込み、キャッシュメモリ３０８に書かれたデータを読み出して記憶装置３０９に書き込むことができる。また、例えば、アクセス要求がデータの読み出し要求の場合、ストレージシステム９Ａ内のＣＰＵ３０５が、その読み出し要求に従って、記憶装置３０９からデータを読み出してキャッシュメモリ３０８に書き込み、キャッシュメモリ３０８に書かれたデータを、キャッシュメモリ３０８から読み出し、読み出し要求の発行元である業務サーバ５Ａに送信することができる。
【００３２】
図２は、本発明の一実施形態に係るシステムの各構成要素の機能を説明するためのブロック図である。
【００３３】
システム管理者用端末３は、この実施形態に係るシステムの管理者（以下、システム管理者）が使用する端末である。システム管理者用端末３は、ストレージ管理プログラム１５から送信された情報を受信し、受信した情報を、自分が有するディスプレイ画面に表示することができる。ストレージ管理プログラム１５から送信される情報には、例えば、アプリケーションプログラム（以下、ＡＰ）１３Ａ、１３Ｂ又は１３Ｃの稼動情報、後述する管理テーブル４１に書かれるコピーペア状態、及び／又は、後述する履歴情報テーブル４５に書かれている情報がある。
【００３４】
各業務サーバ５Ａ、５Ｂには、例えば、ＣＰＵ２０５に読み込まれて動作する複数のコンピュータプログラムが備えられる。複数のコンピュータプログラムには、一以上のＡＰと、ジョブ制御プログラムとが含まれる。本実施形態では、業務サーバ５Ａには、一つのＡＰ１３Ａと、ジョブ制御プログラム１１Ａとが備えられる。業務サーバ５Ｂには、二つのＡＰ１３Ｂ、１３Ｃと、ジョブ制御プログラム１１Ｂとが備えられる。業務サーバ５Ａを代表的に例に採り説明する。
【００３５】
ＡＰ１３Ａは、ストレージシステム９Ａ（又は９Ｂ）にアクセス要求を発行する。それにより、ＡＰ１３Ａから送信されたデータがストレージシステム９Ａ（又は９Ｂ）内の論理ボリューム２９Ａ（又は２９Ｂ）に書き込まれたり、その論理ボリューム２９Ａ（又は２９Ｂ）からデータが読み出され、読み出されたデータをＡＰ１３Ａが受信したりする。
【００３６】
ジョブ制御プログラム１１Ａは、業務サーバ５Ａ上で稼動しているＡＰ１３Ａを制御することができる（例えば、ＡＰ１３Ａの起動及び／又は停止を実行することができる）プログラムである。ジョブ制御プログラム１１Ａは、ストレージ管理プログラム１５のエージェント的なプログラムであってもよく、ストレージ管理プログラム１５からの指令に従って、ＡＰ１３Ａの制御を行なうことができる。また、ジョブ制御プログラム１１Ａは、業務サーバ５Ａのオペレーティングシステムであってもよい。
【００３７】
管理サーバ７は、業務サーバ５Ａ、５Ｂ、ストレージシステム９Ａ及び９Ｂを管理することができるサーバである。管理サーバ７の記憶資源１９は、例えば、管理テーブル４１、対処情報テーブル４３及び履歴情報テーブル４５を記憶することができる。また、管理サーバ７には、ストレージ管理プログラム１５が備えられている。
【００３８】
管理テーブル４１には、業務サーバ５Ａ、５Ｂ、ストレージシステム９Ａ及び９Ｂを管理するための情報が書かれる。具体的には、例えば、管理テーブル４１には、どのアプリケーションがどの論理ボリューム（以下、論理ボリュームを「ＶＯＬ」と表すことがある）にアクセスすることができるかや、どのＶＯＬとどのＶＯＬがペアを構成するかや、そのペアのステータスはどうなっているかを表す情報が書かれる。より具体的には、例えば、図３Ａに例示するように、管理テーブル４１には、ＡＰのＩＤ（例えば名称）と、そのＡＰを備える業務サーバのＩＤ（例えば名称）と、そのＡＰがアクセス可能なプライマリの論理ボリューム（以下、ＰＶＯＬ）のＩＤ（例えば番号）と、そのＰＶＯＬ（換言すればコピー元のＶＯＬ）を備えるストレージシステムのＩＤ（例えば番号）と、そのＰＶＯＬとペアを構成するセカンダリＶＯＬ（以下、ＳＶＯＬ）のＩＤ（例えば番号）と、そのＳＶＯＬを備えるストレージシステムのＩＤ（例えば番号）と、そのペアのステータスであるコピーペア状態とが書かれる。コピーペア状態には、例えば、ＰＶＯＬに格納されるデータをＳＶＯＬにコピーすることができる状態である「稼動中」と、それができない状態である「停止中」とがある。
【００３９】
対処情報テーブル４３には、後述するサイドファイル２７Ａの使用状況とその状況に応じた対処処理内容とが書かれる。具体的には、例えば、対処情報テーブル４３には、どのＡＰがサイドファイルの使用率がどんな場合にどんな対処処理が実行されるべきかを表す情報が書かれている。より具体的には、例えば、図３Ｂに例示するように、対処情報テーブル４３には、ジョブ制御プログラムによって制御されるＡＰのＩＤと、サイドファイル２７Ａの使用率の閾値（以下、使用率閾値）と、実際のサイドファイル２７Ａの使用率がその使用率閾値を超えていた場合にジョブ制御プログラムがＡＰに実行させる対処処理の内容とが書かれる。なお、図３Ｂにおいて、閾値に「−」が設定されていた場合、サイドファイル２７Ａの実際の使用率に関わらず、処理を実行しない。サイドファイルについては後に詳述する。
【００４０】
履歴情報テーブル４５には、管理サーバ７が実行した（例えばＡＰに実行させた）対処処理に関する履歴が書かれる。具体的には、例えば、図３Ｃに例示するように、履歴情報テーブル４５には、履歴を特定するための履歴番号と、管理サーバ７が実行した対処処理と、その対処処理の実行対象と、その対処処理の実行結果と、その対処処理を実行した時刻とが書かれる。
【００４１】
ストレージ管理プログラム１５は、この実施形態に係るシステム全体の制御を行なうことができるプログラムである。ストレージ管理プログラム１５は、例えば、ストレージシステム９Ａ、９Ｂに対して、コピーペアの制御（例えば、コピーペア状態を「稼動中」にするか「停止中」にするか）を指示することができる。また、ストレージ管理プログラム１５は、所定の又はシステム管理者任意のタイミング（例えば、定期的又は不定期的に）、ストレージシステム９Ａ、９Ｂの構成情報２６Ａ、２６Ｂや動作情報を取得することができる。
【００４２】
ストレージシステム９Ａも９Ｂも実質的に同じ構成を採用することができるので、ストレージシステム９Ａを代表的に例に採り説明する。ストレージシステム９Ａのストレージシステム９Ａの複数の記憶装置３０９には、一又は複数のＶＯＬ２９Ａが儲けられる。ＶＯＬ２９Ａは、他のＶＯＬとペアが構成された場合、ＰＶＯＬとＳＶＯＬのどちらにもなることができるが、以下、説明をわかりやすくするためにＰＶＯＬとする（一方、ストレージシステム９Ｂ内のＶＯＬ２９ＢはＳＶＯＬとする）。ＰＶＯＬ２９Ａは、例えば、業務サーバ５Ａ又は５Ｂで稼動しているＡＰ１３Ａ、１３Ｂ又は１３Ｃによって使用されるデータを記憶することができる。
【００４３】
また、ストレージシステム９Ａには、サイドファイル２７Ａという記憶領域が用意される。この実施形態で言う「サイドファイル」とは、業務サーバ５Ａ、５ＢからのＰＶＯＬ２９Ａに対するデータの非同期型リモートコピーのために使用される記憶領域である。「非同期型リモートコピー」とは、ＰＶＯＬ２９Ａにデータを書き込むタイミングとは別のタイミングで、他のストレージシステム９Ｂ内のＳＶＯＬ２９Ｂ（そのＰＶＯＬ２９Ａとペアを構成するＳＶＯＬ２９Ｂ）に、ＰＶＯＬ２９Ａに書き込むデータをコピーすることである。サイドファイル２７Ａは、ＰＶＯＬ２９Ａに書き込まれるデータを一時的に記憶するための記憶領域とされる。サイドファイル２７Ａには、Ｎ個（Ｎは一以上の整数）のデータがＰＶＯＬ２９Ａに書き込まれる場合にはそれらＮ個のデータの全てが書き込まれる。サイドファイル２７Ａは、ストレージシステム９Ａ内の記憶資源のどこに用意されてもよいが、本実施形態では、キャッシュメモリ３０８に用意される。従って、キャッシュメモリ３０８には、業務サーバ５Ａ、５ＢとＰＶＯＬ２９Ａとの間でやり取りされるデータが一時的に記憶される領域（以下、「メイン領域」と言う）２８Ａと、サイドファイル２７Ａとが含まれることになる。ＰＶＯＬ２９Ａと業務サーバ５Ａ、５Ｂとの間でやり取りされるデータは、メイン領域２８Ａに一時的に格納されるが、本実施形態では、そのメイン領域２８Ａに書かれたデータはサイドファイル２７Ａにも書き込まれる。メイン領域２８Ａに書かれたデータは、例えば、ＰＶＯＬ２９Ａとサイドファイル２７Ａとの両方に書き込まれた場合に、メイン領域２８Ａから削除されてもよいが、サイドファイル２７Ａに書かれたデータは、少なくともＳＶＯＬ２９Ｂへのコピーが完了するまでは、削除されない。サイドファイル２７Ａへのデータの書込みや、サイドファイル２７Ａから他のストレージシステム９Ｂ内へのリモートコピーについては、後に詳述する。また、ＰＶＯＬ２９Ａに書き込まれた順序でＳＶＯＬ２９Ｂにもデータが書かれるようにするため、制御プログラム２３Ａは、リモートコピーでは、データの書込み順序を特定させられるような情報もコピー先のストレージシステム９Ｂに送るが、これについても後に詳述する。
【００４４】
ストレージ制御装置２１Ａの記憶資源（例えば図１の制御メモリ３０７）には、構成情報２６Ａが記憶される。ストレージ制御装置２１Ａには、ＣＰＵ３０５に読み込まれて動作する複数のコンピュータプログラムが備えられる。それら複数のコンピュータプログラムには、例えば、制御プログラム２３Ａと通知プログラム２５Ａとがある。
【００４５】
構成情報２６Ａは、ストレージシステム９Ａ内の構成に関する情報である。具体的には、例えば、構成情報２６Ａは、どのＶＯＬとどのＶＯＬがペアを構成するかや、そのペアのステータスはどうなっているかを表す情報が書かれる。より具体的には、例えば、構成情報２６Ａは、図３Ａに例示した管理テーブル４１からアプリケーションＩＤ及び業務サーバＩＤを除いた情報を含んでいる。
【００４６】
制御プログラム２３Ａは、ストレージ制御装置２１Ａの動作を制御することができるプログラム（例えばオペレーティングシステム）である。具体的には、例えば、制御プログラム２３Ａは、アクセス要求を受信したり、受信したアクセス要求に基づいて業務サーバ５Ａ、５ＢとＰＶＯＬ２９Ａとの間のキャッシュメモリ３０８Ａを介してのデータのやり取りを制御したりすることができる。また、例えば、制御プログラム２３Ａは、ＰＶＯＬ２９Ａに書き込まれるデータをサイドファイル２７Ａに書込んだり、構成情報２６Ａを参照することにより、どのＰＶＯＬ２９Ａに対してどのＳＶＯＬ２９Ｂが対応しているかを特定し、サイドファイル２７Ａに蓄積されたデータを他のストレージシステム９Ｂ内の上記特定されたＳＶＯＬ２９Ｂに書き込んだりすることができる。また、例えば、制御プログラム２３Ａは、アクセス要求を受けた場合にそのアクセス要求に関する情報を所定の記憶域（以下、アクセス履歴記憶域）２４に書き込むこともできる。アクセス履歴記憶域２４には、例えば、各アクセス要求毎に、そのアクセス要求を受信した時刻や、そのアクセス要求の種別（例えば、読出し要求と書込み要求のどちらであるか）や、そのアクセス要求の発行元（業務サーバ又はＡＰ）のＩＤ（例えばＷＷＮ（World Wide Name））がある。
【００４７】
通知プログラム２５Ａは、サイドファイル２７Ａの使用率（以下、「サイドファイル使用率」と言う）を業務サーバ５Ａ、５Ｂに通知することができるプログラムである。具体的には、例えば、通知プログラム２５Ａは、第一のタイミングで、サイドファイル使用率をチェックし、第二のタイミングで、チェックされたサイドファイル使用率を、特定の宛先に通知することができる。なお、「第一のタイミング」としては、例えば、（Ａ）定期的に、（Ｂ）不定期的に、又は、（Ｃ）ストレージ制御装置２１Ａが書込み要求を受信したとき、のうちの少なくとも一つを採用することができる。また、「第二のタイミング」としては、例えば、（ａ）第一のタイミングの直後（例えば実質的に直後）、（ｂ）所定のイベントの発生が検出されたとき（例えば、チェックされたサイドファイル使用率が所定の値（例えば５０％）を超えていたとき）、（ｃ）業務サーバ５Ａ、５Ｂから受信した書込み要求に対する応答が返送されるとき、の少なくとも一つを採用することができる。（ｂ）のタイミングが採用される場合、例えば、SNMP（Simple Network Management Protocol）トラップ送信のようにイベントドリブンで通知が行われてもよい。また、この場合、所定のイベントが検出できている間は、サイドファイル使用率を通知するようにし（例えば定期的に通知するようにし）、所定のイベントがなくなったことが検出されたならば（例えば、サイドファイル使用率が所定の値以下になったならば）、サイドファイル使用率の通知をやめることができる。（ｃ）において、応答は、例えば、書込み要求の受信直後に返されても良いし、書込み要求に従うデータがキャッシュメモリ３０８Ａに書かれたときに返されても良い。（ｃ）のタイミングが採用される場合、通知プログラム２５Ａは、その応答に、チェックされたサイドファイル使用率を埋め込むことができる。それにより、サイドファイル使用率が埋め込まれた応答が業務サーバ５Ａ、５Ｂ（例えば、ＡＰ１３Ａ及び／又は制御プログラム１１Ａ）に返送される。サイドファイル使用率は、上記所定のタイミングで、通知プログラム２５Ａ或いは制御プログラム２３Ａ等のコンピュータプログラムによって算出されてもよい。通知プログラム２５Ａは、算出されたサイドファイル使用率をチェックすることができる。また、サイドファイル使用率の通知先となる「特定の宛先」としては、例えば、業務サーバ、業務サーバ内のアプリケーション、又は、そのアプリケーションを制御するジョブ制御プログラムとすることができる。具体的には、例えば、「特定の宛先」は、サイドファイル使用率の増加を抑えることに貢献することが期待される物（例えば、サイドファイル使用率を減少することに貢献することが期待される物）とすることができる。具体的には、例えば、サイドファイル使用率を通知しようとする場合に受信された書込み要求の発行元（又はその発行元を制御する物）とすることができる。より具体的には、例えば、通知プログラム２５Ａは、上記第二のタイミングの時刻と、アクセス履歴記憶域２４に書かれている書込み要求の受信時刻とを比較し、第二のタイミングの時刻以降（例えば、第二のタイミングの時刻から所定時間内）が受信時刻になっている書込み要求の���行元又はそれを制御する物を上記特定の宛先とし、その発行元（例えばアプリケーション或いは業務サーバ）又はそれを制御する物（例えばジョブ制御プログラム或いは管理サーバ）にサイドファイル使用率を通知することができる。
【００４８】
以下、図２を参照して、本実施形態に係るシステムで行われる処理について説明する。
【００４９】
例えば、業務サーバ５Ａでは、ＡＰ１３Ａ（例えば、トランザクション業務を行うためのＡＰ）が稼働することができ、そのＡＰ１３Ａは、ジョブ制御プログラム１１Ａによって制御されるものとする。また、業務サーバ５Ｂでは、ＡＰ１３Ｂ及び１３Ｃ（例えば、いずれもバッチ業務を行うためのアプリケーション）が稼動することができ、これらは、ジョブ制御プログラム１１Ｂによって制御されるものとする。また、管理サーバ７の記憶資源１９には、管理テーブル４１、対処情報テーブル４３及び履歴情報テーブル４５が予め用意されているものとする。管理サーバ７におけるストレージ管理プログラム１５は、ストレージシステム９Ａ、９Ｂ内の構成情報２６Ａ、２６Ｂを所定のタイミングで（例えば定期的に）ストレージシステム９Ａ、９Ｂから取得し、取得した構成情報２６Ａ、２６Ｂに基づいて、管理テーブル４１を更新することができる。また、通知プログラム２５Ａによるサイドファイル使用率のチェックは、定期的に行われるものとし（つまり上記（Ａ）のタイミングで行われるものとし）、サイドファイル使用率の通知も、定期的に行われる（つまり上記（ｂ）のタイミングで行われる）ものとする。
【００５０】
このような環境の下で、例えば、以下のようなステップＳ１乃至Ｓ７の処理が行われる。
【００５１】
ステップＳ１
業務サーバ５Ａ上のジョブ制御プログラム１１Ａは、所定のタイミングで（例えば、ＡＰ１３Ａを起動したときに）、管理サーバ７のストレージ管理プログラム１５から、ターゲットのＡＰに関する対処情報を取得し、取得された対処情報を、業務サーバ５Ａの記憶資源１７Ａに書き込む。これは、業務サーバ５Ｂ上のジョブ制御プログラム１１Ｂも実行することができる。ここで、「ターゲットのＡＰ」とは、例えば、ジョブ制御プログラム１１Ａにとっては、そのジョブ制御プログラム１１Ａの制御対象となるＡＰである。ジョブ制御プログラム１１Ａは、例えば、そのＡＰのＩＤに対応する対処情報（例えば、「サイドファイル使用率の閾値」及び「実行する対処処理」）をストレージ管理プログラム１５から受信し、受信した対処情報をＡＰのＩＤに対応づけて記憶資源１７Ａに書き込むことができる。
【００５２】
ステップＳ２
ＡＰ１３Ａ、１３Ｂ及び１３ＣのうちＡＰ１３Ａを代表的に例に採り説明する。ＡＰ１３Ａは、書込み対象データ及び書込み要求（書込み要求には、例えば、書込み対象データの書込み先となるＰＶＯＬ２９ＡのＩＤが含まれる）をストレージシステム９Ａに発行する。ストレージシステム９Ａのストレージ制御装置２１Ａが、書込み対象データ及び書込み要求を受信する。制御プログラム２３Ａが、受信したアクセス要求が書込み要求であること、書込み要求を受信した時刻、書込み要求の発行元のＩＤ等を、アクセス履歴記憶域２４に書き込む。また、制御プログラム２３Ａは、書込み対象データを、キャッシュメモリ３０８Ａのメイン領域２８Ａに一時記憶させ、書込み要求が済んだことを表す応答を、ＡＰ１３Ａに返す。また、制御プログラム２３Ａは、メイン領域２８Ａに記憶させた書込み対象データをメイン領域２８Ａから読出し、読出した書込み対象データをＰＶＯＬ２９Ａに書き込む。また、制御プログラム２３Ａは、所定のタイミングで（例えば、メイン領域２８Ａに書込み対象データを書き込むタイミングと実質的に同じタイミングで、或いは、書込み対象データをメイン領域２８Ａに書いた後に）、書込み対象データをサイドファイル２７Ａにも書き込む。その際、制御プログラム２３Ａは、例えば、リモートコピーではパケットの追い越し等が発生するため、複数の書込み対象データがＰＶＯＬ２９Ａにどのような順番で書き込まれたかをコピー先のストレージシステム９Ｂに理解させられるような情報を生成する。具体的には、例えば、制御プログラム２３Ａは、図３Ｄに例示するように、書込み対象データをサイドファイル２７Ａに書き込む都度、タイムスタンプを含んだ付加情報を書込み対象データに付加し、付加情報が付加された書込み対象データをサイドファイル２７Ａに書き込む。付加情報に含まれるタイムスタンプは、例えば、書込み対象データ及び書込み要求の受信時刻、或いは、キャッシュメモリ３０８Ａに書込み対象データが書かれた時刻とすることができる。また、付加情報には、更に、その付加情報が付加される書込み対象データの書込み先ＰＶＯＬ２９ＡのＩＤに対応したコピー先のＩＤ（制御プログラム２３Ａが構成情報２６Ａを参照することにより特定することができるストレージシステム及びＳＶＯＬのＩＤ）が、含まれていても良い。
【００５３】
ステップＳ３
サイドファイル２７Ａには、例えば、少なくとも、Ｍ回目（Ｍはゼロ以上の整数）のリモートコピーが行われてからＭ＋１回目のリモートコピーが行われる間にストレージ制御装置２１Ａが受信した全ての書込み対象データが蓄積されている。また、各書込み対象データには、タイムスタンプを含んだ付加情報が付加されている。制御プログラム２３Ａは、Ｍ＋１回目のリモートコピーでは、サイドファイル２７Ａに格納されている全ての書込み対象データ及び付加情報を他のストレージシステム９Ｂに転送する。その際、もし、他のストレージシステムが複数個存在する場合、どの書込み対象データ及び付加情報のセットをどの他のストレージシステムに送信するかは、例えば、付加情報に含まれている所定の情報要素（例えば、コピー先となるストレージシステム及びＳＶＯＬのＩＤ）から、特定されても良い。他のストレージシステム９Ｂのストレージ制御装置２１Ｂは、書込み対象データ及び付加情報のデータセットを複数個受信する。ストレージ制御装置２１Ｂ内の制御プログラム２３Ｂは、受信した複数のデータセット内の複数の書込み対象データを、キャッシュ領域のメイン領域２８Ｂに書き込む。制御プログラム２３Ｂは、メイン領域２８Ｂに書き込まれた複数の書込み対象データを、複数のデータセット内の複数のタイムスタンプから特定される順序で、ＳＶＯＬ２９Ｂに格納する。どの書込み対象データをどのＳＶＯＬ２９Ｂに格納するかは、例えば、付加情報に含まれている所定の情報要素（例えば、コピー先となるＳＶＯＬ２９ＢのＩＤ）から、特定することができる。
【００５４】
ステップＳ４
通知プログラム２５Ａは、定期的に、サイドファイル使用率のチェックを行い、チェックされたサイドファイル使用率を特定の宛先に通知する。ここでは、例えば、通知プログラム２５Ａは、アクセス履歴記憶域２４を参照して、サイドファイル使用率の通知を行おうとするときの時刻以降に受信した書込み要求の発行元としてＡＰ１３Ｂを特定し、特定されたＡＰ１３Ｂを制御するジョブ制御プログラム１１Ｂに、サイドファイル使用率を通知したとする。ジョブ制御プログラム１１Ｂにサイドファイル使用率を通知する場合、例えば、ＡＰ又は業務サーバのＩＤとジョブ制御プログラムのＩＤとの対応関係を表す情報が記憶された所定の記憶域を参照することにより、発行元ＡＰを制御するジョブ制御プログラム（つまり、通知先とするジョブ制御プログラム）を特定することができる。
【００５５】
ステップＳ５
業務サーバ５Ｂのジョブ制御プログラム１１Ｂは、サイドファイル使用率の通知を受ける。業務サーバ５Ｂの記憶資源１７Ｂには、例えば、使用率閾値と、それに対応する対処処理の内容を表す情報とのセットが書かれている。ジョブ制御プログラム１１Ｂは、通知されたサイドファイル使用率と、記憶資源１７Ｂに記憶されている使用率閾値との比較を行う。その比較の結果、サイドファイル使用率が使用率閾値を超えていれば、ジョブ制御プログラム１１Ｂは、その使用率閾値に対応する対処処理を実行する。具体的には、例えば、図３Ｂに例示する対処情報テーブル４３がある場合には、記憶資源１７Ｂには、ステップＳ１での処理により、ＡＰ１３Ｂ（ＩＤ「１３Ｂ」のＡＰ）について、使用率閾値「６０％」と、実行する対処処理「アプリケーション停止」とが記録され、且つ、ＡＰ１３Ｃについて、使用率閾値「７０％」と、実行する対処処理「コピーペア停止」とが記録される。ここで、サイドファイル使用率が６０％を超えているが７０％以下の場合、上記の比較により、サイドファイル使用率は使用率閾値「６０％」を超えていると判断されるので、ジョブ制御プログラム１１Ｂは、ＡＰ１３Ｂを停止する。ジョブ制御プログラム１１Ｂは、対処処理を実行した場合、実行した対処処理に関する処理結果情報（例えば、どのＡＰに対してどんな対処処理を実行しその対処処理は正常に終了したか否か）を、ストレージ管理プログラム１５に通知する。なお、通知されたサイドファイル使用率が７０％を超えている場合、上記の比較により、サイドファイル使用率は使用率閾値「７０％」を超えているとも判断されるので、ジョブ制御プログラム１１Ｂは、ＡＰ１３Ｂの停止に加えて、例えば、ＡＰ１３Ｃに関わるペアを管理テーブル４１から特定し、そのペアのコピーペア状態を停止中にするよう要求することができる。例えば、ジョブ制御プログラム１１Ｂは、管理サーバ７、ストレージシステム９Ａ又は９Ｂに要求することができる。管理サーバ７にコピーペア停止を要求した場合、管理サーバ７が、コピーペアの停止をストレージシステム９Ａ又は９Ｂに要求することができる。コピーペアの停止が要求された場合、例えば、ストレージシステム９Ａによって、そのペアのコピーペア状態が「停止中」にされ、その結果が、所定のタイミングで、管理サーバ７の管理テーブル４１に反映されてもよい。
【００５６】
ステップＳ６
ストレージ管理プログラム１５は、処理結果情報を受信し、受信した処理結果情報に含まれている情報要素を履歴情報テーブル４５に書き込む。
【００５７】
ステップＳ７
管理サーバ７のストレージ管理プログラム１５は、記憶資源１９に書かれている情報の全部又は一部を、システム管理者用端末３に送信する。送信される情報は、例えば、管理テーブル４１、対処情報テーブル４３又は履歴情報テーブル４５である。送信された情報は、システム管理者用端末３のディスプレイ画面に表示される。
【００５８】
以上の通り、ストレージシステム９Ａは、サイドファイル使用率をチェックし、チェックされたサイドファイル使用率を、特定の宛先（例えば、業務サーバ５Ａ、５Ｂ、ＡＰ１３Ａ、１３Ｂ、１３Ｃ、ジョブ制御プログラム１１Ａ、１１Ｂ及び管理サーバ７のうちの少なくとも一つ）に通知することができる。その際、ストレージシステム９Ａは、特定の状況に応じて（例えば、チェックされたサイドファイル使用率の値に応じて、又は、サイドファイル使用率の通知又はチェックを行うタイミングと書込み要求を受信したタイミングとに応じて）、複数の宛先候補の中から宛先を選択してもよい。宛先側では、通知されたサイドファイル使用率が使用率閾値を超えているか否かに基づいて、所定の対処処理を実行するか否かを制御することができる。
【００５９】
以下、上述した処理について、更に詳細に説明する。
【００６０】
図４Ａは、ステップＳ１でジョブ制御プログラムが行う処理の流れの一例を示す。
【００６１】
ジョブ制御プログラム１１Ａを代表的に例に採り説明する。ジョブ制御プログラム１１Ａは、管理サーバ７のストレージ管理プログラム１５を介し、対処情報テーブル４３の或るレコード（行）からアプリケーションＩＤを取得する（Ｓ２１）。
【００６２】
ジョブ制御プログラム１１Ａは、取得されたアプリケーションＩＤが、自分が制御するＡＰのＩＤに一致するか否かを判断する（Ｓ２２）。一致しなければ（Ｓ２２でＮＯ）、ジョブ制御プログラム１１Ａは、次のレコードを参照して（Ｓ２３）、再びＳ２１を行い、一致すれば（Ｓ２２でＹＥＳ）、そのアプリケーションＩＤに対応する「サイドファイル使用率の閾値」及び「実行する対処処理」を取得する（Ｓ２４）。ジョブ制御プログラム１１Ａは、取得した「サイドファイル使用率の閾値」及び「実行する対処処理」を、対応するアプリケーションＩＤに対応づけて、記憶資源１７Ａに書き込むことができる。
【００６３】
図４Ｂは、ステップＳ４で通知プログラムが行う処理の流れの一例を示す。
【００６４】
通知プログラム２５Ａは、サイドファイル使用率のチェック時になった場合、サイドファイル使用率のチェックを行う（Ｓ３１）。この場合、例えば、制御プログラム２３Ａが、サイドファイル使用率を算出し、算出した結果を所定の記憶域に書き、通知プログラム２５Ａが、その所定の記憶域から、算出されたサイドファイル使用率を取得してもよい。
【００６５】
通知プログラム２５Ａは、アクセス履歴記憶域２４を参照することにより、サイドファイル使用率の通知先を決定する（Ｓ３２）。具体的には、例えば、通知プログラム２５Ａは、現時点以降に受信した書込み要求の発行元ＡＰを制御するジョブ制御プログラムを通知先としてもよいし、現在処理中の（つまり書込み対象データがＰＶＯＬ２９Ａに書かれている最中の）書込み要求の発行元ＡＰを制御するジョブ制御プログラムを通知先としてもよい。
【００６６】
通知プログラム２５Ａは、決定された通知先にサイドファイル使用率を通知する（Ｓ３３）。
【００６７】
図５は、ステップＳ５でジョブ制御プログラムが行う処理の流れの一例を示す。なお、この処理流れは、「−」でない使用率閾値に対応づけられる対処処理が「アプリケーション停止」と「コピーペア停止」の二種類である場合の例である。
【００６８】
ジョブ制御プログラム１１Ｂを代表的に例に採り説明する。ジョブ制御プログラム１１Ｂは、サイドファイル使用率を受信した場合（Ｓ４１）、記憶資源１７Ｂ内の使用率閾値を取得する（Ｓ４２）。
【００６９】
次に、ジョブ制御プログラム１１Ｂは、使用率閾値が「−」であれば（Ｓ４３でＹＥＳ）、処理を終え、そうでなければ（Ｓ４３でＮＯ）、サイドファイル使用率が使用率閾値よりも大きいか否かの判断を行う（Ｓ４４）。
【００７０】
ジョブ制御プログラム１１Ｂは、Ｓ４４で否定的な判断結果が得られた場合（Ｓ４４でＮＯ）、処理を終え、そうでない場合（Ｓ４４でＹＥＳ）、その使用率閾値に対応する対処処理を特定する（Ｓ４５）。
【００７１】
特定された対処処理が「アプリケーション停止」であれば（Ｓ４６でＹＥＳ）、ジョブ制御プログラム１１Ｂは、その対処処理に対応するＡＰ１３Ｂを停止させ（Ｓ４８）、その対処処理の処理結果に関する処理結果情報をストレージ管理プログラム１５に通知する（Ｓ４９）。一方、特定された対処処理が「コピーペア停止」であれば、ジョブ制御プログラム１１Ｂは、ストレージ管理プログラム１５に、コピーペア停止を要求する（Ｓ４７）。この場合、ストレージ管理プログラム１５が、コピーペアの停止をストレージシステム９Ａ又は９Ｂに要求する。
【００７２】
図６は、ステップＳ６でストレージ管理プログラム１５が行う処理の流れの一例を示す。
【００７３】
ストレージ管理プログラム１５は、ジョブ制御プログラム１１Ｂから処理結果情報を受信し（Ｓ５１）、受信した処理結果情報に基づいて履歴情報テーブル４５を更新する（Ｓ５２）。具体的には、例えば、受信した処理結果情報には、「実行した対処処理」、「対処処理の対象」、「対処処理の実行結果」及び「対処処理を実行した時刻」という、履歴情報テーブル４５の各レコードのレコード要素が含まれている。ストレージ管理プログラム１５は、そういったレコード要素「実行した対処処理」、「対処処理の対象」、「対処処理の実行結果」及び「対処処理を実行した時刻」を、履歴情報テーブル４５に書き込む。
【００７４】
図７は、図５のＳ４７で行われる処理の流れの一例を示す。
【００７５】
ストレージ管理プログラム１５は、コピーペアの要求を受ける場合、それの要求元のジョブ制御プログラム１１Ｂから、対象となるＡＰのＩＤと、そのジョブ制御プログラム１１Ｂを備える業務サーバ５ＢのＩＤとを受ける（Ｓ６１）。
【００７６】
ストレージ管理プログラム１５は、管理テーブル４１の或るレコードから、アプリケーションＩＤ及び業務サーバＩＤを取得する（Ｓ６２でＹＥＳ、Ｓ６３）。ストレージ管理プログラム１５は、取得されたアプリケーションＩＤ及び業務サーバＩＤが、Ｓ６１受けたアプリケーションＩＤ及び業務サーバＩＤと同じであって（Ｓ６４でＹＥＳ）、それらのＩＤに対応するターゲットのコピーペア状態が「稼働中」であれば（Ｓ６５でＹＥＳ）、Ｓ６６を行う。すなわち、ストレージ管理プログラム１５は、ターゲットのコピーペア状態に対応するＰＶＯＬ及びＳＶＯＬに関する情報（ストレージシステム及びＶＯＬのＩＤ）を取得し、それらのＶＯＬから構成されるコピーペアに対してコピーペア停止処理を実行する（Ｓ６６）。具体的には、例えば、ストレージ管理プログラム１５は、ストレージシステム９Ａ及び／又は９Ｂに、そのコピーペアの停止を要求する。
【００７７】
また、ストレージ管理プログラム１５は、管理テーブルのコピーペア状態（停止要求に対応するコピーペア状態を「稼働中」から「停止中」に更新する（Ｓ６７）。この処理は、例えば、コピーペア停止の要求先のストレージシステム９Ａ及び／又は９Ｂから、コピーペア停止完了の通知をもらった場合に行うことができる。
【００７８】
Ｓ６７の後、ストレージ管理プログラム１５は、履歴情報テーブル４５を更新する（Ｓ６８）。例えば、ストレージ管理プログラム１５は、「実行した対処処理」を「コピーペア停止」とし、「対処処理の実行対象」をＳ６４で一致が得られたアプリケーションのＩＤとし、「対処処理の実行結果」を「正常終了」とし、「対処処理の実行時刻」をコピーペア停止要求を発行した時刻として、履歴情報テーブル４５を更新することができる。
【００７９】
以上、上述した実施形態によれば、ＰＶＯＬ２９Ａに書かれる書込み対象データが、キャッシュメモリ３０８Ａに用意されたサイドファイル２７Ａに書き込まれ、非同期型リモートコピーの際には、ＰＶＯＬ２９Ａからではなく、サイドファイル２７Ａから書込み対象データが読出され、読出された書込み対象データが、そのＰＶＯＬ２９Ａに対応したＳＶＯＬ２９Ｂに書かれる。これにより、リモートコピーではＰＶＯＬ２９Ａからデータを読出す必要が無いので、リモートコピーが開始されてから終了するまでの時間の短縮化が図れる。
【００８０】
また、上述した実施形態によれば、サイドファイル使用率は、ストレージシステム９Ａ、９Ｂから業務サーバ５Ａ、５Ｂに対して能動的に通知される。これにより、例えば、短時間で急激にサイドファイル使用率が増大した場合には、そのことを、業務サーバ５Ａ、５Ｂに大きな負荷をかけることなくても、業務サーバ５Ａ、５Ｂに検出させられることが期待できる。
【００８１】
また、上述した実施形態によれば、各業務サーバ５Ａ、５Ｂでは、ストレージシステム９Ａ、９Ｂから通知されたサイドファイル使用率と、自分が有する記憶資源１７Ａ、１７Ｂに設定された使用率閾値及び実行すべき対処処理とに基づいて、処理が行われる。これにより、例えば、業務の特性（一例としてバッチ処理或いはトランザクション処理）や、運用ポリシーとに応じて、各業務サーバで最適な対策を行なえることが期待できる。
【００８２】
ところで、上述した実施形態には、幾つかの変形例が考えられる。以下、その変形例について説明する。なお、以下の説明では、上述した実施形態との相違点を主に説明し、その実施形態との共通点についは説明を省略或いは簡略する。
【００８３】
（１）第一の変形例
図８Ａは、本発明の一実施形態の第一の変形例における対処情報テーブルの構成例を示す。この対処情報テーブル１０２には、アプリケーションＩＤに代えて、業務サーバＩＤが記述される。このため、サイドファイル使用率に応じた対処処理の実行対象は、ＡＰではなく、業務サーバとなる。従って、例えば、業務サーバ５Ｂ（例えば業務サーバ５Ｂのオペレーティングシステム）は、受信したサイドファイル使用率が使用率閾値「６０％」を超えている場合には、自分中で稼働している全てのアプリケーションプログラムを停止する。
【００８４】
（２）第二の変形例
図８Ｂは、本発明の一実施形態の第二の変形例における対処情報テーブルの構成例を示す。この対処情報テーブル１０３には、業務サーバＩＤ毎に、アプリケーションＩＤが記述される。このため、例えば、同一の業務サーバに同一種類のＡＰが存在しても、その同一種類のＡＰに対して異なる使用率閾値や異なる対処処理を設定することができ、故に、その同一種類のＡＰに対して、サイドファイル使用率に応じて異なる対処処理を実行させることができる。具体的には、例えば、業務サーバ５Ｂに通知されたサイドファイル使用率が使用率閾値「５０％」を超えていた場合、業務サーバ５Ｂ内のＡＰ１３Ｂに、書込み要求を送信しないようにさせ、更にサイドファイル使用率が上昇して、通知されたサイドファイル使用率が使用率閾値「７０％」を超えた場合には、アプリケーションを停止させるといった処理が可能となる。
【００８５】
（３）第三の変形例
図８Ｃは、本発明の一実施形態の第三の変形例における処理の説明図である。すなわち、通知プログラム２５Ａは、チェックされたサイドファイル使用率を使用率記憶域１０４に書き（Ｓ８１）、そこからサイドファイル使用率を読出すよう特定の宛先（例えばジョブ制御プログラム１１Ａ）に命令する（Ｓ８２）。Ｓ８２で発行された読出し命令には、例えば、読出してもらいたいサイドファイル使用率へのアクセスパス名が含まれている。その場合、その特定の宛先は、その読出し命令に従って、使用率記憶域１０４からサイドファイル使用率を読出すことができる（Ｓ８３）。なお、「特定の宛先」は、例えば、サイドファイル使用率の通知先として決定される上述した特定の宛先と同じであっても良い。
【００８６】
（４）第四の変形例
本発明の一実施形態の第四の変形例では、各業務サーバ５Ａ、５Ｂ、…が、管理テーブル４１や対処情報テーブル４３の一部を保存せず、管理サーバ７が、ストレージシステム９Ａからサイドファイル使用率の通知を受け、通知されたサイドファイル使用率と、各使用率閾値とに応じて、どの業務サーバ５Ａ及び／又はどのＡＰに対してどのような対処処理を実行させるかを制御することができる。
【００８７】
具体的には、例えば、ストレージシステム９Ａは、少なくとも管理サーバ７に、サイドファイル使用率を通知する。管理サーバ７のストレージ管理プログラム１５が、通知されたサイドファイル使用率と、対処情報テーブル４３に記録されている各使用率閾値とを比較する。ストレージ管理プログラム１５は、或る使用率閾値をサイドファイル使用率が超えている場合には、その使用率閾値に対応した対処処理とアプリケーションＩＤとを対処情報テーブル４３から特定し、そのアプリケーションＩＤのＡＰを有する業務サーバを管理テーブル４１から特定し、特定された業務サーバに、上記特定された対処処理を通知する。
【００８８】
この第四の変形例によれば、特殊な機能（例えば、サイドファイル使用率と使用率閾値とを比較する、対処処理を特定するためにテーブルを参照する等）を持ったジョブ制御プログラムを各業務サーバに搭載しなくても、サイドファイル使用率に応じて適切なアプリケーション及び／又は業務サーバに適切な対処処理を実行させることができる。
【００８９】
（５）第五の変形例
本発明の一実施形態の第五の変形例では、ストレージ制御装置２１Ａに、管理テーブル４１や対処情報テーブル４３を保存させておき、ストレージ制御装置２１Ａが、サイドファイル使用率と、各使用率閾値とに応じて、どの業務サーバ５Ａ及び／又はどのＡＰに対してどのような対処処理を実行させるかを制御することができる。
【００９０】
具体的には、例えば、ストレージ制御装置２１Ａは、サイドファイル使用率と、対処情報テーブル４３に記録されている各使用率閾値とを比較する。ストレージ制御装置２１Ａは、或る使用率閾値をサイドファイル使用率が超えている場合には、その使用率閾値に対応した対処処理とアプリケーションＩＤとを対処情報テーブル４３から特定し、そのアプリケーションＩＤのＡＰを有する業務サーバを管理テーブル４１から特定し、特定された業務サーバに、上記特定された対処処理を通知する。
【００９１】
この第五の変形例でも、特殊な機能（例えば、サイドファイル使用率と使用率閾値とを比較する、対処処理を特定するためにテーブルを参照する等）を持ったジョブ制御プログラムを各業務サーバに搭載しなくても、サイドファイル使用率に応じて適切なアプリケーション及び／又は業務サーバに適切な対処処理を実行させることができる。
【００９２】
以上、本発明の好適な実施形態及び幾つかの変形例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施形態及び変形例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【００９３】
例えば、複数の書込み対象データがＰＶＯＬ２９Ａにどのような順番で書き込まれたかをコピー先のストレージシステム９Ｂに理解させるための方法は、タイムスタンプを書込み対象データに付す方法には限られない。例えば、制御プログラム２３Ａが、サイドファイル２７Ａに蓄積された複数の書込み対象データの書込み順序を表すデータ（以下、書込み順序データ）を生成し、その書込み順序データを、複数の書込み対象データのコピー先となるストレージシステム９Ｂに送信することで、ストレージシステム９Ｂに、その書込み順序データから複数の書込み対象データの書込み順序を理解させてもよい。
【００９４】
また、例えば、ストレージ制御装置２１Ａは、非同期型リモートコピーのためにサイドファイル２７Ａからデータを読出して他のストレージシステム９Ｂに転送した後、所定のタイミングで（例えば、転送が済んだ直後、又は、所定の完了通知をストレージシステム９Ｂから受けたとき）、転送が済んだデータをサイドファイル２７Ａから削除することができる。
【００９５】
また、例えば、通知プログラム２５Ａは、サイドファイル使用率の複数のチェック結果（例えば、チェックされたサイドファイル使用率の値と、チェック時の時刻）を、所定の記憶域に蓄積していくことができる。また、例えば、通知プログラム２５Ａは、例えば所定の記憶域が満杯になったら、最古のチェック結果を消して最新のチェック結果を書くことができる。また、通知プログラム２５Ａは、所定の記憶域に記憶されている複数のチェック結果を管理サーバ７に通知することができる。管理サーバ７は、通知された複数のチェック結果をシステム管理者用端末３に送信してもよいし、各ジョブ制御プログラム１１Ａ、１１Ｂに送信してもよい。
【００９６】
また、例えば、サイドファイル使用率からサイドファイル２７Ａの空き容量が所定閾値未満になったこと（例えば、サイドファイル２７Ａの残量が僅かになったこと）がストレージ制御装置２１において検出された場合には、ストレージ制御装置２１Ａは、特定の対処処理を実行することができる。例えば、ストレージ制御装置２１Ａは、サイドファイル２７Ａにおいて転送待ちになっている書込み対象データを、サイドファイル２７Ａから論理ボリュームに移して、サイドファイル２７Ａの空き要領を増やす処理を行っても良いし、各ＡＰを停止するよう各ジョブ制御プログラムに対し命令しても良い。
【００９７】
また、上述した実施形態及び変形例では、サイドファイル２７Ａの使用状況として、「使用率」を例に採っているが、勿論、使用率に限られない。例えば、サイドファイル２７Ａに記憶されているデータの総量であっても良いし、サイドファイル２７の空き容量であっても良い。
【００９８】
また、例えば、サイドファイル２７Ａに蓄積された複数の書込み対象データのリモートコピーは、例えば、ストレージシステム９Ａがストレージシステム９Ｂに書込み要求を発行することで行われても良いし、ストレージシステム９Ｂがストレージシステム９Ｂに読出し要求を発行することで行われても良いし、ストレージシステム９Ｂが直接サイドファイル２７Ａからデータを読出すことで行われても良い。
【００９９】
また、例えば、ストレージシステム９Ａには、複数のＩＤ（例えば、アプリケーションＩＤ及び／又は業務サーバＩＤ）にそれぞれ対応付けられた複数の使用率閾値が記憶されていてもよい。その場合、通知プログラム２５Ａは、チェックされたサイドファイル使用率と各使用率閾値とを比較し、サイドファイル使用率よりも小さい使用率閾値があった場合には、その使用率閾値に対応したＩＤを有する物に、チェックされたサイドファイル使用率を通知しても良い。
【図面の簡単な説明】
【０１００】
【図１】図１は、本発明の一実施形態に係るシステムのハードウェア構成の概要を示す。
【図２】図２は、本発明の一実施形態に係るシステムの各構成要素の機能を説明するためのブロック図である。
【図３】図３Ａは、管理テーブル４１の構成例を示す。図３Ｂは、対処情報テーブル４３の構成例を示す。図３Ｃは、履歴情報テーブル４５の構成例を示す。図３Ｄは、サイドファイル２７Ａへのデータの格納方法の一例の説明図。
【図４】図４Ａは、ステップＳ１でジョブ制御プログラムが行う処理の流れの一例を示す。図４Ｂは、ステップＳ４で通知プログラムが行う処理の流れの一例を示す。
【図５】図５は、ステップＳ５でジョブ制御プログラムが行う処理の流れの一例を示す。
【図６】図６は、ステップＳ６でストレージ管理プログラム１５が行う処理の流れの一例を示す。
【図７】図７は、図５のＳ４７で行われる処理の流れの一例を示す。
【図８】図８Ａは、本発明の一実施形態の第一の変形例における対処情報テーブルの構成例を示す。図８Ｂは、本発明の一実施形態の第二の変形例における対処情報テーブルの構成例を示す。図８Ｃは、本発明の一実施形態の第三の変形例における処理の説明図である。
【符号の説明】
【０１０１】
３…システム管理者用端末  ５Ａ、５Ｂ…業務サーバ  ７…管理サーバ  ９Ａ、９Ｂ…ストレージシステム  １１Ａ、１１Ｂ…ジョブ制御プログラム  １３Ａ、１３Ｂ、１３Ｃ…アプリケーションプログラム（ＡＰ）  １７Ａ、１７Ｂ、１９…記憶資源  ２１Ａ、２１Ｂ…ストレージ制御装置  ２３Ａ、２３Ｂ…制御プログラム  ２４…アクセス履歴記憶域  ２５Ａ…通知プログラム  ２６Ａ…構成情報  ２７Ａ…サイドファイル  ２８Ａ…メイン領域  ２９Ａ、２９Ｂ…論理ボリューム  ４１…管理テーブル  ４３…対処情報テーブル  ４５…履歴情報テーブル  ３０８Ａ、３０８Ｂ…キャッシュメモリ
【図１】
2006260355.tif 000003
【図２】
2006260355.tif 000004
【図３】
2006260355.tif 000005
【図４】
2006260355.tif 000006
【図５】
2006260355.tif 000007
【図６】
2006260355.tif 000008
【図７】
2006260355.tif 000009
【図８】
2006260355.tif 000010