(57)【要約】【課題】第一の計算機と第二の計算機とが通信可能に接続されていなくても、第一の計算機が有する情報を第二の計算機に通知することができるようにする。【解決手段】第一のサーバ１が、第二のサーバ１１がバックアップをするときに用いる情報（以下、カタログ情報）を第一のストレージシステム２１に送信する。第一のストレージシステム２１が、受信したカタログ情報を、所定のファイル名を持つ電子的なファイルにしてＰＶＯＬ４５に書込み、ＰＶＯＬ４５内のカタログ情報を含むデータ群を、第二のストレージシステム１２１内のＳＶＯＬ１４５に書く。第二のサーバ１１は、その所定のファイル名をＳＶＯＬ１４５から検索することによりＳＶＯＬ１４５からカタログ情報を取得し、取得したカタログ情報を用いて、ＳＶＯＬ１４５内のデータのバックアップを行う。【選択図】図６
2007148520.tif 000002
【特許請求の範囲】
【請求項１】
第一の計算機と第一のストレージシステムとが通信可能に接続され、前記第一のストレージシステムと第二のストレージシステムとが通信可能に接続され、前記第二のストレージシステムと第二の計算機とが通信可能に接続され、前記第一のストレージシステムは、第一のコントローラと複数の第一の記憶デバイスとを備え、前記第二のストレージシステムは、第二のコントローラと複数の第二の記憶デバイスとを備えている計算機システムで実現することができる情報通知方法であって、
前記第一の計算機が、前記第二の計算機が適切に特定の処理を行うために参照する情報である第二計算機用情報を前記第一のストレージシステムに送信し、
前記第一のコントローラが、前記第一の計算機から受信した第二計算機用情報を、前記複数の第一の記憶デバイスのうちの或る第一の記憶デバイスに書込み、且つ、前記第二計算機用情報を前記第二のストレージシステムに送信し、
前記第二のコントローラが、前記第一のストレージシステムから受信した第二計算機用情報を、前記複数の第二の記憶デバイスのうちの或る第二の記憶デバイスに書き込み、且つ、前記第二計算機用情報を前記第二の計算機に送信し、
前記第二の計算機が、前記第二のストレージシステムから第二計算機用情報を受信し、前記受信した第二計算機用情報を参照して前記特定の処理を実行する、
情報通知方法。
【請求項２】
前記或る第一の記憶デバイスは、前記第一のコントローラに対するコマンドを記憶することができる第一のコマンドデバイスであり、
前記或る第二の記憶デバイスは、前記第二のコントローラに対するコマンドを記憶することができる第二のコマンドデバイスであり、
前記第一の計算機は、前記第一のコントローラに対してコマンドを送信し、
前記第一のコントローラは、前記第一の計算機から受信したコマンドを前記或る第一のコマンドデバイスに書込み、前記第一のコマンドデバイスに蓄積されているコマンドを読み出して処理し、前記第二計算機用情報を前記第一の計算機から受信した場合には、前記受信した第二計算機用情報を前記第一コマンドデバイスに書込み、前記第一コマンドデバイスに書き込んだ第二計算機用情報を前記第二のコントローラに送信し、
前記第二のコントローラは、前記第一のコントローラから受信した第二計算機用情報を前記第二のコマンドデバイスに書込み、その第二計算機用情報を前記第二のコマンドデバイスから前記第二の計算機に送信する、
請求項１記載の情報通知方法。
【請求項３】
前記第二の計算機が、複数のコンピュータプログラムを記憶した記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記複数のコンピュータプログラムには、前記ＣＰＵに実行されることにより前記第二計算機用情報を参照することができる第一と第二のコンピュータプログラムと、前記ＣＰＵに実行されることにより前記第二のコマンドデバイスから前記第二計算機用情報を受信する第三のコンピュータプログラムとが含まれており、
前記第一と第二のコンピュータプログラムのいずれも、前記ＣＰＵに実行されることにより、前記第三のコンピュータプログラムを介して前記第二計算機用情報を受けて、前記受けた第二計算機用情報を用いて前記特定の処理を実行する、
請求項２記載の情報通知方法。
【請求項４】
（Ａ）前記第一と第二のコンピュータプログラムの少なくとも一方が、前記ＣＰＵに実行されることにより、前記第三のコンピュータプログラムに対して、前記第二計算機用情報の取得を要求し、
（Ｂ）前記第三のコンピュータプログラムが、前記ＣＰＵに実行されることにより、前記要求に従って、前記第二のコマンドデバイスにアクセスし、
前記第一と第二のコンピュータプログラムの少なくとも一方が前記第二計算機用情報を取得するまで、前記（Ａ）及び（Ｂ）が繰り返される、
請求項３記載の情報通知方法。
【請求項５】
前記第一の計算機が、前記第二計算機用情報の通知先計算機のＩＤである第二計算機ＩＤを、前記第二計算機用情報と共に前記第一のコントローラに送信し、
前記第一のコントローラが、前記第二計算機用情報と前記第二計算機ＩＤとのセットを前記第一のコマンドデバイスに書き、且つ、そのセットを前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラからの前記セットを受信して前記第二のコマンドデバイスに書き、前記第二のコマンドデバイスに書かれた前記セットに含まれている前記第二計算機ＩＤから、そのセット内の第二計算機用情報の通知先となる第二の計算機を判別し、前記判別した第二の計算機に、前記第二のコマンドデバイスに書かれた前記セット内の第二計算機用情報を送信する、
請求項３記載の情報通知方法。
【請求項６】
前記第三のコンピュータプログラムが、前記ＣＰＵに実行されることにより、前記第二のコントローラから前記第二計算機用情報を受信した場合には、その旨の応答を前記第二のコントローラに返し、そうではない場合には、その旨の応答を前記第二のコントローラに返さず、
前記第二のコントローラは、前記応答を受信しない場合には、前記第二の計算機用情報の送信を再度行う、
請求項５記載の情報通知方法。
【請求項７】
前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスが含まれており、
前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスが含まれており、
前記第一の計算機が、或るプライマリデータデバイスに、前記第二計算機用情報を書き、
前記第一のコントローラが、前記或るプライマリデータデバイス内の、前記第二計算機用情報を含むデータ群を、前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラから受信したデータ群を、前記或るプリマリデータデバイスとペアを構成する或るセカンダリデータデバイスに書き、
前記第二の計算機が、前記或るセカンダリデータデバイスから前記第二計算機用情報を取得する、
請求項１記載の情報通知方法。
【請求項８】
前記第一の計算機は、前記第二計算機用情報を、所定のファイル名を有する電子的なファイルとし、前記電子的なファイルを前記或るプライマリデータデバイスに書き、
前記第二の計算機は、前記所定のファイル名を前記或るセカンダリデータデバイスから検索することで、前記電子的なファイルである第二計算機用情報を取得する、
請求項７記載の情報通知方法。
【請求項９】
前記第二計算機用情報は、前記第一の計算機が参照する第一の記憶デバイス内のデータの整合性がとれていることを保証するための情報である、
請求項１記載の情報通知方法。
【請求項１０】
前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスと、前記第一のコントローラに対するコマンドを記憶することができる第一のコマンドデバイスとが含まれており、
前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスと、前記第二のコントローラに対するコマンドを記憶することができる第二のコマンドデバイスとが含まれており、
前記第一のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第一の管理テーブルが用意され、
前記第二のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第二の管理テーブルが用意され、
前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれており、
前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれており、
前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ前記第二計算機用情報を準備し、前記準備した第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータをコピーすることとの指示を前記第一のコピー制御プログラムに出し、
前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記準備された第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることとを、前記第一のコントローラに実行させ、
前記第一のコントローラが、前記第一のコピー制御プログラムからの第二計算機用情報を前記第一の管理テーブルに書き、前記第一の管理テーブルに書かれた第二計算機用情報を前記第二のコントローラに送信し、且つ、前記或るプライマリデータデバイス内のデータ群を前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラからの第二計算機用情報を前記第二の管理テーブルに書き、且つ、前記第一のコントローラからのデータ群を前記或るセカンダリデータデバイスに書き、
前記第二のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記第二の管理テーブルから前記第二計算機用情報を受信し、前記受信した第二計算機用情報を前記第二のバックアッププログラムに渡し、
前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記第二のコピー制御プログラムからの第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行う、
請求項９記載の情報通知方法。
【請求項１１】
前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスが含まれており、
前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスが含まれており、
前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれており、
前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれており、
前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ前記第二計算機用情報を準備し、前記準備した第二計算機用情報を所定のファイル名を有する電子的なファイルとし、前記電子的なファイルを前記或るプライマリデータデバイスに書き、且つ、前記或るプライマリデータデバイス内のデータをコピーすることの指示を前記第一のコピー制御プログラムに出し、
前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることを前記第一のコントローラに実行させ、
前記第一のコントローラが、前記或るプライマリデータデバイス内の、前記電子的なファイルを含むデータ群を前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラからの前記データ群を前記或るセカンダリデータデバイスに書き、
前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記所定のファイル名を前記或るセカンダリデータデバイスから検索することで、前記電子的なファイルである第二計算機用情報を前記或るセカンダリデータデバイスから取得し、前記取得した第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行う、
請求項９記載の情報通知方法。
【請求項１２】
前記第一の計算機と前記第二の計算機とが通信可能に接続されており、
前記第一の計算機が、前記第二計算機用情報を前記第二の計算機と前記第一のストレージシステムのどちらに送信するかを選択し、選択した方に前記第二計算機用情報を送信する、
請求項１記載の情報通知方法。
【請求項１３】
第一の計算機と第一のストレージシステムとが通信可能に接続され、前記第一のストレージシステムと第二のストレージシステムとが通信可能に接続され、前記第二のストレージシステムと第二の計算機とが通信可能に接続され、前記第一のストレージシステムは、第一のコントローラと複数の第一の記憶デバイスとを備え、前記第二のストレージシステムは、第二のコントローラと複数の第二の記憶デバイスとを備えている計算機システムであって、
前記第一の計算機が、前記第二の計算機が適切に特定の処理を行うために参照する情報である第二計算機用情報を送信する送信部を有し、
前記第一のコントローラが、前記第一の計算機から受信した第二計算機用情報を、前記複数の第一の記憶デバイスのうちの或る第一の記憶デバイスに書込む書込み部と、前記第二計算機用情報を前記第二のストレージシステムに送信する送信部とを有し、
前記第二のコントローラが、前記第一のストレージシステムから第二計算機用情報を受信する受信部と、前記受信した第二計算機用情報を前記複数の第二の記憶デバイスのうちの或る第二の記憶デバイスに書き込む書込み部と、前記第二計算機用情報を前記第二の計算機に送信する送信部とを有し、
前記第二の計算機が、前記第二のストレージシステムから第二計算機用情報を受信する受信部と、前記受信した第二計算機用情報を参照して前記特定の処理を実行する処理部とを有する、
計算機システム。
【請求項１４】
第一の計算機と第一のストレージシステムとが通信可能に接続され、前記第一のストレージシステムと第二のストレージシステムとが通信可能に接続され、前記第二のストレージシステムと第二の計算機とが通信可能に接続され、前記第一のストレージシステムは、第一のコントローラと複数の第一の記憶デバイスとを備え、前記第二のストレージシステムは、第二のコントローラと複数の第二の記憶デバイスとを備えている計算機システムで実現することができる情報通知方法であって、
前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスと、前記第一のコントローラに対するコマンドを記憶することができる第一のコマンドデバイスとが含まれており、
前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスと、前記第二のコントローラに対するコマンドを記憶することができる第二のコマンドデバイスとが含まれており、
前記第一のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第一の管理テーブルが用意され、
前記第二のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第二の管理テーブルが用意され、
前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれており、
前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれており、
前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ第二計算機用情報を準備し、前記準備した第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータをコピーすることとの指示を前記第一のコピー制御プログラムに出し、
前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記準備された第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることとを、前記第一のコントローラに実行させ、
前記第一のコントローラが、前記第一のコピー制御プログラムからの第二計算機用情報を前記第一の管理テーブルに書き、前記第一の管理テーブルに書かれた第二計算機用情報を前記第二のコントローラに送信し、且つ、前記或るプライマリデータデバイス内のデータ群を前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラからの第二計算機用情報を前記第二の管理テーブルに書き、且つ、前記第一のコントローラからのデータ群を前記或るセカンダリデータデバイスに書き、
前記第二のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記第二の管理テーブルから前記第二計算機用情報を受信し、前記受信した第二計算機用情報を前記第二のバックアッププログラムに渡し、
前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記第二のコピー制御プログラムからの第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行い、
前記第二計算機用情報は、前記第二のバックアッププログラムがバックアップ又はリカバリを行うために用いる情報であって、前記第一のバックアッププログラムが利用するデータの整合性がとれていることを保証するための情報である、
情報通知方法。
【請求項１５】
第一の計算機と第一のストレージシステムとが通信可能に接続され、前記第一のストレージシステムと第二のストレージシステムとが通信可能に接続され、前記第二のストレージシステムと第二の計算機とが通信可能に接続され、前記第一のストレージシステムは、第一のコントローラと複数の第一の記憶デバイスとを備え、前記第二のストレージシステムは、第二のコントローラと複数の第二の記憶デバイスとを備えている計算機システムで実現することができる情報通知方法であって、
前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスが含まれており、
前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスが含まれており、
前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれており、
前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有しており、
前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれており、
前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ第二計算機用情報を準備し、前記準備した第二計算機用情報を所定のファイル名を有する電子的なファイルとし、前記電子的なファイルを前記或るプライマリデータデバイスに書き、且つ、前記或るプライマリデータデバイス内のデータをコピーすることの指示を前記第一のコピー制御プログラムに出し、
前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることを前記第一のコントローラに実行させ、
前記第一のコントローラが、前記或るプライマリデータデバイス内の、前記電子的なファイルを含むデータ群を前記第二のコントローラに送信し、
前記第二のコントローラが、前記第一のコントローラからの前記データ群を前記或るセカンダリデータデバイスに書き、
前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記所定のファイル名を前記或るセカンダリデータデバイスから検索することで、前記電子的なファイルである第二計算機用情報を前記或るセカンダリデータデバイスから取得し、前記取得した第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行い、
前記第二計算機用情報は、前記第二のバックアッププログラムがバックアップ又はリカバリを行うために用いる情報であって、前記第一のバックアッププログラムが利用するデータの整合性がとれていることを保証するための情報である、
情報通知方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子的な情報を通知するためのコンピュータ技術に関する。
【背景技術】
【０００２】
例えば、特開２００５−１１５８９８号公報に記載の技術が知られている。この技術によれば、情報処理装置は、第二の記憶装置で実行される第一の命令を含んだ第一のデータを生成し、その第一のデータを第一の記憶ボリュームに書き込む要求を、第一の通信規約に従い第一の記憶装置の第一の書き込み要求部に送信する。第一の記憶装置は、第一の記憶ボリュームに書き込まれている第一のデータが第二の記憶装置に対する命令である場合に、第一のデータを第二の記憶ボリュームに書き込む要求を、第二の通信規約に従い、第二の記憶装置の第二の書き込み要求部に送信する。第二の記憶装置は、第二の記憶ボリュームに書き込まれている第一のデータに設定されている第一の命令を実行する。
【０００３】
【特許文献１】特開２００５−１１５８９８号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、例えば、第一の計算機と第二の計算機とが通信可能に接続されている場合、第一の計算機が第二の計算機に情報を通知したい状況が生じ得る。この場合、第一の計算機と第二の計算機との間の接続が切断されると、第一の計算機が有する情報を第二の計算機に通知することができなくなってしまう。
【０００５】
本発明の目的は、第一の計算機と第二の計算機とが通信可能に接続されていなくても、第一の計算機が有する情報を第二の計算機に通知することができるようにすることにある。
【０００６】
本発明の他の目的は、後の説明から明らかになるであろう。
【課題を解決するための手段】
【０００７】
本発明の第一の側面に従う情報通知方法は以下の通りである。
【０００８】
すなわち、この方法は、第一の計算機と第一のストレージシステムとが通信可能に接続され、前記第一のストレージシステムと第二のストレージシステムとが通信可能に接続され、前記第二のストレージシステムと第二の計算機とが通信可能に接続され、前記第一のストレージシステムは、第一のコントローラと複数の第一の記憶デバイスとを備え、前記第二のストレージシステムは、第二のコントローラと複数の第二の記憶デバイスとを備えている計算機システムで実現することができる情報通知方法である。前記第一の計算機が、前記第二の計算機が適切に特定の処理を行うために参照する情報である第二計算機用情報（例えば後述のカタログ情報）を前記第一のストレージシステムに送信する。前記第一のコントローラが、前記第一の計算機から受信した第二計算機用情報を、前記複数の第一の記憶デバイスのうちの或る第一の記憶デバイスに書込み、且つ、前記第二計算機用情報を前記第二のストレージシステムに送信する。前記第二のコントローラが、前記第一のストレージシステムから受信した第二計算機用情報を、前記複数の第二の記憶デバイスのうちの或る第二の記憶デバイスに書き込み、且つ、前記第二計算機用情報を前記第二の計算機に送信する。前記第二の計算機が、前記第二のストレージシステムから第二計算機用情報を受信し、前記受信した第二計算機用情報を参照して前記特定の処理を実行する。
【０００９】
各計算機は、例えば、サーバマシンであっても良いし、その他のコンピュータであっても良い。
【００１０】
各ストレージシステムは、例えば、配列された複数の記憶デバイスを備えたディスクアレイ装置とすることができる。
【００１１】
この情報通知方法の第一の態様では、前記或る第一の記憶デバイスは、前記第一のコントローラに対するコマンドを記憶することができる第一のコマンドデバイスである。前記或る第二の記憶デバイスは、前記第二のコントローラに対するコマンドを記憶することができる第二のコマンドデバイスである。前記第一の計算機は、前記第一のコントローラに対してコマンドを送信することができる。前記第一のコントローラは、前記第一の計算機から受信したコマンドを前記或る第一のコマンドデバイスに書込み、前記第一のコマンドデバイスに蓄積されているコマンドを読み出して処理し、前記第二計算機用情報を前記第一の計算機から受信した場合には、前記受信した第二計算機用情報を前記第一コマンドデバイスに書込み、前記第一コマンドデバイスに書き込んだ第二計算機用情報を前記第二のコントローラに送信することができる。前記第二のコントローラは、前記第一のコントローラから受信した第二計算機用情報を前記第二のコマンドデバイスに書込み、その第二計算機用情報を前記第二のコマンドデバイスから前記第二の計算機に送信することができる。
【００１２】
この情報通知方法の第二の態様では、前記第一の態様において、前記第二の計算機が、複数のコンピュータプログラムを記憶した記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有している。前記複数のコンピュータプログラムには、前記ＣＰＵに実行されることにより前記第二計算機用情報を参照することができる第一と第二のコンピュータプログラムと、前記ＣＰＵに実行されることにより前記第二のコマンドデバイスから前記第二計算機用情報を受信する第三のコンピュータプログラムとが含まれている。前記第一と第二のコンピュータプログラムのいずれも、前記ＣＰＵに実行されることにより、前記第三のコンピュータプログラムを介して前記第二計算機用情報を受けて、前記受けた第二計算機用情報を用いて前記特定の処理を実行することができる。
【００１３】
この情報通知方法の第三の態様では、前記第二の態様において、
（Ａ）前記第一と第二のコンピュータプログラムの少なくとも一方が、前記ＣＰＵに実行されることにより、前記第三のコンピュータプログラムに対して、前記第二計算機用情報の取得を要求し、
（Ｂ）前記第三のコンピュータプログラムが、前記ＣＰＵに実行されることにより、前記要求に従って、前記第二のコマンドデバイスにアクセスし、
前記第一と第二のコンピュータプログラムの少なくとも一方が前記第二計算機用情報を取得するまで、前記（Ａ）及び（Ｂ）を繰り返すことができる。
【００１４】
この情報通知方法の第四の態様では、前記第二の態様において、前記第一の計算機が、前記第二計算機用情報の通知先計算機のＩＤである第二計算機ＩＤを、前記第二計算機用情報と共に前記第一のコントローラに送信することができる。前記第一のコントローラが、前記第二計算機用情報と前記第二計算機ＩＤとのセットを前記第一のコマンドデバイスに書き、且つ、そのセットを前記第二のコントローラに送信することができる。前記第二のコントローラが、前記第一のコントローラからの前記セットを受信して前記第二のコマンドデバイスに書き、前記第二のコマンドデバイスに書かれた前記セットに含まれている前記第二計算機ＩＤから、そのセット内の第二計算機用情報の通知先となる第二の計算機を判別し、前記判別した第二の計算機に、前記第二のコマンドデバイスに書かれた前記セット内の第二計算機用情報を送信することができる。
【００１５】
この情報通知方法の第五の態様では、前記第四の態様において、前記第三のコンピュータプログラムが、前記ＣＰＵに実行されることにより、前記第二のコントローラから前記第二計算機用情報を受信した場合には、その旨の応答を前記第二のコントローラに返し、そうではない場合には、その旨の応答を前記第二のコントローラに返さないことができる。前記第二のコントローラは、前記応答を受信しない場合には、前記第二の計算機用情報の送信を再度行うことができる。
【００１６】
この情報通知方法の第六の態様では、前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスが含まれている。前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスが含まれている。前記第一の計算機が、或るプライマリデータデバイスに、前記第二計算機用情報を書くことができる。前記第一のコントローラが、前記或るプライマリデータデバイス内の、前記第二計算機用情報を含むデータ群を、前記第二のコントローラに送信することができる。前記第二のコントローラが、前記第一のコントローラから受信したデータ群を、前記或るプリマリデータデバイスとペアを構成する或るセカンダリデータデバイスに書くことができる。前記第二の計算機が、前記或るセカンダリデータデバイスから前記第二計算機用情報を取得することができる。
【００１７】
この情報通知方法の第七の態様では、前記第六の態様において、前記第一の計算機は、前記第二計算機用情報を、所定のファイル名を有する電子的なファイルとし、前記電子的なファイルを前記或るプライマリデータデバイスに書くことができる。前記第二の計算機は、前記所定のファイル名を前記或るセカンダリデータデバイスから検索することで、前記電子的なファイルである第二計算機用情報を取得することができる。
【００１８】
この情報通知方法の第八の態様では、前記第二計算機用情報は、前記第一の計算機が参照する第一の記憶デバイス内のデータの整合性がとれていることを保証するための情報であるとすることができる。
【００１９】
この情報通知方法の第九の態様では、前記第八の態様において、前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスと、前記第一のコントローラに対するコマンドを記憶することができる第一のコマンドデバイスとが含まれている。前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスと、前記第二のコントローラに対するコマンドを記憶することができる第二のコマンドデバイスとが含まれている。前記第一のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第一の管理テーブルが用意されている。前記第二のコマンドデバイスには、どのプライマリデータデバイスとどのセカンダリデータデバイスとがペアになっているかのペア情報が記録される第二の管理テーブルが用意されている。前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有している。前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれている。前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有している。前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれている。前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ前記第二計算機用情報を準備し、前記準備した第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータをコピーすることとの指示を前記第一のコピー制御プログラムに出すことができる。前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記準備された第二計算機用情報を前記第一の管理テーブルに書くことと、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることとを、前記第一のコントローラに実行させることができる。前記第一のコントローラが、前記第一のコピー制御プログラムからの第二計算機用情報を前記第一の管理テーブルに書き、前記第一の管理テーブルに書かれた第二計算機用情報を前記第二のコントローラに送信し、且つ、前記或るプライマリデータデバイス内のデータ群を前記第二のコントローラに送信することができる。前記第二のコントローラが、前記第一のコントローラからの第二計算機用情報を前記第二の管理テーブルに書き、且つ、前記第一のコントローラからのデータ群を前記或るセカンダリデータデバイスに書くことができる。前記第二のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記第二の管理テーブルから前記第二計算機用情報を受信し、前記受信した第二計算機用情報を前記第二のバックアッププログラムに渡すことができる。前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記第二のコピー制御プログラムからの第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行うことができる。
【００２０】
この情報通知方法の第十の態様では、前記第八の態様において、前記複数の第一の記憶デバイスには、前記第一の計算機が参照するデータを記憶することができるプライマリの記憶デバイスである一以上のプライマリデータデバイスが含まれている。前記複数の第二の記憶デバイスには、各プライマリデータデバイスとペアを構成する各セカンダリの記憶デバイスである各セカンダリデータデバイスが含まれている。前記第一の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有している。前記第一の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第一のバックアッププログラムと、前記プライマリデータデバイスからデータを読み出したり前記プライマリデータデバイスにデータを書き込んだりするためのアクセスプログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第一のコピー制御プログラムとが含まれている。前記第二の計算機は、複数のコンピュータプログラムを記憶することができる記憶域と、前記記憶域から各コンピュータプログラムを読み込んで実行することができるＣＰＵとを有している。前記第二の計算機の前記複数のコンピュータプログラムには、データのバックアップを制御するための第二のバックアッププログラムと、プライマリデータデバイスからセカンダリデータデバイスへのデータコピーを制御する第二のコピー制御プログラムとが含まれている。前記第一のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記アクセスプログラムが或るプライマリデータデバイスにデータを書かないよう前記アクセスプログラムを制御し、その制御を行った時刻と、前記或るプリマリデータデバイスと前記或るセカンダリデータデバイスとのペアに関する情報と、前記アクセスプログラムに関する情報とを含んだ前記第二計算機用情報を準備し、前記準備した第二計算機用情報を所定のファイル名を有する電子的なファイルとし、前記電子的なファイルを前記或るプライマリデータデバイスに書き、且つ、前記或るプライマリデータデバイス内のデータをコピーすることの指示を前記第一のコピー制御プログラムに出すことができる。前記第一のコピー制御プログラムが、前記ＣＰＵに実行されることにより、前記或るプライマリデータデバイス内のデータを前記或るセカンダリデータデバイスにコピーすることを前記第一のコントローラに実行させることができる。前記第一のコントローラが、前記或るプライマリデータデバイス内の、前記電子的なファイルを含むデータ群を前記第二のコントローラに送信することができる。前記第二のコントローラが、前記第一のコントローラからの前記データ群を前記或るセカンダリデータデバイスに書くことができる。前記第二のバックアッププログラムが、前記ＣＰＵに実行されることにより、前記所定のファイル名を前記或るセカンダリデータデバイスから検索することで、前記電子的なファイルである第二計算機用情報を前記或るセカンダリデータデバイスから取得し、前記取得した第二計算機用情報を用いて、前記或るセカンダリデータデバイス内のデータ群のバックアップ又はリカバリを行うことができる。
【００２１】
各々の処理は、所定の各手段によって実行することもできる。各手段は、各ユニットと言い換えることもできる。各手段或いはユニットは、ハードウェア（例えば回路）、コンピュータプログラム或いはそれらの組み合わせ（例えば、複数のコンピュータプログラムを読み込んだ一又は複数のＣＰＵ）によって実現することもできる。各コンピュータプログラムは、計算機に備えられる記憶資源（例えばメモリ）から読み込むことができる。その記憶資源には、ＣＤ−ＲＯＭ等の記録媒体を介してインストールすることもできるし、インターネット等の通信ネットワークを介してダウンロードすることもできる。
【発明の効果】
【００２２】
本発明によれば、第一の計算機と第二の計算機とが通信可能に接続されていなくても、第一の計算機が有する情報を第二の計算機に通知することができる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して、本発明の幾つかの実施例を説明する。なお、以下の各実施例では、計算機はサーバであるとする。
【実施例１】
【００２４】
図１は、本発明の第一実施例に係る計算機システムの物理的な構成の概要を示す。
【００２５】
第一のサーバ１と第一のストレージシステム２１とが第一の通信媒体１２Ａを介して通信可能に接続されている。第一のストレージシステム２１と第二のストレージシステム１２１とが第二の通信媒体１２Ｂを介して通信可能に接続されている。第二のストレージシステム１２１と第二のサーバ１１とが第三の通信媒体１２Ｃを介して通信可能に接続されている。第二のサーバ１１と第一のサーバ１とが第四の通信媒体１２Ｄを介して通信可能に接続されている。なお、各通信媒体１２Ａ〜１２Ｄは、例えば、専用線或いは通信ネットワークとすることができる。通信ネットワークは、例えば、インターネット、ＬＡＮ（Local Area Network）或いはＳＡＮ（Storage Area Network）とすることができる。通信媒体１２Ａ〜１２Ｃは、一つの通信ネットワークであっても良いし、別々の通信ネットワークであっても良い。通信媒体１２Ａ〜１２Ｃのうちの少なくとも一つは、例えば、ファイバチャネルプロトコルに従う通信を行える媒体とすることができる。通信媒体１２Ｄは、例えば、TCP/IPに従う通信を行える媒体とすることができる。
【００２６】
第一のサーバ１と第二のサーバ１１とは、実質的に同様のハードウェア構成を採用することができる。そのため、第一のサーバ１を例に採って、そのハードウェア構成例を説明する（なお、図１では、第一のサーバ１と第二のサーバ１１において、実質的に同じ構成要素については、参照番号の差が１０となっている）。
【００２７】
第一のサーバ１は、種々のコンピュータプログラムを記憶することができる記憶資源（例えばメモリやハードディスクドライブ）５や、記憶資源５からコンピュータプログラムを読込んで実行するＣＰＵ３や、第一の通信媒体１２Ａの通信インターフェース（以下、Ｉ／Ｆ）となる第一Ｉ／Ｆ９や、第四の通信媒体１２ＤのＩ／Ｆとなる第四Ｉ／Ｆ７を備えることができる（第二のサーバ１１は、第一Ｉ／Ｆ９の代わりに、第三の通信媒体１２ＣのＩ／Ｆとなる第三Ｉ／Ｆ１９を備えることができる）。各Ｉ／Ｆとしては、例えば、ホストバスアダプタ或いはＬＡＮコントローラ等を採用することができる。
【００２８】
第一のストレージシステム２１と第二のストレージシステム１２１とは、実質的に同様のハードウェア構成を採用することができる。そのため、第一のストレージシステム２１を例に採って、そのハードウェア構成例を説明する（なお、図１では、第一のストレージシステム２１と第二のストレージシステム１２１において、実質的に同じ構成要素については、参照番号の差が１００となっている）。
【００２９】
第一のストレージシステム２１は、例えば、複数のメディアドライブ３３を備えたＲＡＩＤ（Redundant Array of Independent Inexpensive Disks）システムとすることができる。各メディアドライブ３３は、データを記憶することができる記憶メディア（例えばハードディスク或いはＤＶＤ等のディスク）を備える。第一のストレージシステム２１は、複数のメディアドライブ３３の他に、第一のコントローラ２２を備えることができる。
【００３０】
第一のコントローラ２２は、第一のストレージシステム２１の動作を制御する装置である。第一のコントローラ２２は、第一の通信媒体１２ＡのＩ／Ｆとなる第一Ｉ／Ｆ２９や、第二の通信媒体１２ＢのＩ／Ｆとなる第二Ｉ／Ｆ２７や、各メディアドライブ３３を介した通信を制御するドライブＩ／Ｆ３１を備えることができる（第二のコントローラ１２２は、第一Ｉ／Ｆ２９の代わりに、第三の通信媒体１２ＣのＩ／Ｆとなる第三Ｉ／Ｆ１２９を備えることができる）。また、第一のコントローラ２２は、メモリ２６やＣＰＵ２３を備えることができる。メモリ２６及びＣＰＵ２３は、それぞれ、一つであっても複数であっても良い。メモリ２６は、例えば、メディアドライブ３３と第一のサーバ１との間で授受されるデータを一時的に記憶することができるキャッシュ領域や、第一のストレージシステム２１を制御するためのデータやコンピュータプログラムを記憶することができる制御領域などを備えることができる。ＣＰＵ２３は、制御領域からコンピュータプログラムを読み込んで実行することができる。
【００３１】
なお、各コントローラ２２、１２２の上述した構成は一例であり、他の構成を採用することもできる。例えば、コントローラ２２及び１２２の少なくとも一方が、上記の構成に代えて、外部の装置（例えば計算機或いは他のストレージシステム）との通信を制御する複数の第一の制御部（例えば制御回路基板）と、メディアドライブ３３との通信を制御する複数の第二の制御部（例えば制御回路基板）と、外部の装置とメディアドライブ３３との間で授受されるデータを記憶することができるキャッシュメモリと、第一のストレージシステム２１を制御するためのデータを記憶することができる制御メモリと、各第一の制御部、各第二の制御部、キャッシュメモリ及び制御メモリを接続する接続部（例えば、クロスバスイッチなどのスイッチ）とを備えることもできる。この場合、第一の制御部と第二の制御部の一方が、又は双方が協働して、後述するコントローラとしての処理を行うことができる。
【００３２】
以上が、第一実施例に係る計算機システムの物理的な構成の一例である。この第一実施例では、サーバ１と１１が第四の通信媒体１２Ｄを介して通信することができなくても（或いは第四の通信媒体１２Ｄが無くても）、以下に述べる通知方法により、第一のサーバ１が有する情報を、第一のストレージシステム２１及び第二のストレージシステム１２１を経由して、第二のサーバ１１に通知することができる。以下、その通知方法を実現するために上述の計算機システムに構築される論理的な構成の一例について説明する。
【００３３】
図２は、第一実施例に係る計算機システムに構築される論理的な構成の一例を示す。
【００３４】
第一のサーバ１は、例えば、いわゆるデータベースサーバである。第二のサーバ１１は、例えば、いわゆるバックアップサーバである。第一のサーバ１の記憶資源５や第二のサーバ１１の記憶資源１５には、種々のコンピュータプログラムが記憶される。記憶資源５に記憶されるコンピュータプログラムとしては、例えば、データベースマネジメントシステム（以下、ＤＢＭＳ）２などのアプリケーションプログラム、第一のストレージバックアッププログラム４、及び第一のコピー制御プログラム６がある。記憶資源１５に記憶されるコンピュータプログラムとしては、例えば、第二のストレージバックアッププログラム１４及び第二のコピー制御プログラム１６がある。各種コンピュータプログラムが行うことのできる処理については後に説明する。また、ＣＰＵが、各種コンピュータプログラムを読み込んで実行することにより、所定の処理を行うことができるが、以下、この種の説明では、説明を冗長にしないようにするために、コンピュータプログラムが処理を行うというような、簡潔な表現を用いることにする。
【００３５】
第一のストレージシステム２１のメモリ２６には、第一のストレージ制御プログラム４１が記憶される。同様に、第二のストレージシステム１２１のメモリ１２６には、第二のストレージ制御プログラム１４１が記憶される。これらのコンピュータプログラムが行うことのできる処理についても後に説明する。
【００３６】
第一のストレージシステム２１の複数のメディアドライブ３３が有する物理的な記憶領域上には、論理的な記憶デバイスである複数の論理ボリュームが設けられる。複数の論理ボリュームのうちの少なくとも一つが、メモリ２６上に設けられても良い。複数の論理ボリュームには、データボリュームと第一のコマンドデバイス４３とが含まれている。データボリュームは、第一のサーバ１のアプリケーションプログラムが利用するデータが記憶される論理ボリューム（以下、データボリューム）であり、具体的には、例えば、リモートコピーのコピー元となるプライマリの論理ボリューム（以下、ＰＶＯＬ）４５である。第一のコマンドデバイス４３には、第一のストレージシステム２１が受信した複数のコマンドの全て又はそれら複数のコマンドのうちの特定のコマンド（例えば、ＰＶＯＬ４５に対しての書込み要求或いは読出し要求とは異なる所定のフォーマットのコマンド）が蓄積される。第一のコマンドデバイス４３は、第一の管理テーブル４７を備えることができる。第一の管理テーブル４７については、後に説明する。
【００３７】
第二のストレージシステム１２１は、第一のストレージシステム２１と同様に、複数の論理ボリュームを備えることができる。それら複数の論理ボリュームには、データボリュームの一種であり、リモートコピーのコピー先となるセカンダリの論理ボリューム（以下、ＳＶＯＬ）と、第二のストレージシステム２１が受信した複数のコマンドの全て又はそれら複数のコマンドのうちの特定のコマンドが蓄積される第二のコマンドデバイス１４３が含まれる。第二のコマンドデバイス１４３は、第二の管理テーブル１４７を備えることができる。第二の管理テーブル１４７については、後に説明する。
【００３８】
この第一実施例では、第一のサーバ１のＤＢＭＳ２が利用するデータをバックアップ（及び／又はリストア）するために必要なカタログ情報が第一のサーバ１から出力される。カタログ情報は、第一のコマンドデバイス４３の第一の管理テーブル４７に書かれる。第一の管理テーブル４７に書かれたカタログ情報は、第一の管理テーブル４７から読み出される。読み出されたカタログ情報は、第一のストレージシステム２１から第二の通信媒体１２Ｂを介して第二のストレージシステム１２１に送信される。第二のストレージシステム１２１が受信したカタログ情報は、第二のコマンドデバイス１４３の第二の管理テーブル１４７に書かれる。第二の管理テーブル１４７に書かれたカタログ情報は、第二のサーバ１１に送られる。第二のサーバ１１のＣＰＵ１３は、受信したカタログ情報を記憶資源１５に書込み、そのカタログ情報を用いて、バックアップ或いはリストアを実行することができる。
【００３９】
以下、第一の管理テーブル４７の構成例、第二の管理テーブル１４７の構成例及びカタログ情報の構成例について説明する。
【００４０】
図３Ａは、第一の管理テーブル４７の構成例を示す。図３Ｂは、第二の管理テーブル１４７の構成例を示す。
【００４１】
第一の管理テーブル４７は、第一のストレージシステム２１におけるどの論理ボリュームがどの別のストレージシステムのどの論理ボリュームとペアになっているかというボリュームペアに関する情報が記録される。同様に、第二の管理テーブル１４７には、第二のストレージシステム１２１におけるどの論理ボリュームがどの別のストレージシステムのどの論理ボリュームとペアになっているかというボリュームペアに関する情報が記録される。
【００４２】
具体的には、例えば、第一の管理テーブル４７及び第二の管理テーブル１４７の各々には、そのテーブル４７又は１４７を備える第一又は第二のストレージシステム２１又は１２１内の各データボリューム毎に、ハード情報、ＤＢＭＳ情報、ストレージバックアッププログラム情報及び通知先サーバ情報がある。ハード情報の情報要素としては、例えば、ストレージシステム識別番号（L-Seq#）、ボリューム番号（L-LDEV#）、ボリューム属性（プライマリかセカンダリか（P/S））、コピー種別（例えば、同期型と非同期型のどちらのタイプのリモートコピーか（FUNC））、ペア相手の論理ボリュームが存在する別のストレージシステムの識別番号（R-Seq#）、ペア相手の論理ボリュームの番号（R-LDEV#）、ペア状態（STATUS）、及びＤＢＭＳ静止化時刻（TIME）がある。ＤＢＭＳ情報の情報要素としては、例えば、DBMS識別子（DBMS）、APインスタンス名（INST）及びＡＰデータベース名（DB）がある。ストレージバックアッププログラム情報の情報要素としては、例えば、プログラム識別子（PP）がある。通知先サーバ情報の情報要素としては、カタログ情報の通知先となるサーバのＩＤ、例えば、ワールドワイドネーム（WWN）がある。また、図３Ａ及び図３Ｂの両方に示されていないが、ボリュームコピー時間が記録されても良い。ボリュームコピー時間は、例えば、コピー処理が開始された時刻、コピー処理が終了した時刻、及び、コピー処理に要した時間長のうちの少なくとも一つとすることができる。
【００４３】
カタログ情報は、ＤＢＭＳ２が利用するデータの整合性がとれていることを保証するために必要な情報である。カタログ情報には、例えば、上述したテーブル４７、１４７に記録される情報群のうち、ハード情報及びＤＢＭＳ情報が含まれる。
【００４４】
さて、本実施例では、第一のサーバ１から送信されたカタログ情報は、第一のコマンドデバイス４３と第二のコマンドデバイス１４３を経由して、第二のサーバ１１に送られるようになっているが、コマンドデバイスに関する情報を管理するためのテーブル（以下、コマンドデバイス管理テーブル）が、各ストレージシステム２１、１２１のメモリ２６、１２６に記憶される。
【００４５】
図３Ｃは、第一のストレージシステム２１のメモリ２６に記憶されるコマンドデバイス管理テーブルの構成例を示す（なお、第二のストレージシステム１２１のメモリ１２６に記憶されるコマンドデバイス管理テーブルの構成も、実質的に同様である）。
【００４６】
コマンドデバイス管理テーブル６１には、第一のストレージシステム２１のストレージシステム識別番号（L-Seq#）、第一のコマンドデバイス４３のボリューム番号（L-LDEV#）、第一のコマンドデバイス４３のペア相手である第二のコマンドデバイス１４３が存在する第二のストレージシステムの識別番号（R-Seq#）及び第二のコマンドデバイス１４３のボリューム番号（R-LDEV#）が記録される。
【００４７】
以下、この第一実施例で行われるコピー処理の一例を説明する。
【００４８】
第一のストレージ制御プログラム４１は、ＰＶＯＬ４５からＳＶＯＬ１４５へのコピーを以下のように制御することができる。具体的には、例えば、第一のストレージ制御プログラム４１は、ＰＶＯＬ４５とＳＶＯＬ１４５とのペア状態（STATUS）を、コピー状態（COPY）、同期化状態（PAIR）及び非同期化状態（PSUS）にすることができる。
【００４９】
「コピー状態」とは、ボリュームペアが「同期化状態」に至る過程で、ＰＶＯＬ４５とＳＶＯＬ１４５との差分を管理するための図示しないビットマップ（例えば、ＰＶＯＬの各場所に対応した各ビットから成るビットマップ、以下、差分ビットマップ）を基に、ＰＶＯＬ４５内のデータとＳＶＯＬ１４５内のデータとの差分（以下、差分データ）が、ＳＶＯＬ１４５に対してコピーされている状態である。差分データがなくなった時に、自動的に、ボリュームペアの状態が、「コピー状態」から「同期化状態」に遷移する。
【００５０】
「同期化状態」とは、ＰＶＯＬ４５とＳＶＯＬ１４５のデータが同期している状態である。この状態では、ＰＶＯＬ４５のデータが更新された場合、その更新（ＰＶＯＬ４５に新たに書かれたデータ）は、即座に（例えば、ＰＶＯＬ４５の更新と実質的に同時に）、ＳＶＯＬ１４５に書かれる。
【００５１】
「非同期化状態」とは、ＰＶＯＬ４５とＳＶＯＬ１４５のデータが非同期になっている状態であり、ＰＶＯＬ４５に対するデータ更新はＳＶＯＬ１４５のデータに影響を与えない（すなわち、ＰＶＯＬ４５に新たにデータが書かれてもそれがＳＶＯＬ１４５に書かれることはない）。この時に、ＰＶＯＬ４５に新たにデータが書かれた場合、それが、第一のストレージ制御プログラム４１により、差分データとして所定の記憶域に保存され、且つ、新たにデータが書かれた場所で更新があったことがビットマップに記録される（例えば、すなわち、その場所に対応したビットが０から１に変わる）。
【００５２】
第一のストレージ制御プログラム４１は、ＰＶＯＬ４５とＳＶＯＬ１４５のデータを同期させるため、所定の指示（例えばスナップショット取得指示）を第一のコピー制御プログラム６から受けた時点での差分ビットマップに基づいて、ＰＶＯＬ４５からＳＶＯＬ１４５にコピーする必要がある差分データを特定し、ボリュームペアの状態を「コピー状態」に変更することができる。
【００５３】
また、第一のストレージ制御プログラム４１は、特定された差分データのコピーをビットマップ単位で実行し、データコピー後に差分ビットマップ上の該当箇所の更新を行うことができる（例えば、差分データのコピーが完了したら、それに対応するビットを１から０に変えることができる）。第一のストレージ制御プログラム４１は、差分データがなくなるまで、この処理を繰り返すことができる。この時、ビットマップの差分がなくなった時点で、ボリュームペアの状態が自動的に「同期化状態」に遷移する。
【００５４】
第一のストレージ制御プログラム４１は、差分データのコピーの完了後、スナップショット作成のために（つまり、ＰＶＯＬ４５の更新をＳＶＯＬ１４５に反映させないようにするために）、ボリュームペアの状態を「非同期化状態」に変更することができる。
【００５５】
第一のストレージ制御プログラム４１は、第一のコピー制御プログラム６から所定の問い合わせを受けたならば、ペア状態を報告することができる。この一連の処理により、第一のストレージ制御プログラム４１が所定の指示（例えばスナップショット取得指示）を受けた時点のＰＶＯＬ４５のスナップショットをＳＶＯＬ１４５に生成することができる。
【００５６】
以上のようなコピー処理が行われる場合において、カタログ情報がどのような流れで第一のサーバ１から第二のサーバ１１に送られるかについて説明する。
【００５７】
図４は、第一のサーバ１からカタログ情報が送信される場合において第二の管理テーブル１４７の更新が完了するまでに行われる処理の流れの一例を示す。
【００５８】
第一のストレージバックアッププログラム４は、所定のイベントが発生したときに、ＤＢＭＳ２の静止化を行う（ステップＳ１）。なお、ここで言う「所定のイベント」とは、例えば、ＰＶＯＬ４５のスナップショットを取得することのイベントであり、具体的には、例えば、第一のサーバ１に対しスナップショット取得命令が入力された、或いは、所定の時刻が検出されたこととすることができる。また、「ＤＢＭＳ２の静止化」とは、例えば、ＤＢＭＳ２がＰＶＯＬ４５に新たにデータを書かないようにすることである。ＤＢＭＳ２は、静止化されている状態では、ＰＶＯＬ４５に新たにデータを書くことはできない。すなわち、例えば、ＤＢＭＳ２とＰＶＯ４５との間のやり取りは、第一のコピー制御プログラム６を介して行うことができるようになっており、ＤＢＭＳ２が静止化されることで、そのようなやり取りが行われないようになる。
【００５９】
次に、第一のストレージバックアッププログラム４は、カタログ情報を生成し、記憶資源５に書くことができる（Ｓ２）。ここでは、例えば、第一のストレージバックアッププログラム４は、ステップＳ１でＤＢＭＳ２を静止化した時刻を含んだハード情報と、そのＤＢＭＳ２のＤＢＭＳ情報とを含んだカタログ情報を生成することができる。
【００６０】
次に、第一のストレージバックアッププログラム４は、ステップＳ３の処理を行うことができる。すなわち、第一のストレージバックアッププログラム４は、ボリュームコピーの指示を、第一のコピー制御プログラム６に出すことができる。また、第一のストレージバックアッププログラム４は、ステップＳ２で生成したカタログ情報の第一の管理テーブル４７への書込み指示と、プログラム識別子及び相手サーバWWNの通知とを、第一のコピー制御プログラム６に対して行うことができる。なお、ここで、「ボリュームコピーの指示」には、例えば、L-Seq#、L-LDEV#、R-Seq#及びR-LDEV#が含まれる。また、プログラム識別子は、例えば、第一のストレージバックアッププログラム４の識別子とすることができる。また、相手サーバWWNは、第二のサーバ１１のＷＷＮとすることができる。
【００６１】
次に、ステップＳ４とステップＳ９とが行われる。
【００６２】
ステップＳ４では、第一のコピー制御プログラム６が、第一のストレージバックアッププログラム４から指示を受け、その指示に応答して、ボリュームコピー指示を第一のストレージ制御プログラム４１に出すことができる。具体的には、例えば、第一のコピー制御プログラム６が、ボリュームコピー指示を、第一のコマンドデバイス４３のコマンド領域（例えば、第一の管理テーブル４７が存在する記憶領域とは別の記憶領域）に書くことができる。そのボリュームコピー指示には、例えば、L-Seq#、L-LDEV#、R-Seq#及びR-LDEV#が含まれている。
【００６３】
また、ステップＳ４では、第一のコピー制御プログラム６が、第一の管理テーブル４７の空きのレコード又は所定のレコードに、第一のストレージバックアッププログラム４からのカタログ情報（具体的には、それに含まれている種々の情報要素）と、第一のストレージバックアッププログラム４から通知されたプログラム識別子及び相手サーバＷＷＮを、第一の管理テーブル４７に書くことができる。具体的には、例えば、第一のコピー制御プログラム６が、カタログ情報、プログラム識別子及び相手サーバＷＷＮを第一の管理テーブル４７に書くことのコマンド（以下、カタログ書込みコマンド）を、第一のコマンドデバイス４３のコマンド領域に書くことができる。この場合、第一のストレージ制御プログラム４１が、第一のコマンドデバイス４３のコマンド領域からカタログ書込みコマンドを読み出した場合、そのカタログ書込みコマンドに従って、そのコマンド内のカタログ情報、プログラム識別子及び相手サーバＷＷＮを、第一の管理テーブル４７に書くことができる。
【００６４】
ステップＳ５では、第一のストレージ制御プログラム４１が、第一のコピー制御プログラム６からのボリュームコピー指示に従って、コピー処理を実行することができる。具体的には、例えば、第一のストレージ制御プログラム４１は、そのボリュームコピー指示（例えば、第一のコマンドデバイス４３から取得できたボリュームコピー指示）におけるL-Seq#、L-LDEV#、R-Seq#及びR-LDEV#から、どのＰＶＯＬ４５をどこのどのＳＶＯＬ１４５にコピーするかを判別することができる。そして、第一のストレージ制御プログラム４１は、前述したコピー処理を行うことで、ボリュームコピー指示を受けた時点のＰＶＯＬ４５のスナップショットをＳＶＯＬ１４５に生成させることができる。具体的には、例えば、第一のストレージ制御プログラム４１は、コピー対象のデータ（例えば上記差分データ）と、ＳＶＯＬ１４５のボリューム番号と、ＳＶＯＬ１４５での書込み先ＬＢＡ（論理ブロックアドレス）とを含んだコピー命令を、第二のストレージ制御プログラム１４１に送信する。第二のストレージ制御プログラム１４１は、そのコピー命令に従って、ＳＶＯＬ１４５にコピー対象のデータを書き込む。
【００６５】
また、ステップＳ５では、第一のストレージ制御プログラム４１が、第一の管理テーブル４７のレコードに書かれたカタログ情報、プログラム識別子及び相手サーバＷＷＮを、第二のストレージ制御プログラム１４１に転送することができる。この処理は、例えば、第一のコピー制御プログラム６からのボリュームコピー指示を契機に行うことができる。第二のストレージ制御プログラム１４１は、転送されて来たカタログ情報、プログラム識別子及び相手サーバＷＷＮを、第二の管理テーブル１４７の所定のレコード（例えば転送元のレコードに対応付けられたレコード）又は空いているレコードに、書くことができる（Ｓ６）。なお、このステップＳ５において、第一のストレージ制御プログラム４１は、第一のコマンドデバイス４３に対応する第二のコマンドデバイス１４３をコマンドデバイス管理テーブル６１から特定し、その第二のコマンドデバイス１４３に、カタログ情報送信コマンドを書き込むことができる。カタログ情報送信コマンドは、相手サーバＷＷＮを有する第二のサーバ１１にカタログ情報を送信することを第二のストレージ制御プログラム１４１に対して命じるものである。カタログ情報送信コマンドは、第一のサーバ１によって第一のコマンドデバイス４３に書かれ、第一のストレージ制御プログラム４１により、第一のコマンドデバイス４３から第二のコマンドデバイス１４３に転送されても良い。
【００６６】
第一のストレージ制御プログラム４１は、上述したコピー処理が終了するまで定期的にペア状態（STATUS）を第二のストレージ制御プログラム１４１に転送することができる（Ｓ７）。第二のストレージ制御プログラム１４１は、ペア状態を第一のストレージ制御プログラム４１から受信し、ステップＳ６でカタログ情報などを書き込んだレコード上のペア状態を、受信したペア状態に更新することができる（Ｓ８）。
【００６７】
ステップＳ９では、例えば以下のことが行われる。例えば、第一のストレージバックアッププログラム４が、定期的に、第一のコピー制御プログラム６にペア状態を問い合わせることができる。それに応答して、第一のコピー制御プログラム６が、第一のストレージ制御プログラム４１にペア状態を問い合わせることができる。第一のストレージ制御プログラム４１は、その問い合わせに応答して、問い合わせを受けた時点でのペア状態を第一のコピー制御プログラム６に回答することができる。第一のコピー制御プログラム６は、回答されたペア状態を、第一のストレージバックアッププログラム４に通知することができる。
【００６８】
ステップＳ９において、一定時間経ってもコピー完了を意味するペア状態が取得されない、或いは、コピーに失敗したことを意味するペア状態が取得された場合（Ｓ１０でＮＯ）、第一のストレージバックアッププログラム４は、所定のエラー処理を実行し（Ｓ１１）、ＤＢＭＳ２の静止化を解除することができる（Ｓ１２）。
【００６９】
ステップＳ９において、コピー完了を意味するペア状態（例えば、コピー状態から遷移した同期化状態）が取得された場合（Ｓ１０でＹＥＳ）、第一のストレージバックアッププログラム４は、ＤＢＭＳ２の静止化を解除することができる（Ｓ１３）。また、第一のストレージバックアッププログラム４は、記憶資源５に書いたカタログ情報に、ボリュームコピー時間（例えば、コピー処理の開始時刻、そのコピー処理の終了時刻、及び、そのコピー処理に要した時間長のうちの少なくとも一つ）を記録することができる（Ｓ１４）。また、第一のストレージバックアッププログラム４は、ボリュームコピー時間を第一の管理テーブル４７に書くことを第一のコピー制御プログラム６に指示することができる（Ｓ１５）。第一のコピー制御プログラム６は、その指示に従って、第一の管理テーブル４７における、ステップＳ４でカタログ情報などが書かれたレコードに、ボリュームコピー時間を書き、第一のストレージ制御プログラム４１が、第一の管理テーブル４７に書かれたボリュームコピー時間を、第二のストレージ制御プログラム１４１に転送することができる（Ｓ１６）。第二のストレージ制御プログラム１４１は、ボリュームコピー時間を受信し、第二の管理テーブル１４７における、ステップＳ６でカタログ情報などが書かれたレコードに、受信したボリュームコピー時間を書くことができる（Ｓ１７）。なお、ボリュームコピー時間は、例えば、第二のサーバ１１が表示することができる。
【００７０】
図５Ａは、第二のストレージ制御プログラム１４１が行う処理の流れの一例を示す。
【００７１】
この図５Ａに示す処理は、例えば、定期的に開始することができる。第二のストレージ制御プログラム１４１は、第二のコマンドデバイス１４３のコマンド領域にコマンドが記録されていれば（Ｓ３０でＹＥＳ）、そのコマンド領域からコマンドを読み出すことができる（Ｓ３１）。第二のストレージ制御プログラム１４１は、読み出したコマンドがカタログ情報送信コマンドでなければ（Ｓ３２でＮＯ）、読み出したコマンドに従う処理を行うことができる（Ｓ３３）。一方、第二のストレージ制御プログラム１４１は、読み出したコマンドがカタログ情報送信コマンドであれば（Ｓ３２でＹＥＳ）、そのコマンド（例えば、カタログ情報などが書かれたレコードが指定されているコマンド）に従って、ステップＳ８で書かれたカタログ情報を第二の管理テーブル１４７から取得し、取得したカタログ情報を、そのカタログ情報の取得元のレコードに書かれている相手サーバＷＷＮを有する第二のサーバ１１に送信することができる（Ｓ３４）。この場合、第二のストレージ制御プログラム１４１は、カタログ情報を受信する第二のコピー制御プログラム１６からカタログ情報を受信した旨の応答を受けた場合には（Ｓ３５でＹＥＳ）、終了とすることができるが、その応答を受けない場合には（Ｓ３５でＮＯ）、カタログ情報の送信をリトライすることができる。
【００７２】
以上が、第一実施例についての説明である。なお、カタログ情報の第二の管理テーブル１４７への書き込みは、第一のストレージ制御プログラム４１から第二のストレージ制御プログラム１４１に書込み命令を送信することにより行われても良いし、第二のストレージ制御プログラム１４１が第一のストレージ制御プログラム４１に読出し命令を送信することにより行われても良い。第二のストレージシステム１２１から第二のサーバ１１に送信されたカタログ情報は、第二のコピー制御プログラム１６を経由して第二のストレージバックアッププログラム１４に提供される。第二のストレージバックアッププログラム１４は、受信したカタログ情報を用いて、バックアップ或いはリストアを実行することができる。バックアップの実行では、例えば、第二のストレージバックアッププログラム１４は、受信したカタログ情報から特定できるＳＶＯＬ１４５からデータを読出し、そのデータを、記憶資源１５、或いは、第二のサーバ１１に通信可能に接続されている図示しない記憶装置（以下、便宜上「二次記憶装置」と称する）に、書き込むことができる。リストアの実行では、例えば、第二のストレージバックアッププログラム１４は、バックアップとして保持されているデータを記憶資源１５又は上記二次記憶装置（例えば、磁気テープを有する記憶装置）から読出し、読み出したデータを、受信したカタログ情報から特定できるＳＶＯＬ１４５に書くことができる。この場合、例えば、第二のストレージ制御プログラム１４１が、ＳＶＯＬ１４５内のデータをＰＶＯＬ４５に書く（具体的には、例えば、論理ボリューム１４５と４５の属性を反転して、４５をＳＶＯＬ、１４５をＰＶＯＬとし、ＰＶＯＬ１４５からＳＶＯＬ４５にデータをコピーする）ことができる。これにより、論理ボリューム４５にデータをリストアすることができる。
【００７３】
以上、上述した第一実施例によれば、第一のサーバ１から送信されたカタログ情報を、第一のコマンドデバイス４３及び第二のコマンドデバイス１４３を経由して、第二のサーバ１１に提供することができる。これにより、第一のサーバ１と第二のサーバ１１とが通信可能に接続されていなくても、第一のサーバ１が有するカタログ情報を第二のサーバ１１に提供することができる。
【００７４】
また、この第一実施例によれば、第二のコピー制御プログラム１６がカタログ情報を受け、第二のコピー制御プログラム１６からカタログ情報が第二のストレージバックアッププログラム１４に提供される。これにより、例えば、図２に点線で示すように、第二のサーバ１１内に、別種のストレージバックアッププログラム１４´が搭載された場合、第二のコピー制御プログラム１６が、各ストレージバックアッププログラムの第二のストレージ制御プログラム１４１に対する共通のインターフェースとなることができるので、その別種のストレージバックアッププログラム１４´も、カタログ情報を受けることができる。
【００７５】
ところで、第一実施例では、第二のストレージシステム１２１が、第二のサーバ１１からの要求を受けることなく、第二の管理テーブル１４７に書かれたカタログ情報を第二のサーバ１１に提供するが、変形例として、第二のサーバ１１が、第二の管理テーブル１４７からカタログ情報を取得することができる。以下、それについて説明する。
【００７６】
図５Ｂは、本発明の第一実施例の変形例において第二のサーバ１１が行う処理の流れの一例を示す。
【００７７】
第二のストレージバックアッププログラム１４は、定期監視機能を有している。定期監視機能とは、定期的に、第二のコピー制御プログラム１６にペア状態を問い合わせる機能である。
【００７８】
第二のストレージバックアッププログラム１４は、定期監視を行っている場合に、所定の時刻（例えば、ユーザから入力されたスケジュールで定められているバックアップ時刻）になったならば、ペア状態を問い合わせる時間間隔を短くし、定期監視を継続することができる（Ｓ２１）。第二のコピー制御プログラム１６は、第二のストレージバックアッププログラム１４からの問い合わせに応答して、第二のストレージ制御プログラム１４１に、ペア状態を問い合わせることができる。第二のストレージ制御プログラム４１は、その問い合わせに応答して、第一のストレージ制御プログラム１４１からのペア状態を、第二のコピー制御プログラム１６に回答することができる。第二のコピー制御プログラム１６は、回答されたペア状態を第二のストレージバックアッププログラム１４に、通知することができる。
【００７９】
第二のストレージバックアッププログラム１４は、上記の所定の時刻から一定時間経ってもコピー完了を意味するペア状態が取得されない、或いは、コピーに失敗したことを意味するペア状態が取得された場合（Ｓ２２でＮＯ）、第二のストレージバックアッププログラム１４は、所定のエラー処理を実行することができる（Ｓ２５）。一方、コピー完了を意味するペア状態が取得された場合（Ｓ２２でＹＥＳ）、第二のストレージバックアッププログラム１４は、第二の管理テーブル１４７のターゲットのレコードからカタログ情報を取得し（Ｓ２３）、取得したカタログ情報を用いてバックアップ或いはリストアを行うことができる（Ｓ２４）。ここで、「ターゲットのレコード」とは、所定のレコードであっても良いし、第二の管理テーブル１４７におけるレコード群の中から見つかった所定の条件に合致するレコードであっても良い。
【００８０】
この変形例でも、第一実施例と同様の効果を得ることができる。なお、この変形例では、相手サーバＷＷＮやカタログ情報送信コマンドは不要とすることができる。
【実施例２】
【００８１】
以下、本発明の第二実施例を説明する。その際、第一実施例との相違点を主に説明し、第一実施例との共通点については説明を簡略或いは省略する。
【００８２】
図６は、本発明の第二実施例に係る計算機システムに構築される論理的な構成の一例を示す。
【００８３】
第二実施例では、上述したコマンドデバイス４３、１４３は各ストレージシステム２１、１２１には搭載されない。そのため、上述した各管理テーブル４７、１４７も、各ストレージシステム２１、１２１には搭載されない。
【００８４】
第二実施例では、第一のストレージバックアッププログラム４は、データと共にカタログ情報をＰＶＯＬ４５に書き込むことができる。このため、ＰＶＯＬ４５からＳＶＯＬ１４５へのデータコピーが行われれば、カタログ情報も、ＳＶＯＬ１４５にコピーされる。第二のストレージバックアッププログラム１４は、ＳＶＯＬ１４５からデータを読み出す場合、カタログ情報を取得することができる。
【００８５】
図７は、この第二実施例において第一のサーバ１及び第一のストレージシステム２１で行われる処理の流れの一例を示す。
【００８６】
第一のストレージバックアッププログラム４は、第一実施例のステップＳ１及びＳ２と同様に、ＤＢＭＳ２を静止化し、カタログ情報を生成することができる（Ｓ５１、Ｓ５２）。
【００８７】
第一のストレージバックアッププログラム４は、生成したカタログ情報をファイルとしてＰＶＯＬ４５に書込み、且つ、ボリュームコピー指示を第一のコピー制御プログラム６に出すことができる（Ｓ５３）。なお、ここで、カタログ情報は、電子的なファイルとされるが、そのファイル名は、所定のファイル名とされる。
【００８８】
第一のコピー制御プログラム６は、ボリュームコピー指示を第一のストレージ制御プログラム４１に出すことができる（Ｓ５４）。第一のストレージ制御プログラム６は、ステップＳ５と同様に、コピー処理を行うことができる（Ｓ５５）。
【００８９】
Ｓ５３の後、ステップＳ９と同様に、定期的にペア状態が取得される（Ｓ５６）。第一のストレージバックアッププログラム４は、コピー完了を意味するペア状態を取得した場合には（Ｓ５７でＹＥＳ）、ＤＢＭＳ２の静止化を解除することができる（Ｓ５９）。一方、第一のストレージバックアッププログラム４は、ステップＳ１０でＮＯと同様の場合には（Ｓ５７でＮＯ）、所定のエラー処理を実行してから（Ｓ５８）、ＤＢＭＳ２の静止化を解除することができる（Ｓ５９）。
【００９０】
なお、上記の流れにおいて、例えば、第一のストレージ制御プログラム４１は、ペア状態を定期的に第二のストレージ制御プログラム１４１に通知することができる。
【００９１】
図８は、本発明の第二実施例において第二のサーバ１１が行う処理の流れの一例を示す。
【００９２】
第二のストレージバックアッププログラム１４は、ステップＳ２１と同様の処理を行うことができる（Ｓ６１）。その結果、上記の所定の時刻から一定時間経ってもコピー完了を意味するペア状態が取得されない、或いは、コピーに失敗したことを意味するペア状態が取得された場合（Ｓ６２でＮＯ）、第二のストレージバックアッププログラム１４は、所定のエラー処理を実行することができる（Ｓ６５）。
【００９３】
一方、第二のストレージバックアッププログラム１４は、コピー完了を意味するペア状態が取得された場合（Ｓ６２でＹＥＳ）、第二のストレージバックアッププログラム１４は、ＳＶＯＬ１４５内からカタログ情報を探して読み出し（Ｓ６３）、読み出したカタログ情報を用いてバックアップ或いはリストアを行うことができる（Ｓ６４）。なお、ここで、カタログ情報には、前述した処理により所定のファイル名が設定されており、第二のストレージバックアッププログラム１４は、その所定のファイル名を探すことで、カタログ情報を見つけることができる。
【００９４】
以上、本発明の第二実施例によれば、第一実施例と同様に、第一のサーバ１から送信されたカタログ情報を、第一のコマンドデバイス４３及び第二のコマンドデバイス１４３を経由して、第二のサーバ１１に提供することができる。これにより、第一のサーバ１と第二のサーバ１１とが通信可能に接続されていなくても、第一のサーバ１が有するカタログ情報を第二のサーバ１１に提供することができる。
【００９５】
また、この第二実施例によれば、コマンドデバイスを不要とすることができる。
【実施例３】
【００９６】
図９Ａは、本発明の第三実施例で行われる処理の流れの一例を示す。
【００９７】
この第三実施例では、第一のストレージバックアッププログラム４は、第四の通信媒体１２Ｄを介して第二のサーバ１１にカタログ情報を送る第一のモードと、第一及び第二のストレージシステム２１、１２１を介して第二のサーバ１１にカタログ情報を送る第二のモードとを選択的に実行することができるようになっている。
【００９８】
第一のストレージバックアッププログラム４は、定期的に、第二のサーバ１１との通信状況を監視することができる（Ｓ７１）。
【００９９】
第一のストレージバックアッププログラム４は、通信状況が前回の監視結果と実質的に変わっていない場合には、モードを現状のままとすることができる（Ｓ７３）。例えば、第一のモードになっていれば、第一のモードのままとし、第二のモードになっていれば、第二のモードとすることができる。なお、第二のモードのままとする場合には、第一のストレージバックアッププログラム４は、図９Ｂの処理を行っても良い。
【０１００】
第一のストレージバックアッププログラム４は、通信状況が悪くなった場合（例えば、第四の通信媒体１２Ｄの転送速度が所定値以下になった、或いは、第二のサーバ１１との接続が切断されたことを検出した場合）、第一のモードになっていたならば、第一のモードから第二のモードになることができる（Ｓ７４）。換言すれば、第一のストレージバックアッププログラム４は、第一のストレージシステム２１にカタログ情報を送信するようにし、第四の通信媒体１２Ｄを介してカタログ情報を送信しないようにすることができる。
【０１０１】
第一のストレージバックアッププログラム４は、通信状況が良くなった場合（例えば、第四の通信媒体１２Ｄの転送速度が所定値よりも速くなった、或いは、第二のサーバ１１との接続が回復されたことを検出した場合）、第二のモードになっていたならば、第二のモードから第一のモードになることができる（Ｓ７５）。換言すれば、第一のストレージバックアッププログラム４は、第四の通信媒体１２Ｄを介してカタログ情報を送信するようにし、第一のストレージシステム２１にカタログ情報を送信しないようにすることができる。
【０１０２】
図９Ｂは、ステップＳ７４で行われる処理の具体的な流れの一例を示す。
【０１０３】
第一のストレージバックアッププログラム４は、所定の条件に合致すれば（Ｓ７４−１でＹＥＳ）、第一のコピー制御プログラム６を介して第一のコマンドデバイス４３にカタログ情報を書き込むようにし（Ｓ７４−２）、所定の条件に合致せず別の条件に合致すれば（Ｓ７４−１でＮＯ）、ＰＶＯＬ４５にカタログ情報を書き込むようにすることができる（Ｓ７４−３）。なお、所定の条件としては、例えば、ＰＶＯＬ４５の空き容量が所定量以下であるという条件を採用することができる。別の条件としては、例えば、ＰＶＯＬ４５の空き容量が所定量よりも多いという条件を採用することができる。
【０１０４】
この第三実施例によれば、第一のストレージバックアッププログラム４は、第四の通信媒体１２Ｄを介してカタログ情報を送信することと、第一のストレージシステム２１を介してカタログ情報を送信することとを選択的に行うことができる。また、第一のストレージバックアッププログラム４は、第一のコマンドデバイス４３を介してカタログ情報を送信することと、ＰＶＯＬ４５を介してカタログ情報を送信することとを選択的に行うことができる。
【０１０５】
以上、本発明の好適な幾つかの実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、上述した各実施例は、カタログ情報に限らず、他種の情報を通知することにも適用することができる。
【図面の簡単な説明】
【０１０６】
【図１】図１は、本発明の第一実施例に係る計算機システムの物理的な構成の概要を示す。
【図２】図２は、第一実施例に係る計算機システムに構築される論理的な構成の一例を示す。
【図３】図３Ａは、第一の管理テーブル４７の構成例を示す。図３Ｂは、第二の管理テーブル１４７の構成例を示す。図３Ｃは、第一のストレージシステム２１のメモリ２６に記憶されるコマンドデバイス管理テーブルの構成例を示す。
【図４】図４は、第一のサーバ１からカタログ情報が送信される場合において第二の管理テーブル１４７の更新が完了するまでに行われる処理の流れの一例を示す。
【図５】図５Ａは、第二のストレージ制御プログラム１４１が行う処理の流れの一例を示す。図５Ｂは、本発明の第一実施例の変形例において第二のサーバ１１が行う処理の流れの一例を示す。
【図６】図６は、本発明の第二実施例に係る計算機システムに構築される論理的な構成の一例を示す。
【図７】図７は、本発明の第二実施例において第一のサーバ１及び第一のストレージシステム２１で行われる処理の流れの一例を示す。
【図８】図８は、本発明の第二実施例において第二のサーバ１１が行う処理の流れの一例を示す。
【図９】図９Ａは、本発明の第三実施例で行われる処理の流れの一例を示す。図９Ｂは、ステップＳ７４で行われる処理の具体的な流れの一例を示す。
【符号の説明】
【０１０７】
１、１１…サーバ  ２…データベースマネジメントシステム（ＤＢＭＳ）  ３、１３…ＣＰＵ  ４、１４…ストレージバックアッププログラム  ５、１５…記憶資源  ６、１６…コピー制御プログラム  １２Ａ、１２Ｂ、１２Ｃ、１２Ｄ…通信媒体  ２１、１２１…ストレージシステム  ２２、１２２…コントローラ  ２３、１２３…ＣＰＵ  ２６、１２６…メモリ  ３３、１３３…メディアドライブ  ４１、１４１…ストレージ制御プログラム  ４３、１４３…コマンドデバイス  ４５…プライマリボリューム  １４５…セカンダリボリューム
【図１】
2007148520.tif 000003
【図２】
2007148520.tif 000004
【図３】
2007148520.tif 000005
【図４】
2007148520.tif 000006
【図５】
2007148520.tif 000007
【図６】
2007148520.tif 000008
【図７】
2007148520.tif 000009
【図８】
2007148520.tif 000010
【図９】
2007148520.tif 000011