(57)【要約】【課題】圧縮されたデータ群を解凍する際に、解凍対象でない、圧縮されたデータ群が解凍されることを抑制することを目的とする。【解決手段】制御プログラムは、複数の第１のデータ記憶装置から送信された複数のデータ群を受信し、受信した複数のデータ群それぞれを、送信元の第１のデータ記憶装置ごとのグループに分類し、それぞれのグループに分類された一又は複数のデータ群を、それぞれのグループごとに圧縮し、それぞれのグループごとに圧縮した一又は複数のデータ群を第２のデータ記憶装置に送信する処理を情報処理装置に実行させる。【選択図】図３
2018185562.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１のデータ記憶装置から送信された複数のデータ群を受信し、
受信した前記複数のデータ群それぞれを、送信元の前記第１のデータ記憶装置ごとのグループに分類し、
それぞれのグループに分類された一又は複数のデータ群を、前記それぞれのグループごとに圧縮し、
前記それぞれのグループごとに圧縮した前記一又は複数のデータ群を第２のデータ記憶装置に送信する、
処理を情報処理装置に実行させる制御プログラム。
【請求項２】
いずれかのグループに複数のデータ群が分類され、分類された前記複数のデータ群のうちのいずれかのデータ群の前記第２のデータ記憶装置への送信が開始された後に、分類された前記複数のデータ群のうち、前記いずれかのデータ群を除いた一又は複数のデータ群を圧縮し、前記第２のデータ記憶装置に送信する、
処理を前記情報処理装置に実行させる請求項１に記載の制御プログラム。
【請求項３】
分類した前記グループのうち、前記データ群の数が第１閾値以上であるグループが存在する場合、前記分類したグループのうち前記データ群の数が最も多いグループを圧縮対象のグループとして選択する、
処理を前記情報処理装置に実行させる請求項１または２記載の制御プログラム。
【請求項４】
分類した前記グループのうち、前記データ群の合計データ量が第２閾値以上であるグループが存在する場合、前記分類したグループのうち前記データ群の合計データ量が最も大きいグループを圧縮対象のグループとして選択する、
処理を前記情報処理装置に実行させる請求項１乃至３のうち何れか１項に記載の制御プログラム。
【請求項５】
前記第１の記憶装置からリストア要求を受信した場合、圧縮された前記データ群のうちリストア対象の前記データ群を前記第２のデータ記憶装置から取得し、
取得した前記データ群を解凍し、
解凍した前記データ群をリストア要求の送信元である前記第１のデータ記憶装置に送信し、
前記第１のデータ記憶装置に送信してから所定時間経過した前記データ群を削除する
処理を前記情報処理装置に実行させる請求項１乃至４のうち何れか１項に記載の制御プログラム。
【請求項６】
複数の第１のデータ記憶装置から送信された複数のデータ群を受信し、
受信した前記複数のデータ群それぞれを、送信元の前記第１のデータ記憶装置ごとのグループに分類し、
それぞれのグループに分類された一又は複数のデータ群を、前記それぞれのグループごとに圧縮し、
前記それぞれのグループごとに圧縮した前記一又は複数のデータ群を第２のデータ記憶装置に送信する、
処理を情報処理装置が実行することを特徴とする制御方法。
【請求項７】
複数の第１のデータ記憶装置から送信された複数のデータ群を受信する受信部と、
受信した前記複数のデータ群それぞれを、送信元の前記第１のデータ記憶装置ごとのグループに分類する分類部と、
それぞれのグループに分類された一又は複数のデータ群を、前記それぞれのグループごとに圧縮する圧縮部と、
前記それぞれのグループごとに圧縮した前記一又は複数のデータ群を第２のデータ記憶装置に送信する送信部と、
を備えることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラム、制御方法、及び情報処理装置に関する。
【背景技術】
【０００２】
複数のテナントが使用するクラウドシステムにおいて、データ記憶用サーバが記憶しているデータをバックアップ用のサーバに所定時刻に転送するバックアップ処理が行われる。ただし、バックアップを実施する時間帯が偏ると、データ記憶用サーバとバックアップ用のサーバとの間の通信負荷が時間帯に応じて偏る。そこで、バックアップを効率的に実行し、リソースの使用効率を向上することが求められている。
【０００３】
関連する技術として、メインシステムとバックアップシステムを、ゲートウェイサーバを介したネットワークで接続し、ゲートウェイサーバに等価が必要なデータを一時保管する技術が提案されている（例えば、特許文献１を参照）。
【０００４】
また、バックアップ装置から受信したバックアップ要求に応じて、ストレージサーバからデータを読み出し、読み出したデータを、バックアップ装置に転送するデータ中継サーバが提案されている（例えば、特許文献２を参照）。
【０００５】
また、頻繁には使用されないデジタル・アセットが、ストレージ・スペースを温存するために、アーカイブされる時に圧縮される技術が提案されている（例えば、特許文献３を参照）。
【０００６】
また、業務に対応してグループ化されたストレージに関する情報を記憶するデータ処理装置が提案されている（例えば、特許文献４を参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−２４５２４８号公報
【特許文献２】特開２００６−２５１９３６号公報
【特許文献３】特表２００２−５３８５５３号公報
【特許文献４】特開平５−１７３８７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
データ群をバックアップする際に、バックアップ対象のデータ群を複数のグループに分類してグループごとに圧縮し、圧縮したデータ群をバックアップ用のサーバに保存することでバックアップを効率的に実行することが考えられる。そして、バックアップ対象のデータ群をリストアする際には、リストア要求されたデータ群を含む、圧縮されたグループが解凍されることが考えられる。
【０００９】
しかし、グループごとにデータを圧縮した場合、グループ内に解凍対象（リストア対象）のデータと解凍対象でないデータが混在していると、リストアの際に、解凍対象でないデータ群も解凍することとなる。
【００１０】
１つの側面として、本発明は、圧縮されたデータ群を解凍する際に、解凍対象でない、圧縮されたデータ群が解凍されることを抑制することを目的とする。
【課題を解決するための手段】
【００１１】
１つの態様では、制御プログラムは、複数の第１のデータ記憶装置から送信された複数のデータ群を受信し、受信した前記複数のデータ群それぞれを、送信元の前記第１のデータ記憶装置ごとのグループに分類し、それぞれのグループに分類された一又は複数のデータ群を、前記それぞれのグループごとに圧縮し、前記それぞれのグループごとに圧縮した前記一又は複数のデータ群を第２のデータ記憶部に送信する処理を情報処理装置に実行させる。
【発明の効果】
【００１２】
１つの側面によれば、圧縮されたデータ群を解凍する際に、解凍対象でない、圧縮されたデータ群が解凍されることを抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】実施形態のシステムの全体構成の一例を示す図である。
【図２】解凍対象でないＤＢが解凍および送信される例を示す図である。
【図３】中継サーバの一例を示す図である。
【図４】バックアップ管理情報の一例を示す図である。
【図５】ＤＢとデータ記憶サーバとの対応関係を示す管理情報の一例を示す図である。
【図６】リストア管理情報の一例を示す図である。
【図７】中継サーバの受信処理の流れの一例を示すフローチャートである。
【図８】中継サーバのバックアップ処理の流れの一例を示すフローチャート（その１）である。
【図９】中継サーバのバックアップ処理の流れの一例を示すフローチャート（その２）である。
【図１０】中継サーバのリストア処理の流れの一例を示すフローチャートである。
【図１１】リストアデータ領域内のＤＢの削除処理の流れの一例を示すフローチャートである。
【図１２】実施形態の中継サーバの適用例を示す図である。
【図１３】中継サーバのハードウェア構成の一例を説明する。
【発明を実施するための形態】
【００１４】
＜実施形態のシステムの全体構成の一例＞
以下、図面を参照して、実施形態について説明する。図１は、実施形態のシステムの全体構成の一例を示す図である。実施形態のシステムは、第１のネットワークセグメント１と第２のネットワークセグメント２とを含む。
【００１５】
第１のネットワークセグメント１は、複数のデータ記憶サーバ３と中継サーバ４とを含む。第２のネットワークセグメントは、バックアップサーバ５を含む。第２のネットワークセグメントは、複数のバックアップサーバ５を含んでいてもよい。データ記憶サーバ３は、第１のデータ記憶装置の一例である。中継サーバ４は、情報処理装置の一例である。バックアップサーバ５は、第２のデータ記憶装置の一例である。
【００１６】
データ記憶サーバ３は、ユーザが使用するデータを記憶する。複数のデータ記憶サーバ３は、それぞれ物理的に別の装置であるとする。データ記憶サーバ３は、データのバックアップを行う場合、中継サーバ４にバックアップ対象のデータ群を送信する。本実施形態において、バックアップ対象のデータ群は、DataBase（ＤＢ）であるとする。バックアップ対象のデータ群は、複数のファイル等であってもよい。
【００１７】
中継サーバ４は、送信されたバックアップ対象のＤＢをグループごとに圧縮し、圧縮したＤＢのグループをバックアップサーバ５に送信する。以下、グループごとに圧縮されたＤＢを圧縮データと称することがある。
【００１８】
また、中継サーバ４は、データ記憶サーバ３からリストア要求を受信した場合、バックアップサーバ５から、リストア対象のＤＢを含む圧縮データを取得する。中継サーバ４は、取得した圧縮データを解凍して、リストア要求の送信元のデータ記憶サーバ３に送信する。
【００１９】
バックアップサーバ５は、中継サーバ４から受信した圧縮データを記憶する。また、バックアップサーバ５は、例えば、安全性の向上のため、RAID（Redundant Arrays of Inexpensive Disks）が用いられていてもよい。
【００２０】
図１に示すネットワーク構成において、第１のネットワークセグメント１内の通信帯域より、第１のネットワークセグメント１と第２のネットワークセグメント２との間の通信帯域の方が狭いとする。この場合、バックアップおよびリストアの際の通信遅延を抑制するためには、中継サーバ４とバックアップサーバ５との間の通信量を減らすことが好ましい。
【００２１】
＜解凍対象でないＤＢが解凍および送信される例＞
図２は、解凍対象でないＤＢが解凍および送信される例を示す図である。図２において、図１と同様の構成については、説明を省略する。データ記憶サーバ３ａおよびデータ記憶サーバ３ｂは、図１におけるデータ記憶サーバ３に対応する。データ記憶サーバ３ａは、ＤＢ＃１およびＤＢ＃２を記憶する。データ記憶サーバ３ｂは、ＤＢ＃３およびＤＢ＃４を記憶する。
【００２２】
バックアップ処理において、データ記憶サーバ３ａおよびデータ記憶サーバ３ｂ内の各ＤＢのバックアップ処理が行われた結果、中継サーバ４によりグループごとに圧縮されたＤＢがバックアップサーバ５に記憶されていることを想定する。
【００２３】
本例では、ＤＢ＃１、ＤＢ＃３、ＤＢ＃２、ＤＢ＃４の順に中継サーバ４にＤＢが送信され、中継サーバ４が受信順にグループ化を行った結果、ＧＲＯＵＰ１にＤＢ＃１およびＤＢ＃３が含まれ、ＧＲＯＵＰ２にＤＢ＃２およびＤＢ＃４が含まれているとする。
【００２４】
バックアップ処理の後、データ記憶サーバ３ａに障害が発生し、中継サーバ４がデータ記憶サーバ３ａからＤＢ＃１およびＤＢ＃２を指定するリストア要求を受信したとする。中継サーバ４は、ＤＢ＃１およびＤＢ＃２をリストアするため、バックアップサーバ５からＧＲＯＵＰ１とＧＲＯＵＰ２に対応する圧縮データを取得する。
【００２５】
本例において、ＤＢ＃３およびＤＢ＃４は、リストア対象のＤＢではないが、それぞれリストア対象のＤＢ＃１またはＤＢ＃２と同じグループに属し、まとめて圧縮されているため、バックアップサーバ５からの送信、解凍が行われる。すなわち、リストア対象（解凍対象）ではないＤＢの転送および解凍が行われる。
【００２６】
＜中継サーバの一例＞
図３は、中継サーバ４の一例を示す図である。中継サーバ４は、通信部１１と管理部１２と分類部１３と選択部１４と圧縮部１５と特定部１６と解凍部１７と記憶部１８と制御部１９と削除処理部２０を含む。
【００２７】
通信部１１は、複数のデータ記憶サーバ３から複数のバックアップ対象のＤＢを受信し、後述する処理によりグループごとに圧縮されたＤＢをバックアップサーバ５に送信する。通信部１１は、受信部および送信部の一例である。
【００２８】
通信部１１は、障害が発生したデータ記憶サーバ３からリストア要求を受信する。そして、通信部１１は、バックアップサーバ５からリストア対象のＤＢを含む圧縮データを受信し、後述する処理により解凍されたリストア対象のＤＢを、リストア要求の送信元であるデータ記憶サーバ３に送信する。
【００２９】
管理部１２は、バックアップに関する管理情報であるバックアップ管理情報、およびリストア処理に関する管理情報であるリストア管理情報に対する更新処理を行う。バックアップ管理情報およびリストア管理情報についての詳細は後述する。
【００３０】
分類部１３は、データ記憶サーバ３から受信したバックアップ対象の複数のＤＢそれぞれを、該複数のＤＢそれぞれの送信元のデータ記憶サーバ３ごとのグループのいずれかに分類する。
【００３１】
選択部１４は、バックアップ管理情報を参照して、グループごとのＤＢ数およびデータ量を算出し、各ＤＢについてデータ記憶サーバ３からの受信時刻を取得する。そして、選択部１４は、例えば、グループごとのＤＢ数、グループごとのデータ量、またはＤＢごとの受信時刻に基づいて、圧縮対象グループを選択する。
【００３２】
選択部１４は、例えば、分類されたグループのうち、ＤＢ数が第１閾値以上であるグループが存在する場合、分類されたグループのうちＤＢ数が最も多いグループを圧縮対象グループとして選択してもよい。
【００３３】
選択部１４は、例えば、分類されたグループのうち、ＤＢの合計データ量が第２閾値以上であるグループが存在する場合、分類されたグループのうちＤＢの合計データ量が最も大きいグループを圧縮対象グループとして選択してもよい。
【００３４】
選択部１４は、例えば、データ記憶サーバ３からの受信時刻が最も古いバックアップ対象ＤＢを含むグループを圧縮対象グループとして選択してもよい。
【００３５】
圧縮部１５は、それぞれのグループに分類された一又は複数のＤＢを、それぞれのグループごとに圧縮する。圧縮部１５は、例えば、選択部１４により選択されたグループ内の一又は複数のＤＢを圧縮して、１グループに対して１つの圧縮データを生成する。
【００３６】
特定部１６は、通信部１１がデータ記憶サーバ３からリストア要求を受信した場合、バックアップ管理情報を参照してリストア対象ＤＢを含むグループを特定する。
【００３７】
解凍部１７は、特定部１６が特定したグループをバックアップサーバ５から取得し、取得したグループを解凍する。解凍部１７は、圧縮データを解凍して得られたＤＢを記憶部１８のリストアデータ領域１８ｂに記憶する。
【００３８】
記憶部１８は、バックアップデータ領域１８ａとリストアデータ領域１８ｂと管理領域１８ｃとを含む。バックアップデータ領域１８ａは、データ記憶サーバ３から受信したバックアップ対象ＤＢ、およびグループ化されたバックアップ対象ＤＢの圧縮後のＤＢを記憶する。リストアデータ領域１８ｂは、バックアップサーバ５から受信した、リストア対象ＤＢを含む圧縮データ、および受信した圧縮データの解凍後のＤＢを記憶する。管理領域は、バックアップ管理情報およびリストア管理情報等の各種管理情報を記憶する。
【００３９】
制御部１９は、中継サーバ４の各種制御を行う。
削除処理部２０は、データ記憶サーバ３に送信したリストア対象のＤＢが、送信してから所定時間経過している場合、そのリストア対象のＤＢを削除する。
【００４０】
中継サーバ４は、複数台のサーバが仮想的に１台のサーバとして動作するものであってもよい。その場合、記憶部１８のデータ容量は可変であってもよい。例えば、バックアップ処理が多い時間帯に記憶部１８のデータ容量が増加し、バックアップ処理が少ない時間帯に記憶部１８のデータ容量が減少してもよい。例えば、管理者が、中継サーバ４として割り当てるサーバの数を増減させることにより、記憶部１８の容量を増減させてもよい。
【００４１】
＜管理情報の一例＞
以下、記憶部１８の管理領域１８ｃに記憶される各種管理情報について説明する。各種管理情報は、管理部１２により更新が行われる。図４は、バックアップ管理情報の一例を示す図である。
【００４２】
バックアップ管理情報は、バックアップＩＤとＤＢＩＤとデータ（ＤＢ）サイズとＤＢの受信時刻とグループＩＤとを含む。
【００４３】
バックアップＩＤは、バックアップ処理ごとにバックアップ対象ＤＢに付与され、バックアップを識別する情報である。例えば、データ記憶サーバ３が送信したＤＢを中継サーバ４が受信した際に、管理部１２がＤＢごとにバックアップＩＤを設定する。すなわち、中継サーバ４が同一のＤＢを複数回受信した場合、それぞれ異なるバックアップＩＤが付与される。
【００４４】
ＤＢＩＤは、ＤＢごとに予め設定されている識別情報であり、データ記憶サーバ３から送信されるＤＢに予め付与されている。データサイズは、ＤＢのデータ量を示す。受信時刻は、中継サーバ４がデータ記憶サーバ３からバックアップ対象のＤＢを受信した時刻である。
【００４５】
グループＩＤは、分類部１３がＤＢをいずれかのグループに分類した際にグループごとに設定されるＩＤである。なお、分類部１３がグループ分類を行うまで、グループＩＤは、空白となる。例えば、図４において、バックアップＩＤが６であるＤＢは、バックアップデータ領域１８ａにすでに記憶されているが、またグループ分類が行われていないことを示している。
【００４６】
図５は、ＤＢとデータ記憶サーバ３との対応関係を示す管理情報の一例を示す図である。図５に示す管理情報では、ＤＢＩＤと、ＤＢを記憶するデータ記憶サーバ３を識別するサーバＩＤとが対応づけられている。
【００４７】
例えば、データ記憶サーバ３から送信されるＤＢにサーバＩＤが付与されている場合、記憶部１８は、図５に示すようなＤＢに対応するデータ記憶サーバ３を示す管理情報を記憶していなくてもよい。その場合、管理部１２は、バックアップ対象ＤＢを受信した際に、受信したＤＢに付与されたサーバＩＤをＤＢＩＤとともにバックアップ管理情報（例えば、図４）に記録してもよい。
【００４８】
図６は、リストア管理情報の一例を示す図である。リストア管理情報は、リストアデータ領域１８ｂに記憶されているデータを管理する情報である。図６に示すように、リストア管理情報は、リストアデータ領域１８ｂに記憶されている圧縮データまたは解凍後のデータのグループＩＤと、最終使用日時とが対応付けられている。管理部１２は、リストア対象のＤＢをデータ記憶サーバ３に送信した際に、送信日時を最終使用日時として記録する。なお、リストア管理情報は、リストアデータ領域１８ｂに記憶されているＤＢＩＤと最終使用日時とが対応付けられていてもよい。
【００４９】
＜実施形態の処理の流れの一例＞
実施形態における中継サーバ４の処理の流れを説明する。図７は、中継サーバ４の受信処理の流れの一例を示すフローチャートである。
【００５０】
管理部１２は、データ記憶サーバ３からバックアップ対象ＤＢを受信した場合（ステップＳ１０１でＹＥＳ）、バックアップ管理情報を更新する（ステップＳ１０２）。管理部１２が、データ記憶サーバ３からバックアップ対象ＤＢを受信しない場合（ステップＳ１０１でＮＯ）、処理は、次のステップに進まない。
【００５１】
管理部１２は、例えば、バックアップＩＤを設定し、設定したバックアップＩＤと、ＤＢに付与されているＤＢＩＤと、ＤＢのデータサイズと、受信時刻とを対応づけて管理情報に記録する。管理部１２は、通信部１１を介して、データ記憶サーバ３にバックアップＩＤを通知してもよい。
【００５２】
制御部１９は、受信したバックアップ対象ＤＢを記憶部１８のバックアップデータ領域１８ａに記憶する（ステップＳ１０３）。
【００５３】
制御部１９は、バックアップ停止指示を受信した場合（ステップＳ１０４でＹＥＳ）、処理を終了する。制御部１９は、バックアップ停止指示を受信していない場合（ステップＳ１０４でＮＯ）、ステップＳ１０１の処理に戻る。例えば、バックアップサーバ５に異常が発生した場合などに、図示しない管理者端末から中継サーバ４にバックアップ停止指示が送信される。
【００５４】
図８および図９は、中継サーバ４のバックアップ処理の流れの一例を示すフローチャートである。中継サーバ４は、例えば、図８および図９に示すバックアップ処理と、図７に示す受信処理とを並列で実行する。中継サーバ４は、図８および図９に示すバックアップ処理と、図７に示す受信処理とを並列ではなく順に実行してもよい。
【００５５】
分類部１３は、１以上の分類前のバックアップ対象ＤＢが記憶部１８のバックアップデータ領域１８ａに存在するか判定する（ステップＳ２０１）。ステップＳ２０１でＮＯの場合、処理は、次のステップに進まない。
【００５６】
ステップＳ２０１でＹＥＳの場合、分類部１３は、データ記憶サーバ３から受信したバックアップ対象の複数のＤＢそれぞれを、該複数のＤＢそれぞれの送信元のデータ記憶サーバ３ごとのグループのいずれかに分類する（ステップＳ２０２）。分類部１３は、例えば、図５に示す管理情報を参照して、バックアップ対象のＤＢの送信元のデータ記憶サーバ３を特定し、該ＤＢをデータ記憶サーバ３ごとのグループのいずれかに分類する。
【００５７】
選択部１４は、バックアップ管理情報の各情報に基づいて、グループごとのＤＢ数および合計データ量を算出し、各ＤＢのデータ記憶サーバ３からの受信時刻を取得する（ステップＳ２０３）。
【００５８】
選択部１４は、例えば、含まれるＤＢ数が第１閾値以上であるグループが存在するか判定する（ステップＳ２０４）。ステップＳ２０４でＹＥＳの場合、選択部１４は、分類されたグループのうち含まれるＤＢ数が最も多いグループを圧縮対象グループに選択する（ステップＳ２０５）。
【００５９】
ユーザごとにＤＢが利用される可能性が高いため、ＤＢ数が多い場合、使用するユーザが多い可能性が高い。また、本実施形態のバックアップサーバ５は、ＲＡＩＤ等を用いたことにより中継サーバ４より安全性が高い。従って、中継サーバ４は、ＤＢ数が多いグループを優先的に圧縮し、バックアップサーバ５に送信することにより、中継サーバ４の異常等によるユーザへの影響を抑制することができる。なお、中継サーバ４は、中継サーバ４がバックアップサーバ５と同様の安全性を有している場合、ステップＳ２０４とステップＳ２０５の処理を省略してもよい。
【００６０】
ステップＳ２０４でＮＯの場合、選択部１４は、例えば、合計データ量が第２閾値以上であるグループが存在するか判定する（ステップＳ２０６）。ステップＳ２０６でＹＥＳの場合、選択部１４は、分類されたグループのうち含まれるＤＢの合計データ量が最も大きいグループを圧縮対象グループに選択する（ステップＳ２０７）。
【００６１】
バックアップデータ領域１８ａ内のデータ量が増加すると、新たにデータ記憶サーバ３から送信されるバックアップ対象のＤＢを記憶するための領域が不足するおそれがある。そのため、中継サーバ４は、含まれるＤＢの合計データ量が大きいグループを優先的に圧縮し、バックアップサーバ５に送信することにより、記憶部１８が空き容量不足となることを抑制することができる。
【００６２】
なお、ステップＳ２０３の後にステップＳ２０６に移行し、ステップＳ２０６でＮＯとなった場合にステップＳ２０４に移行してもよい。すなわち、選択部１４は、ＤＢ数が第１閾値以上であるグループより、合計データ量が第２閾値以上であるグループを優先的に圧縮対象グループに選択してもよい。中継サーバ４は、例えば、記憶部１８の記憶容量が所定値より少ない場合、選択部１４が、合計データ量が第２閾値以上であるグループを優先的に圧縮対象グループに選択することにより、記憶部１８が空き容量不足となることを抑制することができる。
【００６３】
ステップＳ２０６でＮＯの場合、選択部１４は、バックアップ管理情報を参照して、受信時刻が最も古いＤＢを含むグループを圧縮対象グループに選択する（ステップＳ２０８）。すなわち、ステップＳ２０５およびＳ２０６でＮＯとなった場合でも、ステップＳ２０８においていずれかのグループが圧縮対象グループに選択され、後述する処理で圧縮データが送信される。従って、中継サーバ４は、中継サーバ４とバックアップサーバ５との間の通信帯域を有効利用することができる。第１のネットワークセグメント１と第２のネットワークセグメント２との間の通信帯域の方が狭いため、中継サーバ４とバックアップサーバ５との間の通信帯域を有効利用することにより、バックアップの遅延を抑制することができる。
【００６４】
次に、図８の「Ａ」以降の処理について、図９を参照して説明する。管理部１２は、圧縮対象に選択されたグループにグループＩＤを設定し、バックアップ管理情報に記録する（ステップＳ２０９）。
【００６５】
圧縮部１５は、例えば、選択部１４により選択されたグループ内の一又は複数のＤＢをそれぞれのグループごとに圧縮する（ステップＳ２１０）。圧縮部１５は、選択部１４により選択されたグループ内の一又は複数のＤＢを圧縮することにより、１グループに対して１つの圧縮データを生成する。
【００６６】
通信部１１は、圧縮データをバックアップサーバ５に送信する（ステップＳ２１１）。そして、制御部１９は、送信された圧縮データをバックアップデータ領域１８ａから削除する（ステップＳ２１２）。
【００６７】
中継サーバ４は、バックアップ停止指示を受信した場合（ステップＳ２１３でＹＥＳ）、処理を終了する。例えば、バックアップサーバ５に異常が発生した場合などに、管理者端末から中継サーバ４にバックアップ停止指示が送信される。
【００６８】
中継サーバ４は、バックアップ停止指示を受信していない場合（ステップＳ２１３でＮＯ）、処理は、「Ｂ」から、図８のステップＳ２０１に戻る。
【００６９】
以上のステップＳ２０１〜Ｓ２１１の処理により、いずれかのグループに複数のＤＢが分類され、分類された複数のＤＢのうち、いずれかのＤＢがバックアップサーバ５に送信される。そして、送信開始後に、ステップＳ２１３でＮＯとなった場合、再度ステップＳ２０１〜Ｓ２１１の処理が行われる。その結果、圧縮部１５は、分類された複数のデータ群のうち、すでに送信されたＤＢを除いた一又は複数のＤＢを圧縮する。そして、通信部１１は、圧縮した一又は複数のＤＢを送信する。
【００７０】
すなわち、中継サーバ４は、１つのグループの送信処理が終了した後に次のグループの送信処理を実行することにより、バックアップサーバ５へのデータ送信処理をシリアライズする。従って、中継サーバ４は、通信処理の負荷およびバックアップサーバ５の処理負荷を平滑化することができる。
【００７１】
データ記憶サーバ３が、多数のユーザに利用され、バックアップ時刻がユーザにより設定される場合、データ記憶サーバ３から中継サーバ４へのデータ送信時間を重複しないようにすることは困難である。ただし、上述のように第１のネットワークセグメント１内の通信帯域は、第１のネットワークセグメント１と第２のネットワークセグメント２との間の通信帯域より広い。従って、複数のデータ記憶サーバ３から中継サーバ４へのデータ送信時間が重複したとしても、中継サーバ４がバックアップサーバ５へのデータ送信時間を重複しないようにすることで、バックアップ処理の遅延を抑制することができる。
【００７２】
また、データ記憶サーバ３ではなく中継サーバ４がバックアップ対象のＤＢの圧縮を行うことにより、データ記憶サーバ３のCentral Processing Unit（ＣＰＵ）の負荷上昇を防ぎ、データ記憶サーバ３を利用するユーザの利便性を向上することができる。
【００７３】
図１０は、中継サーバ４のリストア処理の流れの一例を示すフローチャートである。制御部１９は、データ記憶サーバ３からリストア要求を受信したか判定する（ステップＳ３０１）。リストア要求は、例えば、リストア対象ＤＢのＤＢＩＤ、またはバックアップＩＤを含む。また、リストア要求は、複数のリストア対象ＤＢのＤＢＩＤまたはバックアップＩＤを含んでいてもよい。中継サーバ４がリストア要求を受信しない場合（ステップＳ３０１でＮＯ）、次の処理に進まない。
【００７４】
ステップＳ３０１でＹＥＳの場合、制御部１９は、リストア対象データがリストアデータ領域１８ｂに記憶されているか判定する（ステップＳ３０２）。ステップＳ３０２でＹＥＳの場合、処理は、ステップＳ３０８に移行する。
【００７５】
なお、バックアップデータ領域１８ａに圧縮前のリストア対象データが記憶されている場合、制御部１９は、処理を、ステップＳ３０２からステップＳ３０８に移行してもよい。また、バックアップデータ領域１８ａに圧縮後のリストア対象データが記憶されている場合、制御部１９は、処理を、ステップＳ３０２からステップＳ３０７に移行してもよい。
【００７６】
ステップＳ３０２でＮＯの場合、制御部１９は、記憶部１８のリストアデータ領域１８ｂに十分な空きがあるか判定する（ステップＳ３０３）。例えば、制御部１９は、バックアップ管理情報（例えば、図４）を参照して、リストア要求に含まれるＤＢＩＤに対応するリストア対象ＤＢのデータサイズを取得する。そして、制御部１９は、リストア対象ＤＢのデータサイズより、リストアデータ領域１８ｂの空き容量が大きい場合、ステップＳ３０３でリストアデータ領域１８ｂに空きがあると判定する。
【００７７】
ステップＳ３０３でＮＯの場合、制御部１９は、リストア管理情報（例えば、図６）を参照して、最終使用日時が最も古いグループ内のＤＢを削除する（ステップＳ３０４）。また、管理部１２は、削除されたグループに関する情報をリストア管理情報から削除する。
【００７８】
なお、ステップＳ３０４において、制御部１９は、最終使用日時が最も古いＤＢを削除してもよい。すなわち、制御部１９は、グループごとではなくＤＢごとに削除を行ってもよい。
【００７９】
例えば、データ記憶サーバ３に異常が発生した場合、該データ記憶サーバ３に記憶されていたＤＢに対するリストア要求が短い期間内に複数回送信される可能性が高い。しかし、最終使用日時が古いＤＢは、再度リストア対象となる可能性が低いため、制御部１９は、ステップＳ３０４において、最終使用日時が古いグループ内のＤＢを優先的に削除する。
【００８０】
また、制御部１９は、バックアップサーバ５から取得した日時が最も古いグループ内のＤＢを優先的に削除してもよい。すなわち、制御部１９は、ステップＳ３０４の処理では、圧縮データの削除方法として、Least Recently Used（ＬＲＵ）を適用しているが、First In, First Out（ＦＩＦＯ）を適用してもよい。
【００８１】
ステップＳ３０３でＹＥＳの場合、特定部１６は、バックアップ管理情報を参照してリストア対象ＤＢを含むグループを特定する（ステップＳ３０５）。特定部１６は、バックアップ管理情報を参照して、リストア要求に含まれるＤＢＩＤに対応づけられているグループ（グループＩＤ）を特定する。
【００８２】
解凍部１７は、特定部１６が特定したグループに対応する圧縮データをバックアップサーバ５から取得する（ステップＳ３０６）。解凍部１７は、例えば、特定部１６が特定したグループＩＤを含む圧縮データ取得要求を、通信部１１を介してバックアップサーバ５に送信する。そして、通信部１１は、バックアップサーバ５から、特定部１６が特定したグループに対応する圧縮データを受信する。
【００８３】
解凍部１７は、取得した圧縮データを解凍する（ステップＳ３０７）。そして、解凍部１７は、圧縮データを解凍して得られたリストア対象のＤＢを記憶部１８のリストアデータ領域１８ｂに記憶する。
【００８４】
管理部１２は、リストア管理情報を更新する（ステップＳ３０８）。管理部１２は、例えば、リストア管理情報に対して、解凍された圧縮データに対応するグループのグループＩＤと、最終使用日時を記録する。
【００８５】
通信部１１は、解凍されたリストア対象のＤＢを、リストア要求の送信元であるデータ記憶サーバ３に送信する（ステップＳ３０９）。
【００８６】
なお、上記の処理では、中継サーバ４は、データ記憶サーバ３からリストア要求を受信し、リストア要求の送信元であるデータ記憶サーバ３にリストア対象ＤＢを送信するが、そのような例には限られない。例えば、データ記憶サーバ３に障害が発生している場合、中継サーバ４は、データ記憶サーバ３を管理する管理端末等からリストア要求を受信する可能性がある。その場合、中継サーバ４は、リストア要求で指定された、データ記憶サーバ３の代替サーバにリストア対象ＤＢを送信してもよい。
【００８７】
また、データ記憶サーバ３ではなく中継サーバ４がリストア対象のＤＢの解凍を行うことにより、データ記憶サーバ３のＣＰＵの負荷上昇を防ぎ、データ記憶サーバ３を利用するユーザの利便性を向上することができる。
【００８８】
以上のように、中継サーバ４は、バックアップ処理において、データ記憶サーバ３ごとのグループにバックアップ対象ＤＢを分類して圧縮し、圧縮データをバックアップサーバ５に送信する。また、データ記憶サーバ３に障害が発生する場合、データ記憶サーバ３ごとに障害が発生する可能性が高いため、データ記憶サーバ３ごとにリストア要求が送られる可能性が高い。従って、中継サーバ４は、リストア処理の際、圧縮されたＤＢを解凍する際に、解凍対象でない圧縮データを解凍することを抑制し、解凍処理量を低減することができる。また、中継サーバ４は、リストア処理におけるバックアップサーバ５から中継サーバ４へのデータ通信量を低減することができる。
【００８９】
図１１は、リストア領域内のＤＢの削除処理の流れの一例を示すフローチャートである。図１１に示す処理は、リストア領域内のリストア対象のＤＢごとまたはグループごとに実行される。
【００９０】
削除処理部２０は、データ記憶サーバ３に送信したリストア対象のＤＢが、送信してから所定時間経過しているか判定する（ステップＳ４０１）。所定時間経過していない場合（ステップＳ４０１でＮＯ）、処理は次のステップに進まない。
【００９１】
ステップＳ４０１でＹＥＳの場合、削除処理部２０は、リストア対象のＤＢを削除する（ステップＳ４０２）。
【００９２】
なお、図１１の処理をグループごとに行う場合、削除処理部２０は、ステップＳ４０１において、グループごとに送信から所定時間が経過しているか判定し、ステップＳ４０２において、該当のグループ内の全てのＤＢを削除してもよい。
【００９３】
例えば、データ記憶サーバ３に障害が発生した場合、そのデータ記憶サーバ３内の同じＤＢを対象とした複数のリストア要求が短期間に送信される場合がある。その場合、中継サーバ４は、リストア対象のＤＢを送信後すぐに削除せず、所定時間保持していれば、再度、バックアップサーバ５から圧縮データを受信して解凍する処理を実行しなくてもよいため、リストア処理を効率化することができる。
【００９４】
＜実施形態の中継サーバ４の適用例＞
図１２は、実施形態の中継サーバ４の適用例を示す図である。図１２において、図１と同様の構成については、説明を省略する。データ記憶サーバ３ａおよびデータ記憶サーバ３ｂは、図１におけるデータ記憶サーバ３に対応する。データ記憶サーバ３ａは、ＤＢ＃１およびＤＢ＃２を記憶する。データ記憶サーバ３ｂは、ＤＢ＃３およびＤＢ＃４を記憶する。
【００９５】
中継サーバ４は、バックアップ処理において、ＤＢ＃１、ＤＢ＃２、ＤＢ＃３およびＤＢ＃４を受信し、データ記憶サーバ３ごとのグループにＤＢを分類し、グループごとに圧縮してバックアップサーバ５に送信する。本例では、中継サーバ４がバックアップ処理を行った結果、ＧＲＯＵＰ１にＤＢ＃１およびＤＢ＃２が含まれ、ＧＲＯＵＰ２にＤＢ＃３およびＤＢ＃４が含まれているとする。
【００９６】
バックアップ処理の後、データ記憶サーバ３ａに障害が発生し、中継サーバ４がデータ記憶サーバ３ａからＤＢ＃１およびＤＢ＃２を指定するリストア要求を受信したとする。中継サーバ４は、ＤＢ＃１およびＤＢ＃２をリストアするため、バックアップサーバ５からＧＲＯＵＰ１に対応する圧縮データを取得する。
【００９７】
本例において、ＤＢ＃３およびＤＢ＃４は、リストア対象のＤＢではないため、中継サーバ４は、ＤＢ＃３およびＤＢ＃４を含むＧＲＯＵＰ２の取得および解凍を行わない。すなわち、本例の中継サーバ４は、リストア対象（解凍対象）ではないＤＢの転送および解凍を行わないため、解凍処理量と通信量を低減することができる。
【００９８】
＜中継サーバのハードウェア構成の一例＞
次に、図１３の例を参照して、中継サーバ４のハードウェア構成の一例を説明する。図１３の例に示すように、バス１００に対して、プロセッサ１１１とRandom Access Memory(RAM)１１２とRead Only Memory(ROM)１１３とが接続される。また、該バス１００に対して、補助記憶装置１１４と媒体接続部１１５と通信インタフェース１１６とが接続される。
【００９９】
プロセッサ１１１はＲＡＭ１１２に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態における処理を行う制御プログラムが適用されてもよい。
【０１００】
ＲＯＭ１１３はＲＡＭ１１２に展開されるプログラムを記憶する不揮発性の記憶装置である。補助記憶装置１１４は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等を補助記憶装置１１４に適用してもよい。補助記憶装置１１４に実施形態の処理を行う制御プログラムが記録されていてもよい。媒体接続部１１５は、可搬型記録媒体１１８と接続可能に設けられている。
【０１０１】
可搬型記録媒体１１８には、可搬型のメモリや光学式ディスク（例えば、Compact Disc(CD)やDigital Versatile Disc(DVD))、半導体メモリ等が適用されてもよい。可搬型記録媒体１１８に実施形態の処理を行う制御プログラムが記録されていてもよい。
【０１０２】
図３に示す記憶部１８は、ＲＡＭ１１２や補助記憶装置１１４等により実現されてもよい。図３に示す通信部１１は、通信インタフェース１１６により実現されてもよい。図３に示す管理部１２、分類部１３、選択部１４、圧縮部１５、特定部１６、解凍部１７、および制御部１９は、与えられた制御プログラムをプロセッサ１１１が実行することにより実現されてもよい。
【０１０３】
ＲＡＭ１１２、ＲＯＭ１１３、補助記憶装置１１４および可搬型記録媒体１１８は、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。
【０１０４】
＜その他＞
本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【０１０５】
１    第１のネットワークセグメント
２    第２のネットワークセグメント
３    データ記憶サーバ
４    中継サーバ
５    バックアップサーバ
１１    通信部
１２    管理部
１３    分類部
１４    選択部
１５    圧縮部
１６    特定部
１７    解凍部
１８    記憶部
１９    制御部
２０    削除処理部
１１１    プロセッサ
１１２    ＲＡＭ
１１３    ＲＯＭ
【図１】
2018185562.tif 000003
【図２】
2018185562.tif 000004
【図３】
2018185562.tif 000005
【図４】
2018185562.tif 000006
【図５】
2018185562.tif 000007
【図６】
2018185562.tif 000008
【図７】
2018185562.tif 000009
【図８】
2018185562.tif 000010
【図９】
2018185562.tif 000011
【図１０】
2018185562.tif 000012
【図１１】
2018185562.tif 000013
【図１２】
2018185562.tif 000014
【図１３】
2018185562.tif 000015