(57)【特許請求の範囲】
【請求項１】
第１ストレージ装置と、第２ストレージ装置とを含み、
前記第１ストレージ装置は、
マスターデータを格納する第１記憶手段と、
前記第１ストレージ装置および前記第２ストレージ装置に格納されているデータのアドレスに関する情報を示すアドレス情報を管理する第１制御手段を備え、
前記第２ストレージ装置は、
バックアップデータを格納する第２記憶手段と、
前記第１ストレージ装置および前記第２ストレージ装置とは異なる外部装置から、前記第２ストレージ装置が受信した要求に応じた処理を行う第２制御手段とを備え、
第２制御手段は、前記第２ストレージ装置が受信した要求が書き込み要求の場合、前記第２記憶手段に、前記書き込み要求に含まれる書き込みデータの書き込みを行い、該書き込みデータのアドレスを、前記第１制御手段に送信し、
前記第１制御手段は、前記書き込みデータのアドレスに基づき、前記アドレス情報を更新し、前記アドレス情報を更新した旨を、前記第２制御手段に通知し、
前記第２制御手段は、前記通知に基づいて、前記外部装置に、前記書き込み要求に対する応答を送信するストレージ管理システム。
【請求項２】
前記第２制御手段は、前記外部装置に前記応答を送信した後、前記受信した書き込み要求に含まれる前記書き込みデータを前記第１制御手段に送信し、
前記第１制御手段は、前記書き込みデータを前記第１記憶手段に書き込み、該第１記憶手段への書き込みに基づいて、前記アドレス情報を更新する請求項１に記載のストレージ管理システム。
【請求項３】
前記第２制御手段は、前記第２ストレージ装置が受信した要求が読み込み要求の場合、前記読み込み要求に含まれる読み込み対象データが格納された位置を示す、前記読み込み対象データのアドレスを確認する指示を、前記第１制御手段に送信し、
前記第１制御手段は、前記指示に基づいて、前記アドレス情報から、前記読み込み対象データのアドレスを確認し、該読み込み対象データのアドレスに基づき、最新の前記読み込み対象データが前記第２ストレージ装置にあるか否か判定し、
前記読み込み対象データが前記第２ストレージ装置にない場合、前記読み込み対象データを前記第１記憶手段から取得して、前記第２制御手段に送信し、
前記読み込み対象データが前記第２ストレージ装置にある場合、前記読み込み対象データのアドレスを、前記第２制御手段に送信し、
前記第２制御手段は、前記第１制御手段から前記読み込み対象データのアドレスを受信した場合、該読み込み対象データのアドレスに基づき、前記第２記憶手段から、前記読み込み対象データを取得し、
前記第２制御手段は、前記第１制御手段から受信した読み込み対象データまたは前記第２記憶手段から取得した読み込み対象データを、前記外部装置に送信する請求項１または２に記載のストレージ管理システム。
【請求項４】
前記第１制御手段は、前記読み込み対象データのアドレスの確認の結果、該読み込み対象データのアドレスが前記アドレス情報に存在しない場合、前記外部装置または前記第２制御手段に、エラーを送信する請求項３に記載のストレージ管理システム。
【請求項５】
マスターデータを格納する第１記憶手段を含む第１ストレージ装置と、バックアップデータを格納する第２記憶手段を含む第２ストレージ装置とを備えるストレージ管理システムのストレージ管理方法であって、
前記第１ストレージ装置は、前記第１ストレージ装置および前記第２ストレージ装置に格納されているデータのアドレスに関する情報を示すアドレス情報を管理し、
前記第２ストレージ装置は、前記第１ストレージ装置および前記第２ストレージ装置とは異なる外部装置から受信した要求に応じた処理を行い、
前記要求が書き込み要求の場合、前記書き込み要求に含まれる書き込みデータの書き込みを行い、該書き込みデータのアドレスを、前記第１ストレージ装置に送信し、
前記第１ストレージ装置は、前記書き込みデータのアドレスに基づき、前記アドレス情報を更新し、前記アドレス情報を更新した旨を、前記第２ストレージ装置に通知し、
前記第２ストレージ装置は、前記通知に基づいて、前記外部装置に、前記書き込み要求に対する応答を送信するストレージ管理方法。
【請求項６】
前記第２ストレージ装置は、前記外部装置に前記応答を通知した後、前記受信した書き込み要求に含まれる前記書き込みデータを前記第１ストレージ装置に送信し、
前記第１ストレージ装置は、前記書き込みデータを前記第１記憶手段に書き込み、該第１記憶手段への書き込みに基づいて、前記アドレス情報を更新する請求項５に記載のストレージ管理方法。
【請求項７】
前記第２ストレージ装置は、前記第２ストレージ装置が受信した要求が読み込み要求の場合、前記読み込み要求に含まれる読み込み対象データが格納された位置を示す、前記読み込み対象データのアドレスを確認する指示を、前記第１ストレージ装置に送信し、
前記第１ストレージ装置は、前記指示に基づいて、前記アドレス情報から、前記読み込み対象データのアドレスを確認し、該読み込み対象データのアドレスに基づき、最新の前記読み込み対象データが前記第２ストレージ装置にあるか否か判定し、
前記読み込み対象データが前記第２ストレージ装置にない場合、前記読み込み対象データを、前記第１記憶手段から取得して、前記第２ストレージ装置に送信し、
前記読み込み対象データが前記第２ストレージ装置にある場合、前記読み込み対象データのアドレスを、前記第２ストレージ装置に送信し、
前記第２ストレージ装置は、前記第１ストレージ装置から前記読み込み対象データのアドレスを受信した場合、該読み込み対象データのアドレスに基づき、前記第２記憶手段から、前記読み込み対象データを取得し、
前記第２ストレージ装置は、前記第１ストレージ装置から受信した読み込み対象データまたは前記第２記憶手段から取得した読み込み対象データを、前記外部装置に送信する請求項５または６に記載のストレージ管理方法。
【請求項８】
前記第１ストレージ装置は、前記読み込み対象データのアドレスの確認の結果、該読み込み対象データのアドレスが前記アドレス情報に存在しない場合、前記外部装置または前記第２ストレージ装置に、エラーを送信する請求項７に記載のストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを管理する技術に関する。
【背景技術】
【０００２】
情報の電子化が進み、膨大な量の情報を保護する技術が重要視されている。例えば、特許文献１には、２台のストレージ装置で、ペア構成を組み、メインサイトのストレージ装置のみでなく、リモートサイトのストレージ装置でリード／ライトを受信できる技術が記載されている。
【０００３】
また、特許文献２には、新たなＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）ユニットを既存のＮＡＳユニットを含むシステムに追加する際、該新たなＮＡＳユニットと、既存のＮＡＳユニットとをループ接続することによって、ストレージシステムを拡張する技術が記載されている。
【０００４】
また、特許文献３には、ノード装置から送信されるメッセージの種別を識別し、識別結果に応じてメッセージの転送先を変更する技術が記載されている。
【０００５】
また、特許文献４には、複数のボリュームのうち、電源制御特性が同一、または類似するボリュームが同じアレイグループに集まるように、候補のボリュームを抽出し、画面に表示する技術が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５６２０６１４号公報
【特許文献２】特開２００７−３３４７６４号公報
【特許文献３】特開２００３−０４４４２１号公報
【特許文献４】特開２０１０−１２８８９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ユーザが書き込みや読み込みの要求（指示）を送信した後、応答を受信するまでの時間（レスポンスタイム）は、短い方が好ましい。
【０００８】
しかしながら、特許文献１に記載の技術は、セカンダリーボリュームに対するライト指示を受領した場合においても、プライマリーボリュームに対して書き込みを行い、その後セカンダリーボリュームに書き込み処理を実行する。よって、特許文献１に記載の技術は、セカンダリーボリュームに対する書き込み処理の実行に時間がかかり、これにより、セカンダリーボリュームに対するライト指示の応答までの時間（レスポンスタイム）がかかる。
【０００９】
また、特許文献２に記載の技術は、サブのＮＡＳシステムからデータを読み込む際には、マスタのＮＡＳシステムおよびＦＣ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ）スイッチを介してデータの読み込み要求を送信する必要があり、データの読み込みに時間がかかる。よって、特許文献２に記載の技術は、レスポンスタイムがかかる。
【００１０】
また、特許文献３に記載の技術は、ノード装置が送信するメッセージであって、データに対する指示またはデータとデータに対する指示とが含まれる該メッセージの種別を識別して、メッセージの識別結果に応じて転送先を変更し、その後、メッセージに含まれる指示に従った処理を行う。例えば、データ書き込みまたはデータ読み出しを示すデータ転送系メッセージの場合、特許文献３に記載の技術は、データ転送系メッセージを、特定の外部装置へ送信する。そして、特定の外部装置は、データ転送系メッセージを受信し、受信したデータ転送系メッセージをドライバに送信する。その後、ドライバはデータ転送系メッセージを受信し、ディスクに対して、受信した転送系メッセージに含まれる指示を実行する。よって、特許文献３に記載の技術は、データ書き込みまたはデータ読み出しが行われるまでに時間がかかる。つまり、特許文献３に記載の技術は、レスポンスタイムがかかる。
【００１１】
また、特許文献４に記載の技術は、ホストから、ライト要求を受領した場合、書き込み処理を行う前に、正ストレージ装置に格納されている全てのデータを副ストレージ装置にコピーする。つまり、特許文献４に記載の技術は、書き込み処理を行うまでに時間がかかる。よって、特許文献４に記載の技術は、レスポンスタイムがかかる。
【００１２】
そこで、本発明は上記課題を鑑みて発明されたものであって、レスポンスタイムを短くする技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一形態に係るストレージ管理システムは、第１ストレージ装置と、第２ストレージ装置とを含み、前記第１ストレージ装置は、マスターデータを格納する第１記憶手段と、前記第１ストレージ装置および前記第２ストレージ装置に格納されているデータのアドレスに関する情報を示すアドレス情報を管理する第１制御手段を備え、前記第２ストレージ装置は、バックアップデータを格納する第２記憶手段と、前記第１ストレージ装置および前記第２ストレージ装置とは異なる外部装置から、前記第２ストレージ装置が受信した要求に応じた処理を行う第２制御手段とを備え、第２制御手段は、前記第２ストレージ装置が受信した要求が書き込み要求の場合、前記第２記憶手段に、前記書き込み要求に含まれる書き込みデータの書き込みを行い、該書き込みデータのアドレスを、前記第１制御手段に送信し、前記第１制御手段は、前記書き込みデータのアドレスに基づき、前記アドレス情報を更新し、前記アドレス情報を更新した旨を、前記第２制御手段に通知し、前記第２制御手段は、前記通知に基づいて、前記外部装置に、前記書き込み要求に対する応答を送信する。
【００１４】
本発明の一形態に係るストレージ管理方法は、マスターデータを格納する第１記憶手段を含む第１ストレージ装置と、バックアップデータを格納する第２記憶手段を含む第２ストレージ装置とを備えるストレージ管理システムのストレージ管理方法であって、前記第１ストレージ装置は、前記第１ストレージ装置および前記第２ストレージ装置に格納されているデータのアドレスに関する情報を示すアドレス情報を管理し、前記第２ストレージ装置は、前記第１ストレージ装置および前記第２ストレージ装置とは異なる外部装置から受信した要求に応じた処理を行い、前記要求が書き込み要求の場合、前記書き込み要求に含まれる書き込みデータの書き込みを行い、該書き込みデータのアドレスを、前記第１ストレージ装置に送信し、前記第１ストレージ装置は、前記書き込みデータのアドレスに基づき、前記アドレス情報を更新し、前記アドレス情報を更新した旨を、前記第２ストレージ装置に通知し、前記第２ストレージ装置は、前記通知に基づいて、前記外部装置に、前記書き込み要求に対する応答を送信する。
【発明の効果】
【００１５】
本発明によれば、レスポンスタイムを短くすることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１実施形態に係るストレージ管理システムの構成の一例を示すブロック図である。
【図２】本発明の第１実施形態に係るストレージ管理システムのハードウェア構成の一例を示す図である。
【図３】本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。
【図４】アドレス情報を説明するための例示的概念図である。
【図５】アドレス情報を説明するための例示的概念図である。
【図６】本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。
【図７】本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。
【図８】本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。
【図９】本発明の第２実施形態に係るストレージ管理システムの構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１８】
＜第１実施形態＞
図１は、本発明の第１実施形態におけるストレージ管理システム１の構成の一例を示すブロック図である。図１において、ストレージ管理システム１は、第１ホスト計算機１０と、第１ストレージ装置２０と、第２ホスト計算機３０と、第２ストレージ装置４０とを備える。
【００１９】
第１ホスト計算機１０は、第１ストレージ装置２０および第２ホスト計算機３０と、有線または無線のネットワークによって相互に接続されている。また、第１ホスト計算機１０は、第１ストレージ装置２０に対して、データの書き込み要求（以下、書き込み要求）またはデータの読み込み要求（以下、読み込み要求）を送信する。なお、書き込み要求には、書き込みを行うデータ（以下、書き込みデータ）が含まれる。また、読み込み要求には、読み込みを行う対象のデータ（以下、読み込み対象データ）を特定する情報が含まれる。そして、第１ストレージ装置２０は、第１ホスト計算機１０から書き込み要求または読み込み要求を受信し、受信した書き込み要求または読み込み要求に基づき、処理を行う。
【００２０】
また、第１ストレージ装置２０は、第１通信部２１と、第１制御部２２と、管理部２３と、アドレス記憶部２４と、第１記憶部２５とを備える。そして、第１ストレージ装置２０は、第１ホスト計算機１０および第２ストレージ装置４０と、有線または無線のネットワークによって相互に接続されている。また、アドレス記憶部２４と、第１記憶部２５とを合わせて１つの記憶部とする構成でもよい。また、第１記憶部２５は複数でもよい。
【００２１】
なお、第１ストレージ装置２０が行う具体的な処理および第１ストレージ装置２０が備える各部の具体的な動作は、図３〜図８を用いて説明する。
【００２２】
第２ホスト計算機３０は、第１ホスト計算機１０および第２ストレージ装置４０と、有線または無線のネットワークによって相互に接続されている。また、第２ホスト計算機３０は、第２ストレージ装置４０に対して、書き込み要求または読み込み要求を送信する。第２ストレージ装置４０は、第２ホスト計算機３０から書き込み要求または読み込み要求を受信し、受信した書き込み要求または読み込み要求に基づき、処理を行う。
【００２３】
また、第２ストレージ装置４０は、第２通信部４１と、第２制御部４２と、第２記憶部４３とを備える。なお、第２記憶部４３は複数でよい。第２ストレージ装置４０は、第１ストレージ装置２０および第２ホスト計算機３０と、有線または無線のネットワークによって相互に接続されている。なお、第２ストレージ装置４０が行う具体的な処理および第２ストレージ装置４０が備える各部の具体的な動作は、図３〜図８を用いて説明する。
【００２４】
図２は、本発明の第１実施形態に係るストレージ管理システム１のハードウェア構成の一例を示すブロック図である。
【００２５】
ストレージ管理システム１の各装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）９１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９２と、ネットワークインタフェース９３と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９４と、記憶装置９５とによって構成される。
【００２６】
ホスト計算機１０およびホスト計算機３０のおのおのは、例えば、ネットワークインタフェース９３と、ＲＯＭ９２および記憶装置９５に記憶されたコンピュータプログラムをＲＡＭ９４に書き込み、書き込まれたコンピュータプログラムを実行するＣＰＵ９１を備えたコンピュータ装置によって実現可能である。
【００２７】
第１通信部２１および第２通信部４１のおのおのは、ネットワークインタフェース９３によって構成される。
【００２８】
第１制御部２２および管理部２３と、第２制御部４２とは、それぞれＲＯＭ９２および記憶装置９５に記憶されたコンピュータプログラムをＲＡＭ９４に書き込み、書き込まれたコンピュータプログラムを実行するＣＰＵ９１によって構成される。
【００２９】
アドレス記憶部２４および第１記憶部２５と、第２記憶部４３とは、それぞれ記憶装置９５によって構成される。
【００３０】
なお、上述したハードウェア構成は一例であり、上述した構成には限定されない。
【００３１】
図３は、本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。具体的には、第２ホスト計算機３０が、第２ストレージ装置４０に対し、書き込み要求を送信した際の動作の一例を示すフローチャートである。図３では、第１ストレージ装置２０の処理を左側に、第２ストレージ装置４０の処理を中央に、第２ホスト計算機３０の処理を右側に示す。
【００３２】
なお、第１ストレージ装置２０の処理と第２ストレージ装置４０の処理との間と、第２ストレージ装置４０の処理と第２ホスト計算機３０の処理との間にある破線の矢印は、情報の流れを示している。
【００３３】
まず、第２ホスト計算機３０が、第２ストレージ装置４０に対し、書き込み要求を送信する（ステップＳ１０１）。
【００３４】
そして、第２ストレージ装置４０の第２通信部４１が、第２ホスト計算機３０から、書き込み要求を受信する（ステップＳ１０２）。その後、第２通信部４１は、書き込み要求を第２制御部４２に送信する。そして、第２制御部４２は、第２通信部４１から書き込み要求を受信し、受信した書き込み要求に基づき、第２記憶部４３に書き込みデータを格納する。つまり、第２制御部４２は、第２記憶部４３に格納されている、書き込みデータに対応するデータを更新するまたは第２記憶部４３に書き込みデータを追加する（ステップＳ１０３）。さらに、第２制御部４２は、ステップＳ１０３で、第２記憶部４３に書き込んだ書き込みデータの位置（アドレス）を第２通信部４１に送信する。そして、第２通信部４１は、第２制御部４２から書き込みデータのアドレスを受信し、受信した書き込みデータのアドレスを、第１ストレージ装置２０に送信する（ステップＳ１０４）。
【００３５】
ステップＳ１０４の終了後、第１ストレージ装置２０の第１通信部２１は、第２ストレージ装置４０から、書き込みデータのアドレスを受信し（ステップＳ１０５）、受信した書き込みデータのアドレスを第１制御部２２に送信する。そして、第１制御部２２は、第１通信部２１から書き込みデータのアドレスを受信する。
【００３６】
第１制御部２２は、第１通信部２１から情報（データ）を受信すると、受信した情報が、例えば第１記憶部２５に格納するような、データに関する情報か、アドレスに関する情報かを判定し、判定の結果に基づいた動作を行う。なお、第１制御部２２は、第１通信部２１から受信した情報が、書き込み要求、読み込み要求またはアドレス確認要求の場合は、アドレスに関する情報と判定する。受信した情報がアドレスに関する情報の場合、第１制御部２２は、管理部２３に対して、受信した情報を送信する。今回受信した書き込みデータのアドレスは、アドレスに関する情報であるため、第１制御部２２は、受信した情報がアドレスに関する情報であると判定する。そして、第１制御部２２は、受信した書き込みデータのアドレスを管理部２３に送信する。
【００３７】
その後、管理部２３は、第１制御部２２から書き込みデータのアドレスを受信し、受信した書き込みデータのアドレスを用いて、アドレス記憶部２４に格納されているアドレス情報を更新する（ステップＳ１０６）。
【００３８】
ここで、図４を用いて、アドレス情報について詳細に説明する。
【００３９】
図４に示すように、アドレス情報は、書き込まれたデータを識別するファイル名と、データの更新日時と、データがどの装置に格納されているのかを示す装置識別子と、第１記憶部２５または第２記憶部４３に格納されているデータのアドレスと、が夫々対応づけられている。なお、書き込まれたデータの識別子は、ファイル名には限定されない。
【００４０】
また、図４に示す４行目のファイル名「Ｆｉｌｅ１」の行は、ステップＳ１０６によって更新された情報を示す。Ｆｉｌｅ１の更新日時は、Ｆｉｌｅ１が記憶部に追加された（またはＦｉｌｅ１が更新された）日時である。図４に示す例では、Ｆｉｌｅ１が第１記憶部２５および第２記憶部４３の何れにも格納されていない、新しいデータであるとする。したがって、図４に示すＦｉｌｅ１の更新日時は、Ｆｉｌｅ１が第２記憶部４３に追加された日時を示す。また、Ｆｉｌｅ１の装置識別子は、Ｆｉｌｅ１が格納されている装置を示す。Ｆｉｌｅ１のアドレスは、Ｆｉｌｅ１が格納されている記憶部の場所を示す。
【００４１】
図３に戻り、管理部２３は、第１制御部２２に、アドレス情報を更新したことを示す通知（以下、アドレス更新通知）を送信する。また、第１制御部２２は、管理部２３から、アドレス更新通知を受信し、受信したアドレス更新通知を第１通信部２１に送信する。次に、第１通信部２１は、第１制御部２２からアドレス更新通知を受信し、受信したアドレス更新通知を、第２ストレージ装置４０に送信する（ステップＳ１０７）。
【００４２】
上記動作によって、第２ストレージ装置４０は、受信した書き込み要求に基づいて、第２記憶部４３にデータの書き込みを行い、書き込んだデータのアドレスのみを第１ストレージ装置２０に送信する。これによって、書き込み要求を第１ストレージ装置２０に送信する場合と比較すると、ストレージ管理システム１は、データ転送の時間を削減することが可能となる。
【００４３】
そして、第２通信部４１は、第１ストレージ装置２０からアドレス更新通知を受信し（ステップＳ１０８）、受信したアドレス更新通知に基づいて、書き込み要求に対する応答を第２ホスト計算機３０に送信する（ステップＳ１０９）。その後、第２ホスト計算機３０は、第２ストレージ装置４０から応答を受信する（ステップＳ１１０）。
【００４４】
そして、第２制御部４２は、第２記憶部４３から、書き込みデータを取り出し、取り出した書き込みデータを第２通信部４１に送信する。その後、第２通信部４１は、第２制御部４２から書き込みデータを受信し、受信した書き込みデータを第１ストレージ装置２０に送信する（ステップＳ１１１）。なお、ステップＳ１１０とステップＳ１１１は順不同である。
【００４５】
その後、第１通信部２１は、第２ストレージ装置４０から書き込みデータを受信し、受信した書き込みデータを第１制御部２２に送信する。そして、第１制御部２２は、第１通信部２１から書き込みデータを受信し、受信した書き込みデータを第１記憶部２５に格納する。つまり、第１制御部２２は、第１記憶部２５に書き込みデータに対応するデータが存在する場合、該対応するデータを書き込みデータに更新、または第１記憶部２５に書き込みデータに対応するデータがない場合、書き込みデータを追加する（ステップＳ１１３）。
【００４６】
ステップＳ１１３の終了後、第１制御部２２は、ステップＳ１１３にて、第１記憶部２５に書き込んだデータの位置（アドレス）を管理部２３に送信する。その後、管理部２３は、第１制御部２２から、書き込んだデータの位置（アドレス）を受信し、受信した書き込んだデータの位置（アドレス）を用いて、アドレス記憶部２４に格納されているアドレス情報を更新する（ステップＳ１１４）。なお、ステップＳ１１３と、ステップＳ１１４とは、ステップＳ１１２の終了後、任意のタイミングで行われてもよい。
【００４７】
図５を参照して、ステップＳ１１４の処理の具体例を説明する。Ｆｉｌｅ１は、上述した通り、第２記憶部４３に新たに追加されたデータであるとする。図５に示す通り、ステップＳ１１４の処理によって、「Ｆｉｌｅ１」の装置識別子に、「第１ストレージ装置」が追加され、アドレスに、第１記憶部２５のアドレスを示す「第１記憶部」および「０ｘ０００００００Ａ」が追加されている。なお、アドレス情報における、第１記憶部と第２記憶部とのアドレスは同じでもよい。なお、更新日時は、第２記憶部４３に書き込んだ時刻のまま更新されていないが、第１記憶部２５に書き込んだ時刻に更新されてもよい。
【００４８】
このように、第２ストレージ装置４０が第２ホスト計算機３０に書き込み要求に対する応答を送信した後、第１ストレージ装置２０は、データの更新または追加と、アドレス情報の更新とを行う。
【００４９】
なぜなら、第１ストレージ装置２０が、第１ストレージ装置２０および第２ストレージ装置４０に格納されているデータのアドレスを、一元管理しているため、第１ストレージ装置２０と第２ストレージ装置４０との間のデータ転送を非同期で行うことが可能になるからである。
【００５０】
本実施形態において、第２ストレージ装置４０は書き込み要求を受信した場合、データの更新または追加を行った後、更新または追加を行ったデータのアドレスのみを第１ストレージ装置２０に送信する。そして、第１ストレージ装置２０は、更新または追加を行ったデータのアドレスに基づいてアドレス情報を更新し、アドレス更新通知を第２ストレージ装置４０に送信する。その後、第２ストレージ装置４０は、該アドレス更新通知に基づいて、書き込み要求に対する応答を、第２ホスト計算機３０に送信することができる。
【００５１】
これにより本実施形態の動作は、例えば、第１ストレージ装置２０が、データの更新または追加と、アドレス情報の更新とを行った場合に比較すると、第２ホスト計算機３０は、より早く書き込み要求に対する応答を取得することが可能となる。また、書き込み要求に対する応答によって、ユーザは書き込み要求が正しく処理されたことを知ることが可能である。よって、本実施形態におけるストレージ管理システム１は、レスポンスタイムを短くすることが可能となる。
【００５２】
図６は、本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。具体的には、第１ホスト計算機１０が、第１ストレージ装置２０に対し、書き込み要求を送信した際の動作の一例を示すフローチャートである。なお、図６において、左側にある第１ホスト計算機１０の処理と、右側にある第１ストレージ装置２０の処理との間にある破線の矢印は、情報の流れを示している。
【００５３】
まず、第１ホスト計算機１０は、第１ストレージ装置２０に、書き込み要求を送信する（ステップＳ２０１）。そして、第１通信部２１は、第１ホスト計算機１０から、書き込み要求を受信し（ステップＳ２０２）、受信した書き込み要求を第１制御部２２に送信する。第１制御部２２は、第１通信部２１から書き込み要求を受信する。上述した通り、第１制御部２２は、受信した情報の判定を行う。今回、第１制御部２２が受信した情報は書き込み要求であるため、第１制御部２２は、受信した書き込み要求を管理部２３に送信する。
【００５４】
そして、管理部２３は、第１制御部２２から、書き込み要求を受信し、受信した書き込み要求に基づいて、アドレス記憶部２４を参照し、書き込みデータに対応するデータのアドレスを検索する（ステップＳ２０３）。対応するデータは、例えば、書き込みデータと同じファイル名を持つデータを示す。なお、対応するデータは、書き込みデータと同じファイル名を持つデータに限定されず、同じ識別子を有するデータであればよい。
【００５５】
そして、管理部２３は、アドレス記憶部２４から書き込みデータに対応するデータのアドレスがあるか否か判定する（ステップＳ２０４）。書き込みデータに対応するデータのアドレスがある場合（ステップＳ２０４にてＹＥＳ）、管理部２３は、取得した書き込みデータのアドレスを、第１制御部２２に送信する。
【００５６】
その後、第１制御部２２は、管理部２３から書き込みデータのアドレスを受信し、受信した書き込みデータのアドレスと、書き込み要求とに基づいて、第１記憶部２５に格納されている、書き込みデータに対応するデータを更新する（ステップＳ２０５）。
【００５７】
ステップＳ２０４にて、書き込みデータに対応するデータのアドレスがない場合、つまり、書き込みデータが新しく第１記憶部２５に格納されるデータの場合、管理部２３は、該アドレスがないことを示す通知を、第１制御部２２に送信する。その後、第１制御部２２は、管理部２３から、該通知を受信する。そして、第１制御部２２は、該通知を受信したことを契機に、書き込み要求に基づいて、第１記憶部２５に書き込みデータを追加する（ステップＳ２０６）。
【００５８】
さらに第１制御部２２は、データを更新または追加したことを示す通知（以下、書き込み完了通知）を第１通信部２１に送信する。また、第１制御部２２は、ステップＳ２０６にて、第１記憶部２５に書き込んだデータの位置（アドレス）を管理部２３に送信する。その後、第１通信部２１は、第１制御部２２から書き込み完了通知を受信し、受信した書き込み完了通知に基づいて、書き込み要求に対する応答を第１ホスト計算機１０に送信する（ステップＳ２０７）。
【００５９】
ステップＳ２０５の終了後、第１ホスト計算機１０は、第１ストレージ装置２０から、応答を受信する（ステップＳ２０８）。そして、管理部２３は、第１制御部２２から、書き込んだデータの位置（アドレス）を受信し、受信した書き込んだデータの位置（アドレス）に基づいて、アドレス記憶部２４に格納されているアドレス情報を更新する（ステップＳ２０９）。なお、第１記憶部２５に書き込みデータに対応するデータが格納されている場合、アドレス記憶部２４は、アドレス情報の更新日時も更新する。なお、ステップＳ２０８およびステップＳ２０９は順不同である。
【００６０】
上述のように、第１ストレージ装置２０は、書き込み要求を受信した場合、書き込むデータに対応するデータのアドレスを確認してから書き込みデータの書き込みを行う。これによって、第１ストレージ装置２０は、書き込み要求に含まれる書き込みデータに対応するデータが、第１記憶部２５に格納されているデータか否か判定することが可能となる。よって、第１ストレージ装置２０は、第１記憶部２５にデータの書き込みを行う際に、第１記憶部２５に格納されたデータを上書きするか、第１記憶部２５にデータを追加するかの判断が可能となる。したがって、第１記憶部２５は余分なデータを保持することを減らすことができる。
【００６１】
図７は、本発明の第１実施形態に係るストレージ管理システム１の動作の一例を示すフローチャートである。具体的には、第２ホスト計算機３０が、第２ストレージ装置４０に対し、読み込み要求を送信した際の動作の一例を示すフローチャートである。
【００６２】
図７では、第１ストレージ装置２０の処理を左側に、第２ストレージ装置４０の処理を中央に、第２ホスト計算機３０の処理を右側に示す。なお、第１ストレージ装置２０の処理と第２ストレージ装置４０の処理との間と、第２ストレージ装置４０の処理と第２ホスト計算機３０の処理との間にある破線の矢印は、情報の流れを示している。
【００６３】
まず、第２ホスト計算機３０は、第２ストレージ装置４０に、読み込み要求を送信する（ステップＳ３０１）。第２通信部４１は、第２ホスト計算機３０から読み込み要求を受信し（ステップＳ３０２）、受信した読み込み要求を、第２制御部４２に送信する。そして、第２制御部４２は、第２通信部４１から読み込み要求を受信し、受信した読み込み要求に含まれる読み込み対象データを特定する情報に基づいて、第２通信部４１に読み込み対象データのアドレスを確認する要求（以下、アドレス確認要求）を送信する。その後、第２通信部４１は、第２制御部４２から、読み込み対象データのアドレス確認要求を受信し、受信した読み込み対象データのアドレス確認要求を、第１ストレージ装置２０に送信する（ステップＳ３０３）。
【００６４】
ステップＳ３０３の終了後、第１通信部２１は、第２ストレージ装置４０から読み込み対象データのアドレス確認要求を受信し（ステップＳ３０４）、受信した読み込み対象データのアドレス確認要求を第１制御部２２に送信する。その後、第１制御部２２は、第１通信部２１から読み込み対象データのアドレス確認要求を受信する。第１制御部２２は、受信した情報（読み込み対象データのアドレス確認要求）の判定を行い、受信した読み込み対象データのアドレス確認要求を管理部２３に送信する。
【００６５】
そして、管理部２３は、第１制御部２２から読み込み対象データのアドレス確認要求を受信し、受信した読み込み対象データのアドレス確認要求に基づいて、アドレス記憶部２４を参照し、読み込み対象データのアドレスがあるか否か判定する（ステップＳ３０５）。読み込み対象データのアドレスがない場合（ステップＳ３０５にてＮＯ）、管理部２３は、第１制御部２２を介して、第１通信部２１にエラーを送信する。そして、第１通信部２１は、第１制御部２２を介して、管理部２３からエラーを受信し、受信したエラーを、読み込み要求の応答として第１ホスト計算機１０に送信する（ステップＳ３０６）。その後、第１ホスト計算機１０は、第１ストレージ装置２０からエラーを受信し、受け付けたエラーを第２ホスト計算機３０に送信する。そして、第２ホスト計算機３０は、読み込み要求の応答として、エラーを受け付ける。なお、第２ホスト計算機３０は、受け付けたエラーをユーザに通知してもよい。例えば、第２ホスト計算機３０は、図示しない表示部に、読み込み対象データのアドレスがない旨を表示し、ユーザに対してエラーを通知してもよい。なお、第１ストレージ装置２０は、第２ストレージ装置４０を介して、第２ホスト計算機３０にエラーを送信してもよい。そして、第２ホスト計算機３０は、第２ストレージ装置４０を介して、第１ストレージ装置２０からエラーを受信してもよい。
【００６６】
また、読み込み対象データのアドレスがある場合（ステップＳ３０５にてＹＥＳ）、管理部２３は該アドレスを取得し、取得したアドレスを第１制御部２２に送信する。このとき、管理部２３は、最新の読み込み対象データのアドレスを取得する。例えば、図５に示すアドレス情報において、読み込み対象データが「Ｔｅｓｔ３」である場合、管理部２３は、最新のデータである第１ストレージ装置のアドレスを取得する。また、図５に示すアドレス情報において、読み込み対象データが「Ｆｉｌｅ１」である場合、管理部２３は、第１ストレージ装置のアドレスおよび第２ストレージ装置のアドレスを取得する。なお、最新のデータが「Ｆｉｌｅ１」のように、第１ストレージ装置および第２ストレージ装置の両方である場合、管理部２３は、アドレス確認要求の送信元（この場合、第２ストレージ装置）のアドレスのみを取得してもよい。
【００６７】
その後、第１制御部２２は、管理部２３からアドレスを受信し、受信したアドレスに基づき、読み込み対象データが第２ストレージ装置４０にあるか否か判定する（ステップＳ３０７）。読み込み対象データが、第２ストレージ装置４０にない場合（ステップＳ３０７にてＮＯ）、つまり、読み込み対象データが第１ストレージ装置２０にある場合、第１制御部２２は、読み込み対象データのアドレスに基づいて、第１ストレージ装置２０の第１記憶部２５から読み込み対象データを取得する（ステップＳ３０８）。そして、第１制御部２２は、取得した読み込み対象データを第１通信部２１に送信する。そして、第１通信部２１は、第１制御部２２から読み込み対象データを受信し、受信した読み込み対象データを、第２ストレージ装置４０に送信する（ステップＳ３０９）。
【００６８】
また、読み込み対象データが、第２ストレージ装置４０にある場合（ステップＳ３０７にてＹＥＳ）、第１制御部２２は、読み込み対象データのアドレスを、第１通信部２１に送信する。そして、第１通信部２１は、第１制御部２２から読み込み対象データのアドレスを受信し、受信した読み込み対象データのアドレスを第２ストレージ装置４０に送信する（ステップＳ３１０）。
【００６９】
その後、第２通信部４１は、第１ストレージ装置２０から、読み込み対象データまたは読み込み対象データのアドレスを受信する（ステップＳ３１１）。そして、第２通信部４１は、受信した読み込み対象データまたは読み込み対象データのアドレスを、第２制御部４２に送信する。第２制御部４２は、第２通信部４１から読み込み対象データまたは読み込み対象データのアドレスを受信する。そして、第２制御部４２は、受信した情報が、読み込み対象データか否か判定する（ステップＳ３１２）。受信した情報が、読み込み対象データでない場合、つまり、受信した情報が読み込み対象データのアドレスである場合、第２制御部４２は、受信した読み込み対象データのアドレスに基づいて、第２記憶部４３から読み込み対象データを取得する（ステップＳ３１３）。
【００７０】
受信した情報が、読み込み対象データである場合（ステップＳ３１２にてＹＥＳ）、または、ステップＳ３１３終了後、第２制御部４２は、受信したまたは取得した読み込み対象データを第２通信部４１に送信する。そして、第２通信部４１は、第２制御部４２から、読み込み対象データを受信し、受信した読み込み対象データを、第２ホスト計算機３０に送信する（ステップＳ３１４）。その後、第２ホスト計算機３０は、第２ストレージ装置４０から読み込み対象データを受信する（ステップＳ３１５）。
【００７１】
上述したように、第１ストレージ装置２０は、第２ストレージ装置４０への読み込み要求に対応するデータのアドレスが、アドレス情報から取得できる場合、まず、第２ストレージ装置４０にデータがあるか否かを判定する。そして、第２ストレージ装置４０にデータがある場合、第１ストレージ装置２０は、データが第２ストレージ装置４０にある旨の通知を第２ストレージ装置４０に送信し、第２ストレージ装置４０は、該通知に基づき、データを第２ホスト計算機３０に送信する。
【００７２】
例えば、第１ストレージ装置２０が、まず第１記憶部２５にデータがあるかを判定する場合、第１記憶部２５は、マスターデータを格納しているため、第２記憶部４３に格納されているデータは、第１記憶部２５にも格納されている。したがって、この場合、第１ストレージ装置２０は、常にデータを第２ストレージ装置４０に送信することとなる。
【００７３】
よって、第１ストレージ装置２０が第２ストレージ装置４０にデータがあるか否かを判定することは、第１ストレージ装置２０が第２ストレージ装置４０にデータがあるか否かを判定するより前に第１記憶部２５にデータがあるか否かを判定することに比べ、データ転送の時間を削減できる。
【００７４】
図８は、本発明の第１実施形態に係るストレージ管理システムの動作の一例を示すフローチャートである。具体的には、第１ホスト計算機１０が、第１ストレージ装置２０に対し、読み込み要求を送信した際の動作の一例を示すフローチャートである。
【００７５】
図８では、第１ホスト計算機１０の処理を左側に、第１ストレージ装置２０の処理を右側に示す。なお、第１ホスト計算機１０の処理と第１ストレージ装置２０の処理との間にある破線の矢印は、情報の流れを示している。
【００７６】
まず、第１ホスト計算機１０は、読み込み要求を第１ストレージ装置２０に送信する（ステップＳ４０１）。そして、第１通信部２１は、第１ホスト計算機１０から、読み込み要求を受信し（ステップＳ４０２）、受信した読み込み要求を第１制御部２２に送信する。そして、第１制御部２２は、第１通信部２１から読み込み要求を受信し、受信した情報（読み込み要求）の判定を行い、受信した読み込み要求を管理部２３に送信する。
【００７７】
次に、管理部２３は、第１制御部２２から読み込み要求を受信し、受信した読み込み要求に基づき、アドレス記憶部２４を参照し、読み込み対象データのアドレスがあるか否か判定する（ステップＳ４０３）。読み込み対象データのアドレスがない場合、管理部２３は、第１通信部２１にエラーを送信する。そして、第１通信部２１は、管理部２３からエラーを受信し、受信したエラーを、第１ホスト計算機１０に送信する（ステップＳ４０４）。
【００７８】
一方で、読み込み対象データのアドレスがある場合、管理部２３は、受信した読み込み要求に基づき、アドレス記憶部２４から、読み込み対象データのアドレスを取得する。その後、管理部２３は、取得した読み込み対象データのアドレスを第１制御部２２に送信する。
【００７９】
そして、第１制御部２２は、管理部２３から読み込み対象データのアドレスを受信し、受信した読み込み対象データのアドレスに基づき、第１記憶部２５から読み込み対象データを取得する（ステップＳ４０５）。そして、第１制御部２２は、取得した読み込み対象データを第１通信部２１に送信する。その後、第１通信部２１は、第１制御部２２から読み込み対象データを受信し、受信した読み込み対象データを第１ホスト計算機１０に送信する（ステップＳ４０６）。
【００８０】
ステップＳ４０６の終了後、第１ホスト計算機１０は、第１ストレージ装置２０から、読み込み対象データを受信する（ステップＳ４０７）。
【００８１】
上述のように、第１ストレージ装置２０は、読み込み要求を受信した場合、読み込み対象データのアドレスが、アドレス情報にあるか否かを確認してから、データの読み込みを行う。こうすることで、データが格納されている位置を取得してから、データの読み込みを行うため、読み込み時間を削減することが可能となる。
【００８２】
＜第２実施形態＞
次に、本発明の第２の実施形態について、図９を参照して説明する。本実施の形態は、本発明の課題を解決する最小の構成であるストレージ管理システム２について説明を行う。
【００８３】
図９は、第２実施形態に係るストレージ管理システム２の構成の一例を示すブロック図である。ストレージ管理システム２は、第１ストレージ装置５０と、第２ストレージ装置６０とを有する。
【００８４】
第１ストレージ装置５０は、第１制御部５２と、第１記憶部５５とを備える。第１制御部５２は、第１通信部２１と、第１制御部２２と、管理部２３との機能を有する。また、第１記憶部５５は、アドレス記憶部２４と、第１記憶部２５との機能を有する。
【００８５】
第１制御部５２は、第１ストレージ装置５０および第２ストレージ装置６０に格納されているデータのアドレスに関する情報を示すアドレス情報を管理する。また、第１記憶部５５は、マスターデータを格納している。
【００８６】
第２ストレージ装置６０は、第２制御部６２と、第２記憶部６３とを備える。第２制御部６２は、第２通信部４１と、第２制御部４２との機能を有する。第２記憶部６３は、第２記憶部４３の機能を有する。
【００８７】
第２制御部６２は、第１ストレージ装置５０および第２ストレージ装置６０とは異なる外部装置から、第２ストレージ装置６０が受信した要求に応じた処理を行う。また、第２記憶部６３は、バックアップデータを格納している。第２制御部６２は、第２ストレージ装置６０が受信した要求が書き込み要求の場合、第２記憶手段６３に、書き込み要求に含まれる書き込みデータの書き込みを行い、該書き込みデータのアドレスを、第１制御手段５２に送信する。
【００８８】
そして、第１制御手段５２は、書き込みデータのアドレスに基づき、アドレス情報を更新し、アドレス情報を更新した旨を、第２制御手段６２に通知する。
【００８９】
第２制御手段６２は、該通知に基づいて、外部装置に、書き込み要求に対する応答を送信する。
【００９０】
上述のように、第２ストレージ装置６０は書き込み要求を受信した場合、データの更新または追加を行った後、更新または追加を行ったデータのアドレスのみを第１ストレージ装置５０に送信する。そして、第１ストレージ装置５０は、更新または追加を行ったデータのアドレスに基づいてアドレス情報を更新し、アドレス更新通知を第２ストレージ装置６０に送信する。その後、第２ストレージ装置６０は、該アドレス更新通知に基づいて、書き込み要求に対する応答を、外部装置に送信する。
【００９１】
これにより、例えば、第１ストレージ装置５０が、データの更新または追加と、アドレス情報の更新とを行った場合に比較すると、外部装置は、より早く書き込み要求に対する応答を取得することが可能となる。また、書き込み要求に対する応答によって、ユーザは書き込み要求が正しく処理されたことを知ることが可能である。よって、本実施形態におけるストレージ管理システム２は、レスポンスタイムを短くすることが可能となる。
【００９２】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００９３】
１    ストレージ管理システム
２    ストレージ管理システム
１０    第１ホスト計算機
２０    第１ストレージ装置
２１    第１通信部
２２    第１制御部
２３    管理部
２４    アドレス記憶部
２５    第１記憶部
３０    第２ホスト計算機
４０    第２ストレージ装置
４１    第２通信部
４２    第２制御部
４３    第２記憶部
５０    第１ストレージ装置
５２    第１制御部
５５    第１記憶部
６０    第２ストレージ装置
６２    第２制御部
６３    第２記憶部
９１    ＣＰＵ
９２    ＲＯＭ
９３    ネットワークインタフェース
９４    ＲＡＭ
９５    記憶装置
【図１】
0006315000.tif 000002
【図２】
0006315000.tif 000003
【図３】
0006315000.tif 000004
【図４】
0006315000.tif 000005
【図５】
0006315000.tif 000006
【図６】
0006315000.tif 000007
【図７】
0006315000.tif 000008
【図８】
0006315000.tif 000009
【図９】
0006315000.tif 000010