説明

バックアップ装置、バックアップ方法、及びバックアッププログラム

【課題】バックアップに伴うアクセスが一つの装置に集中することなく、バックアップデータを生成した装置と離れた場所の装置にバックアップを行う。
【解決手段】バックアップ装置は、相手装置を特定する情報を含むバックアップ指示を受信する指示受信手段と、バックアップデータを、バックアップデータを生成した生成装置に関連付けて記憶するバックアップデータ記憶手段と、生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶手段と、生成装置と相手装置の間の距離である移動先距離を取得する距離取得手段と、バックアップ指示を受信した場合、生成装置と相手装置との間の移動先距離が、移動元距離より大きければ、バックアップデータを相手装置に送信することを決定し、移動先距離が移動元距離より小さければ、バックアップデータを送信しないことを決定する送信判定手段とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はバックアップ装置、バックアップ方法、及びバックアッププログラムに関する。
【背景技術】
【0002】
災害時における業務継続や、クラウドサービスへの関心の高まりに伴って、遠隔地にデータを保護することに対するニーズが高まっている。遠隔地にデータを保護するサービスには、例えば、WAN(Wide Area Network)を経由する、SaaS(Software as a Service)型バックアップサービスなどがある。一方、バックアップのために高速な専用線を用意することはコストの問題から難しい。このような場合、ベストエフォード型の回線や安価で低速な専用線など、低速な回線が用いられる。このような環境では、バックアップが完了するまでに長期間を要する。
【0003】
特許文献1には、ネットワークに接続された複数の情報処理装置が、お互いに監視し合うことなく、自律的に他の情報処理装置へデータをバックアップするバックアップ方法が記載されている。特許文献1に記載のバックアップ方法では、情報処理装置が、バックアップの可能性に関する情報を、ネットワークに接続される他の情報処理装置から収集する。バックアップの可能性に関する情報を収集した情報処理装置は、バックアップが必要になったとき、収集した情報に基づいて選択した他の情報処理装置に、バックアップのための要求を送信する。バックアップのための要求を送信した情報処理装置は、バックアップ要求に対して許可の回答を返信した他の情報処理装置に、バックアップデータを送信する。バックアップデータを受信した情報処理装置は、受信したバックアップデータを自装置の記憶装置に格納する。
【0004】
特許文献2には、遠隔地のデータセンターにバックアップイメージファイルをバックアップする遠隔バックアップシステムが記載されている。特許文献2の遠隔バックアップシステムは、バックアップ対象サーバと同じ場所に設置された管理PCと、管理PCにネットワークを介して接続され、管理PCの設置場所から所定距離離れた遠隔地に設けられたデータセンターを含む。管理PCは、バックアップ対象サーバのデータのバックアップイメージファイルを作成して蓄える。また、管理PCは、蓄えたバックアップイメージファイルを、データセンターに転送する。管理PCからデータセンターに送られてくるバックアップイメージファイルは、データセンターのディスクに格納される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2005−301857号公報
【特許文献2】特開2008−204036号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
バックアップ対象のデータを保持する情報処理装置と、そのデータのバックアップデータを保持する装置が、近い場所に存在する場合、その場所に地震などの災害が生じると、バックアップ対象のデータとバックアップデータが同時に失われる可能性がある。また、例えば1台の装置が、複数の情報処理装置のバックアップデータを保持する場合、バックアップデータを保持する装置にアクセスが集中するという問題がある。バックアップデータを保持する装置にアクセスが集中する場合、その装置及びその装置への通信回線が高速でなければ、バックアップに遅延が生じる。一方、アクセスが集中してもバックアップに遅延が生じないよう、高速な装置及び高速な回線を準備すると、必要なコストが高くなる。
【0007】
特許文献1に記載のバックアップ方法では、バックアップデータの送信先である他の情報処理装置は、受信したバックアップデータを、他の情報処理装置に送信することなく保持し続ける。従って、特許文献1のバックアップ方法には、バックアップデータの送信先である他の情報処理装置と送信元である情報処理装置と同じ場所に存在する場合、バックアップ対象のデータとバックアップデータが同時に失われる可能性があるという問題がある。
【0008】
特許文献2に記載の遠隔バックアップシステムでは、バックアップ対象サーバが複数存在する場合、通常バックアップ対象サーバ毎にデータセンターが存在することはないので、バックアップに伴うアクセスが、データセンターに集中すると言う問題がある。
【0009】
本発明の目的は、バックアップに伴うアクセスが一つの装置に集中することなく、バックアップデータを生成した装置と離れた場所の装置にバックアップを行うバックアップ装置を提供することにある。
【課題を解決するための手段】
【0010】
本発明のバックアップ装置は、相手装置を特定する情報を含むバックアップ指示を受信する指示受信手段と、第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けて記憶するバックアップデータ記憶手段と、前記第1の生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶手段と、前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得する距離取得手段と、前記バックアップ指示を受信した場合、前記第1の生成装置と前記バックアップ指示から特定した相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定し、前記移動先距離が前記移動元距離より小さければ、前記バックアップデータを送信しないことを決定する送信判定手段とを含む。
【0011】
本発明のバックアップ方法は、相手装置を特定する情報を含むバックアップ指示を受信し、第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けてバックアップデータ記憶手段に記憶し、前記第1の生成装置と自装置との間の距離である移動元距離を距離情報記憶手段に記憶し、前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得し、前記第1の生成装置と前記相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定する。
【0012】
本発明のバックアッププログラムは、コンピュータを、相手装置を特定する情報を含むバックアップ指示を受信する指示受信手段と、第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けて記憶するバックアップデータ記憶手段と、前記第1の生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶手段と、前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得する距離取得手段と、前記第1の生成装置と前記相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定する送信判定手段として動作させる。
【発明の効果】
【0013】
本発明には、バックアップに伴うアクセスが一つの装置に集中することなく、バックアップデータを生成した装置と離れた場所の装置にバックアップを行うことができるという効果がある。
【図面の簡単な説明】
【0014】
【図1】第1の実施形態のバックアップシステムの構成を表すブロック図である。
【図2】第1の実施形態の管理装置3のバックアップ指示を送信する動作を表すフローチャートである。
【図3】第1の実施形態のバックアップシステム全体の構成を表す図である。
【図4】第1の実施形態のバックアップ装置1のバックアップ指示受信時の動作を表すフローチャートである。
【図5】移動元距離及び移動先距離の第1の例を表す図である。
【図6】移動元距離及び移動先距離の第2の例を表す図である。
【図7】第2の実施形態のバックアップ装置1Aの構成を表すブロック図である。
【発明を実施するための形態】
【0015】
次に、本発明の実施形態について図面を参照して詳細に説明する。
【0016】
図1は、本発明の第1の実施形態のバックアップシステムの構成を表すブロック図である。
【0017】
図1を参照すると、本実施形態のバックアップシステムは、バックアップ装置1と、バックアップ装置2と、管理装置3を含む。
【0018】
バックアップ装置1及びバックアップ装置2は、それぞれ、指示受信部10と、バックアップデータ記憶部11と、距離記憶部12と、距離取得部13と、送信判定部14と、データ送信部15と、データ受信部16と、バックアップデータ生成部17と、バックアップ対象データ記憶部18と、距離測定部19を含む。
【0019】
管理装置3は、組合せ生成部31と、バックアップ指示部32と、距離測定部33を含む。管理装置3は、バックアップ装置情報記憶部34を含んでいてもよい。
【0020】
本実施形態のバックアップ装置1及びバックアップ装置2は、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。例えば、指示受信部10と、距離取得部13と、送信判定部14と、データ送信部15と、データ受信部16と、バックアップデータ生成部17は、例えば、プログラムを記憶する記録媒体からメモリに読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサにより実現することができる。また、バックアップデータ記憶部11と、距離記憶部12は、コンピュータが含むメモリやハードディスク装置により実現することができる。あるいは、指示受信部10と、距離取得部13と、送信判定部14と、データ送信部15と、データ受信部16と、バックアップデータ生成部17の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【0021】
同様に、本実施形態の管理装置3は、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。例えば、組合せ生成部31と、バックアップ指示部32と、距離測定部33は、例えば、プログラムを記憶する記録媒体からメモリに読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサにより実現することができる。また、バックアップ装置情報記憶部34は、コンピュータが含むメモリやハードディスク装置により実現することができる。あるいは、組合せ生成部31と、バックアップ指示部32と、距離測定部33の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【0022】
指示受信部10は、相手装置を特定する情報を含むバックアップ指示を受信する。相手装置は、後述のデータ送信部15がバックアップデータを送信する送信先の装置である。
【0023】
図1の例では、バックアップ装置1の指示受信部10が受信するバックアップ指示が含む相手装置は、バックアップ装置2である。すなわち、バックアップ装置1の相手装置はバックアップ装置2である。また、バックアップ装置2の指示受信部10が受信するバックアップ指示が含む相手装置は、バックアップ装置1である。すなわち、バックアップ装置2の相手装置はバックアップ装置1である。
【0024】
以下では、バックアップ装置1と管理装置3の説明を行う。バックアップ装置2の構成及び動作はバックアップ装置1と同じであるので、説明を省略する。なお、以下の説明の、バックアップ装置1とバックアップ装置2を入れ替えたものが、バックアップ装置2の説明になる。
【0025】
バックアップデータ記憶部11は、バックアップデータを、そのバックアップデータを生成した生成装置を特定する情報に関連付けて記憶する。生成装置は、バックアップデータ記憶部11が記憶するバックアップデータを生成した装置である。生成装置は、バックアップ装置1であっても、他の装置であってもよい。
【0026】
距離記憶部12は、生成装置と自装置であるバックアップ装置1の間の距離である移動元距離を記憶する。距離記憶部12は、バックアップデータ記憶部11が記憶する各バックアップデータを生成した各生成装置とバックアップ装置1の間の移動元距離を記憶しておけばよい。バックアップ装置1は、例えば、後述の距離測定部19が測定した移動元距離を、距離記憶部12に格納しておけばよい。あるいは、バックアップ装置1は、例えば、管理装置3に、自装置であるバックアップ装置1を特定する情報と生成装置を特定する情報を送信して、移動元距離の問い合わせを行ってもよい。そして、バックアップ装置1は、管理装置3から移動元距離を取得し、距離記憶部12に格納しておいてもよい。
【0027】
距離取得部13は、生成装置と相手装置の間の距離である移動先距離を取得する。距離取得部13は、バックアップデータ記憶部11が記憶する各バックアップデータを生成した各生成装置と相手の間の移動先距離を取得すればよい。距離取得部13は、例えば後述の距離測定部19が測定した移動先距離を取得すればよい。あるいは、距離取得部13は、例えば、管理装置3に生成装置を特定する情報及び相手装置を特定する情報を送信して移動先距離の問い合わせを行い、管理装置3から移動先距離を取得してもよい。また、距離取得部13は、距離測定部19あるいは管理装置3から取得した移動先距離を、生成装置及び相手装置をそれぞれ特定する情報に関連付けて、例えば距離記憶部12に格納しておいてもよい。そして、距離取得部13は、同じ生成装置及び相手装置の間の移動先距離を取得する場合に、格納した移動先距離を距離記憶部12から読み出してもよい。
【0028】
送信判定部14は、バックアップデータ記憶部11が記憶するバックアップデータを、相手装置に送信するか否かを決定する。送信判定部14は、例えば、バックアップデータの生成装置とバックアップ装置1の間の移動元距離が、その生成装置と相手装置との間の移動先距離より小さい場合に、そのバックアップデータを相手装置に送信すると決定すればよい。また、送信判定部14は、例えば、移動元距離が移動先距離以上である場合に、そのバックアップデータを相手装置に送信しないと決定すればよい。
【0029】
一般に、距離が遠く、多数の通信機器を経由する装置間のデータの転送速度より、距離が近く、経由する通信機器が少ない装置間のデータの通信速度の方が高速である。特に、装置間の距離が遠く、ベストエフォート型の回線や安価で低速な専用線を経由する装置間の通信速度と、これらの回線を経由しない、距離が近い装置間の通信速度との差は顕著である。よって、生成したバックアップデータを、距離が遠い装置に直接転送してバックアップを行うより、距離が近い装置に転送してバックアップを行う方が、バックアップが完了するまでの時間が短い。従って、バックアップデータを距離が遠い装置に直接転送せず、距離が近い装置に転送してバックアップを行うことにより、バックアップデータが他の装置に存在せず、バックアップが行われていない時間を短くすることができる。
【0030】
データ送信部15は、相手装置に送信すると送信判定部14が決定したバックアップデータと、そのバックアップデータの生成装置を特定する情報を、バックアップデータ記憶部11から読み出して相手装置に送信する。
【0031】
データ受信部16は、バックアップデータと、そのバックアップデータの生成装置を特定する情報を、相手装置から受信し、バックアップデータ記憶部11に格納する。
【0032】
バックアップデータ生成部17は、バックアップ対象データ記憶部18が記憶するデータから、バックアップデータを生成する。バックアップデータ生成部17は、生成したバックアップデータを、自装置であるバックアップ装置1を特定する情報に関連付けて、バックアップデータ記憶部11に格納する。
【0033】
バックアップ対象データ記憶部18は、バックアップの対象となるデータを記憶する。
【0034】
距離測定部19は、装置間の距離を測定する。距離測定部19は、例えば、バックアップデータ記憶部11が記憶するバックアップデータの生成装置と相手装置との間の距離を測定すればよい。距離測定部19は、例えば、バックアップデータ記憶部11が記憶するバックアップデータの生成装置と、自装置であるバックアップ装置1との間の距離を測定してもよい。
【0035】
距離測定部19が測定する距離は、例えば、2つの装置間で通信を行う場合に経由する、機器間の通信を仲介するスイッチ、スイッチングハブ、ルータ、ゲートウェイ等の通信機器の間を接続する経路(リンク)の数であればよい。この場合、例えば、2つの装置が同一のスイッチングハブに接続されているならば、2つの装置間の通信の経路に、スイッチ、スイッチングハブ、ルータ、ゲートウェイ間を接続する経路は含まれない。従って、この場合の距離は0である。また、例えば、2つの装置が、直接接続された2つのスイッチングハブのそれぞれに接続されている場合、2つの装置間の通信の経路に、2つのスイッチングハブを直接接続する経路が1つ含まれる。この場合の距離は1である。
【0036】
距離測定部19は、例えば、予め与えられているネットワークのトポロジ情報から、前述の距離を測定すればよい。あるいは、距離測定部19は、例えばネットワークのトポロジ情報を得るための既存の任意の方法で、前述の距離を測定してもよい。距離測定部19は、ネットワークのトポロジ情報を得ることができれば、2つの装置間の距離を得ることもできる。距離測定部19は、例えば、各装置のIP(Internet Protocol)アドレスによって、装置間の距離を判定すればよい。距離測定部19は、あるいは、SNMP(Simple Network Management Protocol)やICMP(Ineternet Control Message Protocol)等により、距離を測定してもよい。
【0037】
距離測定部19が測定する距離は、以上で説明した距離ではなく、装置間の通信速度に反比例する値や、装置間の直線距離であってもよい。この場合、距離測定部19は、装置間の通信速度や、装置が設置されている位置の情報や、装置間の直線距離等の、装置間の距離を算出するのに必要な情報を予め与えられていればよい。
【0038】
組合せ生成部31は、相互の距離が所定値以下である、2台のバックアップ装置の組合せを生成する。組合せ生成部31は、生成した組合せを構成する2台のバックアップ装置各々を特定する情報を、バックアップ指示部32に送信する。組合せ生成部31は、例えば後述の距離測定部33から、バックアップ装置間の距離を取得すればよい。
【0039】
バックアップ指示部32は、組合せ生成部31が生成した組合せ情報により特定した組合せの少なくともいずれか一方のバックアップ装置に、組合せの他方のバックアップ装置が相手装置であるバックアップ指示を生成し送信する。例えば、組合せ生成部31が、バックアップ装置1及びバックアップ装置2で構成される組合せを生成した場合、バックアップ指示部32がバックアップ装置1に送信するバックアップ指示の相手装置は、バックアップ装置2である。
【0040】
距離測定部33は、装置間の距離を測定する。距離測定部33は、例えば、2台の装置をそれぞれ特定する情報を受信し、それらの装置間の距離を測定すればよい。距離測定部33が測定する距離は、距離測定部19が測定する距離と同じである。距離測定部33は、距離測定部19と同じ方法で距離を測定すればよい。
【0041】
バックアップ装置情報記憶部34は、各バックアップ装置を特定する装置情報を記憶する。例えば、管理装置3の管理者が、各バックアップ装置の装置情報を、予めバックアップ装置情報記憶部34に格納しておけばよい。あるいは、管理装置3が、既存の任意の方法で、ネットワークを介して通信可能なバックアップ装置の探索を行い、探索の結果検出したバックアップ装置の装置情報を生成して、バックアップ装置情報記憶部34に格納してもよい。
【0042】
次に、本実施形態の動作について、図面を参照して詳細に説明する。
【0043】
図2は、本実施形態の管理装置3の、バックアップ指示を送信する動作を表すフローチャートである。管理装置3は、例えば管理装置3の管理者が予め設定したスケジュールに従って、図2の動作を開始すればよい。
【0044】
図2を参照すると、まず組合せ生成部31が、相互の距離が所定値以下である2台のバックアップ装置の組合せを表す組合せ情報を生成し(ステップS11)、生成した組合せ情報をバックアップ指示部32に送信する。この所定値は、組合せ情報を生成するか否かの基準となるバックアップ装置間の距離の閾値である。例えば管理装置3の管理者が、この所定値を予め適宜決めておけばよい。
【0045】
図3は、本実施形態の全体の構成の例を表す図である。図3のCL1−1〜CL7−rが、バックアップ装置である。
【0046】
組合せ生成部31は、ネットワークを介して通信可能なバックアップ装置の探索を行い、探索の結果検出されたバックアップ装置から2台のバックアップ装置を選択すればよい。管理装置3がバックアップ装置情報記憶部34を含む場合、組合せ生成部31は、バックアップ装置情報記憶部34が装置情報を記憶するバックアップ装置から、2台のバックアップ装置を選択してもよい。組合せ生成部31は、距離測定部33に、選択した2台のバックアップ装置を特定する情報を送信して、それらのバックアップ装置間の距離を問い合わせればよい。組合せ生成部31は、問い合わせに対して距離測定部33から受信した距離が所定値以下であれば、選択した2台のバックアップ装置で構成される組合せを生成すればよい。組合せ生成部31は、生成した組合せを表す組合せ情報を生成して、バックアップ指示部32に送信すればよい。
【0047】
組合せ生成部31が選択する組合せの数は、1個に限らない。組合せ生成部31は、複数の組合せを選択してもよい。この場合、組合せ生成部31は、1台のバックアップ装置が同時に複数の組合せに含まれないように、複数の組合せを選択すればよい。
【0048】
管理装置3の管理者は、複数の組合せを生成する場合の、組合せを構成する2台のバックアップ装置間の距離(前述のリンク)が0である組合せの数、及び、1以上である組合せの数や、それらの割合を、予め決めておいてもよい。そして、組合せ生成部31は、その数や割合に従って、複数の組合せを生成してもよい。例えば、組合せ生成部31は、生成する複数の組合せのうち、組合せを構成する2台のバックアップ装置間の距離が1以上である組合せの数を1にしてもよい。組合せを構成する2台のバックアップ装置間の距離毎の組合せの数やその割合は、決められていなくてもよい。
【0049】
あるいは、管理装置3の管理者は、複数の組合せ各々の組合せ情報を、バックアップ装置情報記憶部34に格納しておいてもよい。管理装置3の管理者は、組合せを構成する2台のバックアップ装置間の距離を、その組合せの組合せ情報に関連付けて、バックアップ装置情報記憶部34に格納しておいてもよい。そして、組合せ生成部31は、バックアップ装置情報記憶部34が記憶する組合せ情報から、バックアップ指示部32に送信する組合せ情報を選択してもよい。組合せ生成部31は、複数の組合せ情報を選択する場合、1台のバックアップ装置が、複数の、選択した組合せ情報で表される組合せに含まれないよう、組合せ情報を選択すればよい。
【0050】
また、例えば管理装置3の管理者が、相互の距離が所定値以下となる2台のバックアップ装置の組合せを表す組合せ情報を複数含む集合を、予め複数生成し、例えばバックアップ装置情報記憶部34に格納しておいてもよい。そして、組合せ生成部31が、バックアップ装置情報記憶部34が記憶する、組合せ情報の複数の集合から、いずれかの集合を選択し、その集合に含まれる組合せの組合せ情報をバックアップ指示部32に送信してもよい。
【0051】
また、管理装置3は、例えば予め設定されたスケジュールに従って所定時間毎に、ステップS11から後述のステップS13までの動作を行ってもよい。この場合、組合せ生成部31は、ステップS11において、前回選択した組合せと異なる組合せを選択するようにすればよい。
【0052】
なお、本実施形態では、機器間の通信を仲介する通信機器は、その通信機器を経由する2つの装置間の通信が、同じ通信機器を経由する、その2つの装置以外の装置間の通信に影響を及ぼさない通信機器であることが望ましい。この場合、組合せを構成する2台のバックアップ装置が共に同一の通信機器に接続されているなら、これらのバックアップ装置間におけるバックアップデータの送信は、これらのバックアップ装置以外の装置間の通信に影響を及ぼさない。また、1台のバックアップ装置が同時に複数の組合せに含まれないよう組合せを生成することで、同一の通信機器に接続された組合せを構成するバックアップ装置間のバックアップデータの送信が、複数の組合せで同時に行われた場合でも、通信速度の低下は生じない。
【0053】
次に、バックアップ指示部32が、組合せ生成部31が生成した組合せ情報により特定した組合せを構成する2台のバックアップ装置の少なくともいずれか一方を選択し、選択したバックアップ装置が相手装置であるバックアップ指示を生成する(ステップS12)。
【0054】
バックアップ指示部32は、組合せを構成する2台のバックアップ装置が、それぞれ相手装置である2つのバックアップ指示を生成すればよい。
【0055】
次に、バックアップ指示部32は、組合せ生成部31が組合せを構成する2台のバックアップ装置のうち、生成したバックアップ指示で特定される相手装置でない方のバックアップ装置に、そのバックアップ指示を送信する(ステップS13)。
【0056】
バックアップ指示部32は、前述の組合せを構成する2台のバックアップ装置のそれぞれに、他方のバックアップ装置が相手装置であるバックアップ指示を送信すればよい。例えば、組合せを構成するバックアップ装置が、図1のバックアップ装置1及びバックアップ装置2であれば、バックアップ指示部32は、バックアップ装置1に対して、バックアップ装置2が相手装置であるバックアップ指示を送信する。また、この場合、バックアップ指示部32は、バックアップ装置2に対して、バックアップ装置1が相手装置であるバックアップ指示を送信する。
【0057】
バックアップ指示部32は、前述の組合せを構成する2台のバックアップ装置のいずれか一方に、他方のバックアップ装置が相手装置であるバックアップ指示を送信してもよい。例えば、組合せを構成するバックアップ装置が、図1のバックアップ装置1及びバックアップ装置2であれば、バックアップ指示部32は、バックアップ装置1に対して、バックアップ装置2が相手装置であるバックアップ指示を送信すればよい。
【0058】
バックアップ指示部32は、組合せ生成部31から複数の組合せ情報を受信した場合は、受信した組合せ情報各々に対して、順次、ステップS13の動作を行えばよい。
【0059】
なお、組合せを構成する2台のバックアップ装置の優先順位が一意に定まるように、優先順位を決める規則を予め設定しておくことができる。例えば、バックアップ装置の優先順位は、全てのバックアップ装置に予め番号を重複しないように割り当てられた番号により決まればよい。例えば管理装置3の管理者が、各バックアップ装置に割り当てる番号を任意の方法で決めればよい。
【0060】
次に、バックアップ指示を受信したバックアップ装置1の動作について、図面を参照して詳細に説明する。
【0061】
図4は、バックアップ指示を受信したバックアップ装置1の動作を表すフローチャートである。
【0062】
図4を参照すると、まず、指示受信部10が、管理装置3からバックアップ指示を受信する(ステップS21)。
【0063】
以下の説明では、バックアップ装置1の指示受信部10が受信したバックアップ指示における相手装置は、バックアップ装置2である。また、管理装置3は、バックアップ装置2の指示受信部10に対して、相手装置がバックアップ装置1であるバックアップ指示を送信してもよい。
【0064】
次に、送信判定部14が、バックアップデータ記憶部11が記憶するバックアップデータに、未選択のバックアップデータが存在するか否かを判定する。バックアップデータ記憶部11がバックアップデータを記憶している場合、バックアップ指示の受信の直後、バックアップデータ記憶部11が記憶する全てのバックアップデータが未選択である。
【0065】
バックアップデータ記憶部11が記憶するバックアップデータに、未選択のバックアップデータが存在する場合(ステップS22、N)、送信判定部14は、未選択のバックアップデータから、1つのバックアップデータを選択する(ステップS23)。
【0066】
送信判定部14によるバックアップデータの選択の順番は任意である。送信判定部14は、例えば、自装置のバックアップ対象データ記憶部18が記憶するデータからバックアップデータ生成部17が生成したバックバックアップデータを、最初に選択してもよい。
【0067】
送信判定部14は、選択したバックアップデータを生成した生成装置と、自装置であるバックアップ装置1の間の距離である送信元距離を、距離記憶部12から読み出す(ステップS24)。
【0068】
次に距離取得部13が、選択したバックアップデータを生成した生成装置と、バックアップ指示から特定した相手装置の間の距離である送信先距離を取得する(ステップS25)。距離取得部13は、取得した送信先距離を、送信判定部14に送信する。
【0069】
次に、送信判定部14が、選択したバックアップデータを相手装置に送信するか否かの判定を行う(ステップS26)。
【0070】
送信元距離より送信先距離が大きい場合、選択したバックアップデータを記憶しているバックアップ装置1より、相手装置の方が、そのバックアップデータの生成装置からの距離が大きい。この場合、バックアップ装置1が選択したバックアップデータを相手装置に送信すれば、そのバックアップデータは、そのバックアップデータの生成装置から離れたバックアップ装置に移動する。一方、送信元距離より送信先距離が小さい場合、バックアップ装置1が選択したバックアップデータを相手装置に送信すれば、そのバックアップデータは、そのバックアップデータの生成装置に近いバックアップ装置に移動する。
【0071】
そこで、送信元距離より送信先距離が大きい場合、送信判定部14は、選択したバックアップデータを相手装置に送信することを決定する。送信元距離より送信先距離が小さい場合、送信判定部14は、選択したバックアップデータを相手装置に送信しないことを決定する。
【0072】
例えば、図3の例で、バックアップ装置1がCL5−1であり、選択したバックアップデータの生成装置がCL5−2であり、相手装置がCL6−1であれば、バックアップ装置1と生成装置の間の、前述の通信機器間のリンクの数(距離)は、0である。一方、生成装置と相手装置の間のリンクの数は2である。この場合、送信判定部14は、選択したバックアップデータを相手装置に送信することを決定する。
【0073】
図5は、この場合の移動先距離及び移動元距離を表す図である。
【0074】
一方、同様に図3の例で、バックアップ装置1がCL5−1であり、選択したバックアップデータの生成装置がCL6−2であり、相手装置がCL6−1であれば、バックアップ装置1と生成装置の間の、前述の通信機器間のリンクの数(距離)は、2である。一方、生成装置と相手装置の間のリンクの数は0である。この場合、送信判定部14は、選択したバックアップデータを相手装置に送信しないことを決定する。
【0075】
図6は、この場合の移動先距離及び移動元距離を表す図である。
【0076】
送信判定部14が、選択したバックアップデータを相手装置に送信しないことを決定した場合(ステップS27、N)、データ送信部15はそのバックアップデータの送信を行わない。この場合、バックアップ装置1の動作はステップS22に戻る。
【0077】
送信判定部14が、選択したバックアップデータを相手装置に送信することを決定した場合(ステップS27、Y)。データ送信部15は、選択したバックアップデータを相手装置に送信する(ステップS28)。
【0078】
なお、ステップS28では、バックアップ装置1が含むデータ送信部15が、選択したバックアップデータを送信するのではなく、送信判定部14が他の装置に選択したバックアップデータの送信を指示してもよい。そして、送信判定部14から指示を受信した他の装置が、バックアップデータ記憶部11から選択したバックアップデータを読み出して、相手装置に送信してもよい。
【0079】
データ送信部15は、バックアップデータの送信の前に、相手装置に対して、バックアップデータを格納することが可能な空き容量を、相手装置のバックアップデータ記憶部11に確保できるかを問い合わせればよい。データ送信部15は、相手装置が空き容量を確保できる場合、相手装置にバックアップデータを送信すればよい。データ送信部15は、相手装置が空き容量を確保できない場合、相手装置にバックアップデータを送信しなければよい。相手装置が空き容量を確保できない場合、データ送信部15は、そのバックアップデータのバックアップしたことを、管理装置3に通知してもよい。管理装置3は、同じ組合せのバックアップ装置間においてバックアップの失敗が続いた場合、バックアップ装置の組合せを表す情報の生成の際、その組合せを選択しないようにしてもよい。
【0080】
バックアップデータの送信終了後、データ送信部15は、送信したバックアップデータをバックアップデータ記憶部11から削除してもよい。また、データ送信部15は、送信したバックアップデータをバックアップデータ記憶部11から削除した後、バックアップデータ記憶部11にどのようなバックアップデータが格納されているかを表すカタログデータを、管理装置3に送信してもよい。この場合、管理装置3は、受信したカタログデータを、図示しないカタログ情報記憶部に格納すればよい。
【0081】
ステップS23で選択したバックアップデータが、バックアップデータ生成部17が生成した自装置のバックアップデータである場合、バックアップ装置1は、ステップS24からステップS27の動作を行わず、必ずステップS28の動作を行えばよい。あるいは、自装置が生成装置である場合の送信元距離を、自装置と同じスイッチングハブに接続されたバックアップ装置と自装置の距離より小さい距離にしてもよい。
【0082】
バックアップデータ記憶部11が記憶するバックアップデータに、未選択のバックアップデータが存在しない場合(ステップS22、N)、データ受信部16は、相手装置から、バックアップデータを受信する(ステップS29)。
【0083】
なお、バックアップデータ記憶部11が記憶するバックアップデータに、未選択のバックアップデータが存在しない場合、ステップS29の前に、例えばデータ送信部15が、バックアップデータの送信が完了したことを表す通知を相手装置に送信すればよい。相手装置は、バックアップデータの送信が完了したことを表す通知をデータ送信部15から受信した後、バックアップデータの送信を開始すればよい。
【0084】
データ受信部16は、受信したバックアップデータの生成装置を特定するデータも相手装置から受信し、受信したバックアップデータを、そのバックアップデータの生成装置を特定する情報に関連付けて、バックアップデータ記憶部11に格納する。データ受信部16は、受信したバックアップデータをバックアップデータ記憶部11に格納した後、データ記憶部11にどのようなバックアップデータが格納されているかを表すカタログデータを、管理装置3に送信してもよい。
【0085】
ステップS29の終了後、データ送信部15やデータ受信部16ではなく、例えば図示しないカタログ送信部が、データ記憶部11にどのようなバックアップデータが格納されているかを表すカタログデータを、管理装置3に送信してもよい。
【0086】
次に、相手装置がバックアップ装置1であるバックアップ指示を受信した場合のバックアップ装置2の動作について、図4を参照して詳細に説明する。バックアップ装置2は、バックアップ装置1と共に前述の組合せを構成するバックアップ装置である。
【0087】
バックアップ装置2は、バックアップ指示を受信すると(ステップS21)、まず、相手装置が送信するバックアップデータを受信する(ステップS29)。
【0088】
バックアップ装置2は、相手装置からのバックアップデータの受信が終了した後、ステップS22からステップS28のバックアップデータの送信を行う。バックアップ装置2のバックアップデータ記憶部11が記憶するバックアップデータに、未選択のバックアップデータが存在しない場合は(ステップS22、N)、処理を終了する。
【0089】
各ステップにおけるバックアップ装置2の各部の動作は、同じ番号のステップの同じ符号の構成要素の動作と同じであるので、各ステップの動作の説明は省略する。
【0090】
なお、前述の組合せを構成するバックアップ装置1及びバックアップ装置2のうち、先にバックアップデータの送信(ステップS22〜ステップS28)を行う装置は、前述の優先順位に基づく規則により、各バックアップ装置が判断すればよい。例えば、各バックアップ装置は、相手装置より優先順位が高ければ先にバックアップデータの送信(ステップS22〜ステップS28)を行い、相手装置より優先順位が低ければ先にバックアップデータの受信(ステップS29)を行えばよい。バックアップデータの送信及び受信の順番は、逆でもよい。
【0091】
また、バックアップ指示部32が、バックアップ装置1及びバックアップ装置2のいずれか一方に対してバックアップ指示を送信する場合、バックアップ指示を受信した装置は、ステップS21〜ステップS28の動作を行えばよい。この場合、バックアップ指示を受信しなかった装置は、ステップS29の動作を行えばよい。
【0092】
本実施形態には、バックアップに伴うアクセスが一つの装置に集中することなく、バックアップデータを生成した装置と離れた場所の装置にバックアップを行うことができるという第1の効果がある。
【0093】
その理由は、送信判定部14が、バックアップデータを生成した生成装置と自装置の距離である移動元距離より、生成装置と相手装置の距離である移動先距離が大きい場合に、バックアップデータを相手装置に送信することを決定するからである。相手装置は、指示受信部10が受信したバックアップ指示から特定される相手装置である。データ送信部15は、送信判定部14が送信することを決定したバックアップデータを、相手装置に送信する。バックアップデータの送信後、そのバックアップデータは、送信前のバックアップ装置より、そのバックアップデータを生成した生成装置からの距離が大きいバックアップ装置に移動する。また、本実施形態では、バックアップデータの送信先である相手装置を、バックアップ指示により指定することができるので、バックアップデータの送信先が特定の装置に固定されない。
【0094】
また、本実施形態には、一般に近い場所に存在するバックアップ装置間より転送速度が低速な、遠い場所に存在するバックアップ装置間でバックアップデータを送信することなく、遠隔地に存在する装置にバックアップデータを転送できるという第2の効果がある。
【0095】
その理由は、バックアップ指示部32が、相手装置を順次変更しながら、各バックアップ装置に対して繰り返しバックアップ指示を送信するからである。バックアップ指示により特定される相手装置と、バックアップ指示を受信したバックアップ装置の間の距離は、所定値以下である。従って、所定値より離れた距離にあるバックアップ装置間では、バックアップデータの送信は行われない。各バックアップ装置のデータ送信部15は、バックアップ指示を受信するたびに、バックアップデータ記憶部11に格納されたバックアップデータの、移動元距離より移動先距離が大きければ、バックアップデータの相手装置への送信を繰り返し行う。このことにより、バックアップデータは、そのバックアップデータの生成装置から、近いバックアップ装置から遠いバックアップ装置に、徐々に移動していく。
【0096】
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
【0097】
図7は、本実施形態の構成を表すブロック図である。
【0098】
図7を参照すると、本実施形態のバックアップ装置1Aは、相手装置を特定する情報を含むバックアップ指示を受信する指示受信部10と、バックアップデータを、前記バックアップデータを生成した生成装置を特定する情報に関連付けて記憶するバックアップデータ記憶部11と、前記生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶部12と、前記生成装置と前記相手装置の間の距離である移動先距離を取得する距離取得部13と、前記バックアップ指示を受信した場合、前記生成装置と前記バックアップ指示から特定した相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記バックアップデータを前記相手装置に送信することを決定し、前記移動先距離が前記移動元距離より小さければ、前記バックアップデータを送信しないことを決定する送信判定部14と、を含む。
【0099】
送信判定部14は、前述の移動元距離より前述の移動先距離が大きい場合に、バックアップデータを送信することを決定する。送信判定部14は、移動元距離より移動先距離が小さい場合に、バックアップデータを送信しないことを決定する。送信判定部14は、バックアップデータを送信するか否かを表す判定結果を出力する。送信判定部14による判定結果の出力先は、例えば、バックアップデータ記憶部11が記憶するバックアップデータを相手装置に送信する、図示しない転送部であればよい。送信判定部14の他の動作は、第1の実施形態の送信判定部14の動作と同じである。
【0100】
バックアップ装置1Aが含む送信判定部14以外の各部は、第1の実施形態のバックアップ装置1が含む、同一の符号の各部と同じである。従って、バックアップ装置1Aが含む各部の詳細な説明は省略する。
【0101】
次に、本実施形態の動作について図面を参照して詳細に説明する。
【0102】
本実施形態のバックアップ装置1Aの動作は、図4のフローチャートからステップS29を除いたものと同じである。本実施形態では、未選択のバックアップデータが存在しない場合(ステップS22、N)、動作を終了する。その他の動作は、図4に示す第1の実施形態の動作と同じであるので、説明を省略する。
【0103】
本実施形態には、バックアップに伴うアクセスが一つの装置に集中することなく、バックアップデータを生成した装置と離れた場所の装置にバックアップを行うことができるという、第1の実施形態の第1の効果と同じ効果がある。
【0104】
その理由は、送信判定部14が、移動元距離より移動先距離が大きい場合に、バックアップデータを送信することを決定するからである。バックアップデータ記憶部11が記憶するバックアップデータを相手装置に送信する、図示しない転送部が、送信判定部14が送信することを決定したバックアップデータを、指示受信部10が受信したバックアップ指示から特定した相手装置に送信する。バックアップデータの送信後、そのバックアップデータは、送信前のバックアップ装置より、そのバックアップデータを生成した生成装置からの距離が大きいバックアップ装置に移動する。また、本実施形態では、バックアップデータの送信先である相手装置を、バックアップ指示により指定することができるので、バックアップデータの送信先が特定の装置に固定されない。
【0105】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0106】
1、1A、2 バックアップ装置
3 管理装置
10 指示受信部
11 バックアップデータ記憶部
12 距離記憶部
13 距離取得部
14 送信判定部
15 データ送信部
16 データ受信部
17 バックアップデータ生成部
18 バックアップ対象データ記憶部
19、33 距離測定部
31 組合せ生成部
32 バックアップ指示部
34 バックアップ装置情報記憶部

【特許請求の範囲】
【請求項1】
相手装置を特定する情報を含むバックアップ指示を受信する指示受信手段と、
第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けて記憶するバックアップデータ記憶手段と、
前記第1の生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶手段と、
前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得する距離取得手段と、
前記バックアップ指示を受信した場合、前記第1の生成装置と前記バックアップ指示から特定した相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定し、前記移動先距離が前記移動元距離より小さければ、前記バックアップデータを送信しないことを決定する送信判定手段と
を含むバックアップ装置。
【請求項2】
前記バックアップ指示から特定した前記相手装置に送信することを決定した前記第1のバックアップデータと、当該バックアップデータの前記第1の生成装置を特定する情報を、前記相手装置に送信するデータ送信手段と、
前記相手装置から、第2のバックアップデータ及び前記第2の当該バックアップデータのを生成した第2の生成装置を特定する情報を受信し、受信した前記第2のバックアップデータにと前記第2の生成装置を特定する前記情報を関連付けて、前記バックアップデータ記憶手段に格納するデータ受信手段と
を含む請求項1に記載のバックアップ装置。
【請求項3】
バックアップデータを生成するバックアップデータ生成手段を含み、
前記バックアップデータ送信手段は、前記バックアップ指示を受信した場合、前記バックアップ指示から特定した相手装置に、生成した前記バックアップデータを、自装置を特定する情報に関連付けて送信する
請求項2に記載のバックアップ装置。
【請求項4】
請求項1乃至3のいずれかに記載のバックアップ装置の、相互の距離が前記所定値以下の2台の組合せを特定する組合せ情報を生成する組合せ生成手段と、
生成した前記組合せ情報により特定した組合せの少なくともいずれか一方の前記バックアップ装置に、前記組合せの他方のバックアップ装置が前記相手装置であるバックアップ指示を生成し送信するバックアップ指示手段と
を含む管理装置と、
前記組合せ情報で特定される組合せに含まれる前記バックアップ装置と
を含むバックアップシステム。
【請求項5】
相手装置を特定する情報を含むバックアップ指示を受信し、
第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けてバックアップデータ記憶手段に記憶し、
前記第1の生成装置と自装置との間の距離である移動元距離を距離情報記憶手段に記憶し、
前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得し、
前記第1の生成装置と前記相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定する
バックアップ方法。
【請求項6】
前記第1のバックアップデータと、前記第1の生成装置を特定する情報を、前記相手装置に送信し、
第2のバックアップデータ及び前記第2のバックアップデータを生成した第2の生成装置を特定する情報を受信し、受信した前記第2のバックアップデータと前記第2の生成装置を特定する前記情報を関連付けて、前記バックアップデータ記憶手段に格納する
請求項5に記載のバックアップ方法。
【請求項7】
バックアップデータを生成し、
前記バックアップ指示を受信した場合、前記相手装置に、生成した前記バックアップデータを、自装置を特定する情報に関連付けて送信する
請求項6に記載のバックアップ方法。
【請求項8】
コンピュータを、
相手装置を特定する情報を含むバックアップ指示を受信する指示受信手段と、
第1のバックアップデータを、前記第1のバックアップデータを生成した第1の生成装置を特定する情報に関連付けて記憶するバックアップデータ記憶手段と、
前記第1の生成装置と自装置との間の距離である移動元距離を記憶する距離情報記憶手段と、
前記第1の生成装置と前記相手装置の間の距離である移動先距離を取得する距離取得手段と、
前記第1の生成装置と前記相手装置との間の前記移動先距離が、前記移動元距離より大きければ、前記第1のバックアップデータを前記相手装置に送信することを決定する送信判定手段と
して動作させるバックアッププログラム。
【請求項9】
コンピュータを、
前記第1のバックアップデータと、前記第1の生成装置を特定する情報を、前記相手装置に送信するデータ送信手段と、
第2のバックアップデータ及び前記第2のバックアップデータを生成した第2の生成装置を特定する情報を受信し、受信した前記第2のバックアップデータと前記第2の生成装置を特定する前記情報を関連付けて、前記バックアップデータ記憶手段に格納するデータ受信手段と
して動作させる請求項8に記載のバックアッププログラム。
【請求項10】
コンピュータを、
バックアップデータを生成するバックアップデータ生成手段と、
前記バックアップ指示を受信した場合、前記相手装置に、生成した前記バックアップデータを、自装置を特定する情報に関連付けて送信する前記バックアップデータ送信手段と
して動作させる請求項9に記載のバックアッププログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate