(57)【特許請求の範囲】
【請求項１】
ホスト装置及び記憶装置に接続された複数の記憶制御通信装置を有し、第１の記憶装置に記憶されたデータブロックを、第１の記憶制御通信装置からネットワークを介して第２の記憶制御通信装置を経由して第２の記憶装置へバックアップするデータバックアップ方法であって、
第１の記憶制御通信装置が、重複排除技術(De-duplication)を用いて、第１のホスト装置から第１の記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、第１の記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対する当該データブロックのポインタ情報のみを蓄積する第１のステップと、
第１の記憶制御通信装置が、前記記憶装置に蓄積された前記データブロック毎に、前記ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、第２の記憶制御通信装置へ送信する第２のステップと、
第２の記憶制御通信装置が、受信した前記統計情報の中で、前記引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、第１の記憶制御通信装置へ送信する第３のステップと、
第１の記憶制御通信装置が、前記コピー要求に含まれた識別子に対応するデータブロックを事前通知データブロックとして、第２の記憶制御通信装置へ送信する第４のステップと、
第２の記憶制御通信装置が、受信した前記事前通知データブロックを、第２の記憶装置へ蓄積する第５のステップと
を有することを特徴とするデータバックアップ方法。
【請求項２】
復元ステップとして、
第１の記憶制御通信装置が、第１の記憶装置に蓄積された前記事前通知データブロックに基づく実データブロックを消失した際に、当該実データブロックの識別子を含む復元要求を、前記事前通知データブロックの送信宛の第２の記憶制御通信装置へ送信し、
第２の記憶制御通信装置が、受信した前記復元要求に含まれる識別子に対応する実データブロックを第２の記憶装置から取得し、当該実データブロックを第１の記憶制御通信装置へ送信し、
第１の記憶制御通信装置が、受信した前記実データブロックを、第１の記憶装置へ復元するべく蓄積する
ことを特徴とする請求項１に記載のデータバックアップ方法。
【請求項３】
前記記憶制御通信装置は、前記記憶装置が蓄積する全ての事前通知データブロックの容量が、所定の記憶容量以下となるように、前記事前通知データブロックの受信時刻が古いものから順に削除する第６のステップを更に有することを特徴とする請求項１又は２に記載のデータバックアップ方法。
【請求項４】
前記記憶制御通信装置は、ネットワークスイッチ装置であることを特徴とする請求項１から３のいずれか１項に記載のデータバックアップ方法。
【請求項５】
ホスト装置及び記憶装置に接続されており、前記記憶装置に記憶されたデータブロックを、ネットワークを介して他方の記憶制御通信装置を経由して他方の記憶装置へバックアップする記憶制御通信装置であって、
重複排除技術(De-duplication)を用いて、前記ホスト装置から前記記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、前記記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対して当該データブロックのポインタ情報のみを蓄積する重複排除制御手段と、
前記記憶装置に蓄積された前記データブロック毎に、前記ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、他方の記憶制御通信装置へ送信する統計情報更新制御手段と、
受信した前記統計情報の中で、前記引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、他方の記憶制御通信装置へ送信する事前通知データブロック選択要求手段と、
受信した前記事前通知データブロックを、前記記憶装置へ蓄積する事前通知データブロック蓄積手段と
を有し、前記コピー要求を受信した他方の記憶制御通信装置から、当該コピー要求に含まれた識別子に対応する事前通知データブロックを受信することを特徴とする記憶制御通信装置。
【請求項６】
前記記憶装置に蓄積された前記事前通知データブロックに基づく前記実データブロックを消失した際に、前記実データブロックの復元要求を、前記事前通知データブロックの送信宛の他方の記憶制御通信装置へ送信し、
他方の記憶制御通信装置から、他方の記憶装置に蓄積された前記実データブロックを受信し、
受信した前記実データブロックを、前記記憶装置へ復元するべく蓄積する
復元手段を更に有することを特徴とする請求項５に記載の記憶制御通信装置。
【請求項７】
前記重複排除制御手段は、前記記憶装置が蓄積する全ての事前通知データブロックの容量が、所定の記憶容量以下となるように、前記事前通知データブロックの受信時刻が古いものから順に削除することを特徴とする請求項５又は６に記載の記憶制御通信装置。
【請求項８】
ネットワークスイッチ装置であることを特徴とする請求項５から７のいずれか１項に記載の記憶制御通信装置。
【請求項９】
ホスト装置及び記憶装置に接続されており、前記記憶装置に記憶されたデータブロックを、ネットワークを介して他方の記憶制御通信装置を経由して他方の記憶装置へバックアップする記憶制御通信装置に搭載されたコンピュータを機能させるプログラムであって、
重複排除技術(De-duplication)を用いて、前記ホスト装置から前記記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、前記記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対して当該データブロックのポインタ情報のみを蓄積する重複排除制御手段と、
前記記憶装置に蓄積された前記データブロック毎に、前記ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、他方の記憶制御通信装置へ送信する統計情報更新制御手段と、
受信した前記統計情報の中で、前記引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、他方の記憶制御通信装置へ送信すると共に、前記コピー要求を受信した際に、当該コピー要求に含まれた識別子に対応する事前通知データブロックを、他方の記憶制御通信装置へ送信する事前通知データブロック選択要求手段と、
受信した前記事前通知データブロックを、前記記憶装置へ蓄積する事前通知データブロック蓄積手段と
してコンピュータを機能させることを特徴とする記憶制御通信装置用のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラムに関する。
【背景技術】
【０００２】
ホスト装置から記憶装置に対するデータのバックアップは、その性質上、同一のデータブロック（ストレージ技術における「チャンク(Chunk)」（ビット列））を何度も繰り返し記憶する。そのため、システム規模によっては、バックアップ用の記憶装置は、膨大な容量を有する必要がある。
【０００３】
近年、データのバックアップ方法の１つとして、重複排除技術(De-duplication)（別称、コモナリティファクタリング(Commonality factoring)、非冗長ストレージ、重複データ削減）が注目されてきている。重複排除技術とは、同一のデータブロックが記憶装置に既に蓄積されている場合、新たに記憶しようとしている当該データブロックを蓄積しない。その代わりに、既に蓄積されている同一のデータブロックのポインタ情報（アドレス）が蓄積される。その後は、ポインタ情報によってのみ記憶場所が参照される。この技術によれば、データブロックが冗長的に記憶装置に蓄積されることがなく、記憶すべきデータ量が削減される。また、ネットワークを介して遠隔のデータセンタへバックアップする場合、データ転送量も削減される。
【０００４】
図１は、従来技術における重複排除技術を説明するシーケンス図である。
【０００５】
図１によれば、ホスト装置３は、記憶制御装置５を介して記憶装置２に接続されている。装置間の各インタフェースは、周辺装置入出力インタフェースで接続される。例えば、プロトコル的にはＳＣＳＩ(Small system Computer System Interface)で接続され、物理的にはＨＢＡ(Host Bus Adapter)によって接続される。
【０００６】
（Ｓ１００）ホスト装置３が、第１のファイル（データブロック[A][B][C][A][D]）を記憶装置２へ蓄積しようとしている。ホスト装置３から第１のファイルを受信した記憶制御装置５は、データブロック[A]が冗長的であることを認識し、データブロック[A][B][C][D]を記憶装置２へ蓄積する。２回目のデータブロック[A]は、記憶装置２に記憶された１回目のデータブロック[A]のアドレスを指し示すポインタ情報として記憶される。
【０００７】
（Ｓ１１０）ホスト装置３が、第２のファイル（データブロック[A][B][E]）を記憶装置２へ蓄積しようとしている。ホスト装置３から第２のファイルを受信した記憶制御装置５は、データブロック[A][B]が既に記憶されていることを認識し、データブロック[E]のみを記憶装置２へ蓄積する。第２のファイルのデータブロック[A][B]は、記憶装置２に既に記憶されたデータブロック[A][B]のアドレスを指し示すポインタ情報として記憶される。
【０００８】
（Ｓ１２０）ホスト装置３が、第３のファイル（データブロック[A][E][F]）を記憶装置２へ蓄積しようとしている。ホスト装置３から第３のファイルを受信した記憶制御装置５は、データブロック[A][E]が既に記憶されていることを認識し、データブロック[F]のみを記憶装置２へ蓄積する。第３のファイルのデータブロック[A][E]は、記憶装置２に既に記憶されたデータブロック[A][E]のアドレスを指し示すポインタ情報として記憶される。
【０００９】
（Ｓ１３０）ホスト装置３が、第４のファイル（データブロック[B][G][C][D][E]）を記憶装置２へ蓄積しようとしている。ホスト装置３から第４のファイルを受信した記憶制御装置５は、データブロック[B][C][D][E]が既に記憶されていることを認識し、データブロック[G]のみを記憶装置２へ蓄積する。第４のファイルのデータブロック[B][C][D][E]は、記憶装置２に既に記憶されたデータブロック[B][C][D][E]のアドレスを指し示すポインタ情報として記憶される。
【００１０】
従来技術として、複数のハッシュ関数等を用いて、データブロックが既に蓄積されているか否かを判断する技術がある（例えば特許文献１及び２参照）。この技術によれば、既に蓄積されているリスト情報を、複数の機器間で共有することにより、同一データブロックの存在を判定し、冗長的な蓄積を回避する。
【００１１】
また、ハッシュ関数等を用いて、一連のデータに一意の名前を設定し、複数のシステム間で同期する技術もある（例えば特許文献３参照）。同一のハッシュが蓄積されている場合、そのデータの蓄積を回避する。別のシステムから送信されたリストの中にその名前がない場合、新規に追加して自システムが管理するデータのリストを共有する。
【００１２】
更に、第１の記憶装置（メモリ）に全てのデータを蓄積し、第２の記憶装置（ハードディスク）に重複データを排除したデータを蓄積する技術もある（例えば特許文献４参照）。
【００１３】
尚、アクセス頻度の高いデータを、別の記憶媒体にも複製しておく技術（例えば特許文献５参照）や、アクセス頻度を用いて先読みキャッシュ転送の技術もある（例えば特許文献６参照）。これら技術は、他の機器のアクセス頻度を考慮せず、他の機器からデータを事前転送する機能も保持していない。
【００１４】
【特許文献１】特表２００３−５２４２４３号公報
【特許文献２】特開２００７−０７９９０２号公報
【特許文献３】特表２００３−５２４９６８号公報
【特許文献４】特開２００７−２３４０２６号公報
【特許文献５】特開平７−２７１５２３号公報
【特許文献６】特開平４−２５９０４８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、重複排除技術によれば、１つのデータブロックが消失した場合、当該データブロックを指し示すポインタ情報を持つ多数のバックアップイメージの全てが、復元できないという問題を生じる。これは、多数のバックアップイメージが、１つのデータブロックに依存していることを意味する。
【００１６】
また、重複排除技術は、データのバックアップの用途を想定しているために、基本的にＮ（原データ保存元）：１（記憶装置）の構成を採る。しかしながら、このような構成を、広域ネットワークを介したデータセンタのシステムに採用しようとすると、１つのデータセンタにトラヒックが集中することとなる。重複排除技術は、冗長データの検出とポインタ情報の生成管理とを、ソフトウェアベースで実行するために、ＣＰＵへの負荷が高くなる。そのため、１つの装置へのトラヒックの集中は、システム全体のパフォーマンスの低下につながる。
【００１７】
更に、広域ネットワークを介したバックアップシステムについては、１つのデータセンタの障害の影響も考慮して、遠隔に配置された他のデータセンタ又は記憶装置へバックアップする必要もある。即ち、Ｎ（原データ保存元）：Ｍ（記憶装置）の構成を採る必要もある。
【００１８】
そこで、本発明は、データセンタへのバックアップトラヒックの集中によるシステム全体のパフォーマンスの低下を回避すると共に、バックアップデータの分散管理によるシステム全体の復元安定性の確保とを実現することができるデータバックアップ方法、記憶制御通信装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明によれば、ホスト装置及び記憶装置に接続された複数の記憶制御通信装置を有し、第１の記憶装置に記憶されたデータブロックを、第１の記憶制御通信装置からネットワークを介して第２の記憶制御通信装置を経由して第２の記憶装置へバックアップするデータバックアップ方法であって、
第１の記憶制御通信装置が、重複排除技術(De-duplication)を用いて、第１のホスト装置から第１の記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、第１の記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対する当該データブロックのポインタ情報のみを蓄積する第１のステップと、
第１の記憶制御通信装置が、記憶装置に蓄積されたデータブロック毎に、ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、第２の記憶制御通信装置へ送信する第２のステップと、
第２の記憶制御通信装置が、受信した統計情報の中で、引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、第１の記憶制御通信装置へ送信する第３のステップと、
第１の記憶制御通信装置が、コピー要求に含まれた識別子に対応するデータブロックを事前通知データブロックとして、第２の記憶制御通信装置へ送信する第４のステップと、
第２の記憶制御通信装置が、受信した事前通知データブロックを、第２の記憶装置へ蓄積する第５のステップと
を有することを特徴とする。
【００２２】
本発明のデータバックアップ方法における他の実施形態によれば、
復元ステップとして、
第１の記憶制御通信装置が、第１の記憶装置に蓄積された事前通知データブロックに基づく実データブロックを消失した際に、当該実データブロックの識別子を含む復元要求を、事前通知データブロックの送信宛の第２の記憶制御通信装置へ送信し、
第２の記憶制御通信装置が、受信した復元要求に含まれる識別子に対応する実データブロックを第２の記憶装置から取得し、当該実データブロックを第１の記憶制御通信装置へ送信し、
第１の記憶制御通信装置が、受信した実データブロックを、第１の記憶装置へ復元するべく蓄積することも好ましい。
【００２３】
本発明のデータバックアップ方法における他の実施形態によれば、
記憶制御通信装置は、記憶装置が蓄積する全ての事前通知データブロックの容量が、所定の記憶容量以下となるように、事前通知データブロックの受信時刻が古いものから順に削除する第６のステップを更に有することも好ましい。
【００２５】
本発明のデータバックアップ方法における他の実施形態によれば、
記憶制御通信装置は、ネットワークスイッチ装置であることも好ましい。
【００２６】
本発明によれば、ホスト装置及び記憶装置に接続されており、記憶装置に記憶されたデータブロックを、ネットワークを介して他方の記憶制御通信装置を経由して他方の記憶装置へバックアップする記憶制御通信装置であって、
重複排除技術(De-duplication)を用いて、ホスト装置から記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対して当該データブロックのポインタ情報のみを蓄積する重複排除制御手段と、
記憶装置に蓄積されたデータブロック毎に、ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、他方の記憶制御通信装置へ送信する統計情報更新制御手段と、
受信した統計情報の中で、引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、他方の記憶制御通信装置へ送信する事前通知データブロック選択要求手段と、
受信した事前通知データブロックを、記憶装置へ蓄積する事前通知データブロック蓄積手段と
を有し、コピー要求を受信した他方の記憶制御通信装置から、当該コピー要求に含まれた識別子に対応する事前通知データブロックを受信することを特徴とする。
【００２９】
本発明の記憶制御通信装置における他の実施形態によれば、
記憶装置に蓄積された事前通知データブロックに基づく実データブロックを消失した際に、実データブロックの復元要求を、事前通知データブロックの送信宛の他方の記憶制御通信装置へ送信し、
他方の記憶制御通信装置から、他方の記憶装置に蓄積された実データブロックを受信し、
受信した実データブロックを、記憶装置へ復元するべく蓄積する
復元手段を更に有することも好ましい。
【００３０】
本発明の記憶制御通信装置における他の実施形態によれば、重複排除制御手段は、記憶装置が蓄積する全ての事前通知データブロックの容量が、所定の記憶容量以下となるように、事前通知データブロックの受信時刻が古いものから順に削除することも好ましい。
【００３２】
本発明の記憶制御通信装置における他の実施形態によれば、ネットワークスイッチ装置であることも好ましい。
【００３３】
本発明によれば、ホスト装置及び記憶装置に接続されており、記憶装置に記憶されたデータブロックを、ネットワークを介して他方の記憶制御通信装置を経由して他方の記憶装置へバックアップする記憶制御通信装置に搭載されたコンピュータを機能させるプログラムであって、
重複排除技術(De-duplication)を用いて、ホスト装置から記憶装置へ蓄積すべきファイルを複数のデータブロックに区分し、記憶装置へ、実データブロックとしての各データブロックと、当該ファイルに対して引用する各データブロックのポインタ情報とを蓄積する際に、当該データブロックが実データブロックとして当該記憶装置に既に蓄積されている場合、当該ファイルに対して当該データブロックのポインタ情報のみを蓄積する重複排除制御手段と、
記憶装置に蓄積されたデータブロック毎に、ポインタ情報の引用回数を記録した統計情報を更新し、該統計情報を、他方の記憶制御通信装置へ送信する統計情報更新制御手段と、
受信した統計情報の中で、引用回数が所定閾値以上となったデータブロックを事前通知データブロックとして、当該データブロックの識別子を含むコピー要求を、他方の記憶制御通信装置へ送信する事前通知データブロック選択要求手段と、
受信した事前通知データブロックを、記憶装置へ蓄積する事前通知データブロック蓄積手段と
してコンピュータを機能させ、コピー要求を受信した他方の記憶制御通信装置から、当該コピー要求に含まれた識別子に対応する事前通知データブロックを受信することを特徴とする。
【発明の効果】
【００３４】
本発明のデータバックアップ方法、記憶制御通信装置及びプログラムによれば、比較的引用回数が多いデータブロックを、他の記憶制御通信装置へ事前通知することによって、分散管理を実現し、システム全体の復元安定性を確保する。また、データセンタに対するデータブロックの重複排除も可能となり、データセンタへのバックアップトラヒックの集中を回避することもできる。
【発明を実施するための最良の形態】
【００３５】
以下では、図面を用いて、本発明を実施するための最良の形態について詳細に説明する。
【００３６】
図２は、本発明におけるシステム構成図である。
【００３７】
図２によれば、記憶制御通信装置１に、ホスト装置３及び記憶装置２が接続されている。各記憶制御通信装置１は、広域ネットワーク（例えばインターネット）に接続され、相互に通信することができる。尚、記憶制御通信装置１は、記憶装置２と一体として構成されていてもよい。記憶制御通信装置１は、例えばネットワークスイッチ装置であってもよい。また、広域ネットワークには、データバックアップ用のデータセンタ４も接続されている。
【００３８】
記憶制御通信装置１は、ホスト装置３から出力されたデータを、記憶装置２へ蓄積する。本発明によれば、記憶制御通信装置１は、重複排除技術を用いているので、重複データについては、既に蓄積されている同一のデータブロックを引用し、そのポインタ情報のみを蓄積する。このとき、記憶制御通信装置１は、データブロック毎の引用回数を表す統計情報を更新する（尚、統計情報に、最終アクセス時刻が含まれていてもよい）。そして、比較的引用回数が多いデータブロックを事前通知データブロックとして、広域ネットワークを介して他の記憶制御通信装置へ送信する。また、記憶制御通信装置１は、バックアップ用のデータブロックを、データセンタ４へも送信する。
【００３９】
図３は、本発明における第１のシーケンス図である。
【００４０】
（Ｓ３００）ホスト装置３が、蓄積すべき第１のファイル（データブロック[A][B][C][A][D]）を、第１の記憶制御通信装置へ出力する。
（Ｓ３０１）第１の記憶制御通信装置は、データブロック[A]が冗長的であることを認識し、データブロック[A][B][C][D]を、第１の記憶装置へ出力する。２回目のデータブロック[A]は、記憶装置に記憶された１回目のデータブロック[A]のアドレスを指し示すポインタ情報として記憶される。また、統計情報として、各データブロック[A][B][C][D]の引用回数を、１増分（[A]＝１、[B]＝１、[C]＝１、[D]＝１）する。尚、多引用回数の所定閾値は「３」に設定されているとする。
（Ｓ３０２）第１の記憶制御通信装置は、第１の記憶装置に蓄積したデータブロック[A][B][C][D]を、データセンタ４へ送信する。これにより、第１のファイルをバックアップすることができる。
【００４１】
（Ｓ３１０）ホスト装置３が、第２のファイル（データブロック[A][B][E]）を、第１の記憶制御通信装置へ出力する。
（Ｓ３１１）第１の記憶制御通信装置は、データブロック[A][B]が、既に記憶されていることを認識し、データブロック[E]のみを第１の記憶装置へ出力する。第２のファイルのデータブロック[A][B]は、第１の記憶装置に既に記憶されたデータブロック[A][B]のアドレスを指し示すポインタ情報として記憶される。また、統計情報として、データブロック[A][B]の引用回数を、１増分（[A]＝２、[B]＝２）する。
（Ｓ３１２）第１の記憶制御通信装置は、第１の記憶装置に蓄積したデータブロック[E]を、データセンタ４へ送信する。これにより、第２のファイルをバックアップすることができる。
【００４２】
（Ｓ３２０）ホスト装置３が、第３のファイル（データブロック[A][E][F]）を、第１の記憶制御通信装置へ出力する。
（Ｓ３２１）第１の記憶制御通信装置は、データブロック[A][E]が、既に記憶されていることを認識し、データブロック[F]のみを第１の記憶装置へ出力する。第３のファイルのデータブロック[A][E]は、第１の記憶装置に既に記憶されたデータブロック[A][E]のアドレスを指し示すポインタ情報として記憶される。また、統計情報として、データブロック[A][E]の引用回数を、１増分（[A]＝３、[E]＝２）する。
（Ｓ３２２）第１の記憶制御通信装置は、第１の記憶装置に蓄積したデータブロック[F]を、データセンタ４へ送信する。これにより、第３のファイルをバックアップすることができる。
【００４３】
（Ｓ３２３）第１の記憶制御通信装置は、各データブロックの引用回数を含む統計情報を、ネットワークを介して第２の記憶制御通信装置へ送信する。
（Ｓ３２４）第２の記憶制御通信装置は、統計情報の中から、引用回数が所定閾値「３」を超えたデータブロック[A]を選択し、そのデータブロック[A]が第２の記憶装置に記憶されていないことを確認する。このとき、第２の記憶制御通信装置は、データブロック[A]のコピー要求を、第１の記憶制御通信装置へ送信する。
（Ｓ３２５）コピー要求を受信した第１の記憶制御通信装置は、第１の記憶装置へ、データブロック[A]の読み出し要求（例えばSCSI Read）を送信する。
（Ｓ３２６）これに対し、第１の記憶装置は、データブロック[A]を、第１の記憶制御通信装置へ出力する。
（Ｓ３２７）第１の記憶制御通信装置は、事前通知データブロック[A]を、ネットワークを介して第２の記憶制御通信装置へ送信する。（例えばSCSI Write）
（Ｓ３２８）第２の記憶制御通信装置は、受信した事前通知データブロック[A]を、第２の記憶装置へ出力する。
【００４４】
（Ｓ３３０）ホスト装置３が、第４のファイル（データブロック[B][G][C][D][E]）を、第１の記憶制御通信装置へ出力する。
（Ｓ３３１）第１の記憶制御通信装置は、データブロック[B][C][D][E]が、既に記憶されていることを認識し、データブロック[G]のみを第１の記憶装置へ出力する。第４のファイルのデータブロック[B][C][D][E]は、第１の記憶装置に既に記憶されたデータブロック[B][C][D][E]のアドレスを指し示すポインタ情報として記憶される。また、統計情報として、各データブロック[B][C][D][E]の引用回数を、１増分（[B]＝３、[C]＝２、[D]＝２、[E]＝３）する。
（Ｓ３３２）第１の記憶制御通信装置は、第１の記憶装置に蓄積したデータブロック[G]を、データセンタ４へ送信する。これにより、第４のファイルをバックアップすることができる。
【００４５】
（Ｓ３３３）第１の記憶制御通信装置は、各データブロックの引用回数を含む統計情報を、ネットワークを介して第２の記憶制御通信装置へ送信する。
（Ｓ３３４）第２の記憶制御通信装置は、統計情報の中から、引用回数が所定閾値「３」を超えたデータブロック[B][E]を選択し、そのデータブロック[B][E]が第２の記憶装置に記憶されていないことを確認する。このとき、第２の記憶制御通信装置は、データブロック[B][E]のコピー要求を、第１の記憶制御通信装置へ送信する。
（Ｓ３３５）コピー要求を受信した第１の記憶制御通信装置は、第１の記憶装置へ、データブロック[B][E]の読み出し要求を送信する。
（Ｓ３３６）これに対し、第１の記憶装置は、データブロック[B][E]を、第１の記憶制御通信装置へ出力する。
（Ｓ３３７）第１の記憶制御通信装置は、事前通知データブロック[B][E]を、ネットワークを介して第２の記憶制御通信装置へ送信する。
（Ｓ３３８）第２の記憶制御通信装置は、受信した事前通知データブロック[B][E]を、第２の記憶装置へ出力する。
【００４６】
図４は、本発明における第２のシーケンス図である。
【００４７】
図３のシーケンスが終了した時点で、第２の記憶装置には、事前通知データブロック[A][B][E]が蓄積されている。
（Ｓ４００）ホスト装置３が、第５のファイル（データブロック[A][B][C]）を、第２の記憶制御通信装置へ出力する。
（Ｓ４０１）第２の記憶制御通信装置は、事前通知データブロック[A][B]が、既に記憶されていることを認識し、データブロック[C]のみを第２の記憶装置へ出力する。事前通知データブロック[A][B]は、その後、実データブロックとして扱われる（例えば「事前通知フラグ」をリセットする）。第５のファイルのデータブロック[A][B]は、記憶装置に既に記憶されたデータブロック[A][B]のアドレスを指し示すポインタ情報として記憶される。
（Ｓ４０２）第２の記憶制御通信装置は、第２の記憶装置に蓄積したデータブロック[C]を、データセンタ４へ送信する。このとき、第２の記憶制御通信装置は、データブロック[A][B]を、データセンタ４へ送信しない。
【００４８】
（Ｓ４１０）ホスト装置３が、第６のファイル（データブロック[A][H][C]）を、第２の記憶制御通信装置へ出力する。
（Ｓ４１１）第２の記憶制御通信装置は、データブロック[A][C]が、既に記憶されていることを認識し、データブロック[H]のみを第２の記憶装置へ出力する。第２のファイルのデータブロック[A][C]は、第２の記憶装置に既に記憶されたデータブロック[A]C]のアドレスを指し示すポインタ情報として記憶される。
（Ｓ４１２）第２の記憶制御通信装置は、第２の記憶装置に蓄積したデータブロック[H]を、データセンタ４へ送信する。このとき、第２の記憶制御通信装置は、データブロック[A][C]を、データセンタ４へ送信しない。
【００４９】
次に、データブロックを消失した際に、復元するシーケンスについて説明する。
【００５０】
（Ｓ４２０）第２の記憶装置が、データブロック[A]を消失したとする。データブロック[A]は、事前通知データブロックに基づいて実データブロックとなったものであり、送信元の記憶制御通信装置のアドレスを備えている。
（Ｓ４２１）このとき、第２の記憶制御通信装置が、データブロック[A]の復元要求を第１の記憶制御通信装置へ送信する。第１の記憶制御通信装置は、データブロック[A]の読み出し要求を第１の記憶装置へ送信する。
（Ｓ４２２）第１の記憶装置は、データブロック[A]を第１の記憶制御通信装置へ出力する。第１の記憶制御通信装置は、データブロック[A]を第２の記憶制御通信装置へ送信する。
【００５１】
（Ｓ４３０）第１の記憶装置が、データブロック[A]を消失したとする。データブロック[A]は、事前通知データブロックとして送信されたものであり、送信先の記憶制御通信装置のアドレスを備えている。
（Ｓ４３１）このとき、第１の記憶制御通信装置が、データブロック[A]の復元要求を第２の記憶制御通信装置へ送信する。第２の記憶制御通信装置は、データブロック[A]の読み出し要求を第２の記憶装置へ送信する。
（Ｓ４３２）第２の記憶装置は、データブロック[A]を第２の記憶制御通信装置へ出力する。第２の記憶制御通信装置は、データブロック[A]を第１の記憶制御通信装置へ送信する。
【００５２】
図５は、本発明における記憶制御通信装置の機能構成図である。
【００５３】
図５によれば、ホストバスアダプタ部１０１と、周辺装置入出力インタフェース部１０２と、重複排除制御部１０３と、ＷＡＮ側通信インタフェース部１１１と、ＳＣＳＩレイヤ部１１２と、統計情報更新制御部１２１と、事前通知データブロック選択要求部１２２と、事前通知データブロック蓄積部１２３と、復元部１２４と、バックアップ送信部１２５とを有する。ホストバスアダプタ部１０１及びＷＡＮ側通信インタフェース部１１１を除く他の機能構成部は、通信装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。
【００５４】
ホストバスアダプタ部１０１は、記憶装置２及びホスト装置３とパラレルバスを介して接続する。周辺装置入出力インタフェース部１０２は、例えばＳＣＳＩレイヤ部であって、ホストバスアダプタ部１０１を介して、記憶装置２及びホスト装置３とデータブロックを送受信する。勿論、記憶制御通信装置１とホスト装置３及び記憶装置２との間のインタフェースが、ホストバスアダプタであって且つＳＣＳＩプロトコルを用いるものには限られず、イーサネット（登録商標）インタフェースであってＩＰを用いるものであっても、ファイバチャネルインタフェースであってもよい。
【００５５】
ＷＡＮ側通信インタフェース部１１１は、例えばイーサネットインタフェースであって、広域ネットワークに接続する。広域ネットワークが例えばインターネットの場合、ネットワーク・トランスポートプロトコルとして備えられる。ＷＡＮ側通信インタフェース部はファイバチャネルプロトコルを用いるものであってもよい。ＳＣＳＩレイヤ部１１２は、ＳＣＳＩコマンド又はレスポンスを、相手方の記憶制御通信装置とやりとりする。ＳＣＳＩコマンド又はレスポンスは、ＩＰパケットでカプセル化して送受信される。
【００５６】
重複排除制御部１０３は、ホスト装置３から受信したファイルを、重複排除技術を用いて、記憶装置２へ蓄積する。記憶装置２へ蓄積すべき第１のファイルを複数のデータブロックに区分する。そして、既に蓄積されているファイルのデータブロック、及び／又は、第１のファイル内の他のデータブロックとの重複データブロックについては、一方のデータブロックのみを蓄積する。また、他方のデータブロックに対しては、一方のデータブロックを引用するポインタ情報のみを蓄積する。
【００５７】
重複排除制御部１０３は、記憶装置２が蓄積する全ての事前通知データブロックの容量が、所定の記憶容量以下となるように、所定条件の下、事前通知データブロックを削除する。所定条件は、引用回数、最終アクセス時刻、及び／又は、一定時間におけるアクセス頻度に基づくものである。
【００５８】
例えば、事前通知データブロックの受信時刻が古いものから順に削除するものであってもよい。重複排除制御部１０３は、ファイルを区分したデータブロックと事前通知データブロックとが同一である場合、事前通知データブロックを実データブロックのアドレス領域へ移動させる（単に「事前通知フラグ」をリセットするものであってもよい）。他の記憶制御通信装置から受信した事前通知データブロックは、既にデータセンタにバックアップされており、当該記憶制御通信装置が、データセンタにあえてバックアップする必要はない。
【００５９】
統計情報更新制御部１２１は、データブロック毎に、ポインタ情報の引用回数を記録した統計情報を更新する。その統計情報は、他の記憶制御通信装置へ送信される。また、他の記憶制御通信装置からも統計情報を受信する。受信した統計情報は、事前通知データブロック選択要求部１２２へ出力される。
【００６０】
事前通知データブロック選択要求部１２２は、受信した統計情報に基づいて、予め蓄積しておくべき事前通知データブロックを選択する。事前通知データブロックは、統計情報の中で、引用回数が所定閾値回数以上となったデータブロックであって、且つ、記憶装置２に未だ記憶されていないデータブロックである。選択された事前通知データブロックのコピー要求を、他の記憶制御通信装置へ送信する。
【００６１】
事前通知データブロック蓄積部１２３は、他の記憶制御通信装置から、事前通知データブロックを受信する。受信した事前通知データブロックは、記憶装置２へ出力され、一時的に蓄積される。
【００６２】
復元部１２４は、事前通知データブロックに基づく実データブロックを消失した際に、実データブロックの復元要求を、事前通知データブロックの送信元の記憶制御通信装置へ送信する。これに対し、当該記憶制御通信装置から実データブロックを受信して、その実データブロックを復元する。
【００６３】
バックアップ送信部１２５は、重複排除制御部１０３によって記憶装置２に記憶されたデータブロックのみを、データセンタ４へ送信する。
【００６４】
以上、詳細に説明したように、本発明のデータバックアップ方法、記憶制御通信装置及びプログラムによれば、比較的引用回数が多いデータブロックを、他の記憶制御通信装置へ事前通知することによって、分散管理を実現し、システム全体の復元安定性を確保する。また、データセンタに対するデータブロックの重複排除も可能となり、データセンタへのバックアップトラヒックの集中を回避することもできる。
【００６５】
前述した本発明の種々の実施形態において、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【図面の簡単な説明】
【００６６】
【図１】従来技術における重複排除技術を説明するシーケンス図である。
【図２】本発明におけるシステム構成図である。
【図３】本発明における第１のシーケンス図である。
【図４】本発明における第２のシーケンス図である。
【図５】本発明における記憶制御通信装置の機能構成図である。
【符号の説明】
【００６７】
１  記憶制御通信装置
１０１  ホストバスアダプタ部
１０２  周辺装置入出力インタフェース部
１０３  重複排除制御部
１１１  ＷＡＮ側通信インタフェース部
１１２  ＳＣＳＩレイヤ部
１２１  統計情報更新制御部
１２２  事前通知データブロック選択要求部
１２３  事前通知データブロック蓄積部
１２４  復元部
１２５  バックアップ送信部
２  記憶装置
３  ホスト装置
４  データセンタ
【図１】
0005084551.tif 000002
【図２】
0005084551.tif 000003
【図３】
0005084551.tif 000004
【図４】
0005084551.tif 000005
【図５】
0005084551.tif 000006