JP7844542B2 - バックアップスケジュール作成装置及びバックアップスケジュール作成方法 - Google Patents

バックアップスケジュール作成装置及びバックアップスケジュール作成方法

Info

Publication number
JP7844542B2
JP7844542B2 JP2024086179A JP2024086179A JP7844542B2 JP 7844542 B2 JP7844542 B2 JP 7844542B2 JP 2024086179 A JP2024086179 A JP 2024086179A JP 2024086179 A JP2024086179 A JP 2024086179A JP 7844542 B2 JP7844542 B2 JP 7844542B2
Authority
JP
Japan
Prior art keywords
backup
schedule
data
server
schedule creation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2024086179A
Other languages
English (en)
Other versions
JP2025179438A (ja
Inventor
涼馬 松山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2024086179A priority Critical patent/JP7844542B2/ja
Priority to US19/051,593 priority patent/US20250370881A1/en
Publication of JP2025179438A publication Critical patent/JP2025179438A/ja
Application granted granted Critical
Publication of JP7844542B2 publication Critical patent/JP7844542B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operations
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、バックアップスケジュール作成装置及びバックアップスケジュール作成方法に関する。
近年、バックアップの必要があるデータを有するシステムにおいて、データ転送サーバを備えるものが増えている。データ転送サーバは、バックアップ対象のデータ(以下「バックアップデータ」とも称する)を、バックアップストレージに転送するサーバである。システム内にバックアップ処理の対象のマシンが複数存在する場合であっても、該システム内に複数のデータ転送サーバを配置することによって、バックアップ処理を並列して実行させることが可能となる。このようなシステムにおいては、限られたバックアップ許容時間(以下「バックアップウィンドウ」とも称する)内にすべてのバックアップ処理を完了させることが求められる。
例えば、特許文献1に記載のバックアップ管理プログラムは、各データ転送装置に前回割り当てたデータのうち、バックアップストレージに送信された第1データ量と、重複排除機能によりバックアップストレージに送信されなかった第2データ量と、を各データ転送装置から取得する。また、バックアップ管理プログラムは、取得した第1データ量に基づいて、複数のデータ転送装置によりバックアップストレージに送信された前回の送信データ量を算出する。また、バックアップ管理プログラムは、取得した第1データ量と第2データ量とバックアップ対象データのサイズとに基づいて、バックアップストレージに送信する次回の送信データ量を算出する。さらに、バックアップ管理プログラムは、算出した前回の送信データ量と次回の送信データ量とを比較した結果に基づいて、複数のデータ転送装置の数を増減させる。特許文献1に記載の技術によれば、想定時間内にバックアップが完了するように、バックアップに使用するリソースを制御できるようになる。
また、例えば、特許文献2に記載のジョブ・スケジューラは、アーカイブ管理システムから、タスク情報、レプリカ配置データ、インフラストラクチャ・トポロジ・データ、およびリソース・パフォーマンス・データの入力を受領する。また、ジョブ・スケジューラは、受領された入力に従って、様々なレベルの頂点においてアーカイブ管理システムのデータ・コンテンツ、ソフトウェア・プログラム、物理的デバイス、および通信容量を表すフロー・ネットワークをモデル化する。モデル化されたフロー・ネットワーク内の最適パスが、初期スケジュールとして計算され、アーカイブ管理システムは、初期スケジュールに従ってタスクを実行する。スケジュールされたタスクの動作が監視され、ジョブ・スケジューラは、監視された動作のフィードバックおよび所定のヒューリスティクスに基づき、新たなスケジュールを作り出す。特許文献2に記載の技術によれば、通信容量とネットワークトポロジの情報から、最適な(最も速い)ネットワークパスをスケジュールとして導出し、管理システムに適用することができる。
特開2023-009583号公報 特表2013-513150号公報
ところで、近年、環境スケールのしやすさや、データの増えやすさ等によって、バックアップデータが急激に増えることがある。バックアップデータが急激に増えた場合、予め設定されたデータ転送サーバとバックアップ対象マシンとの組み合わせにおいて、バックアップ処理がバックアップウィンドウ内で全バックアップ処理が完了しない状況が起こりうる。バックアップウィンドウ内で全バックアップ処理がしない場合、RPO(Recovery Point Objective)を満たせなくなってしまう。
本発明は、上記の状況を考慮してなされたものであり、本発明の目的は、バックアップデータの容量の変化を予測しにくいシステムにおいても、適切なバックアップスケジュールを作成できるようにすることにある。
本発明の一態様に係るバックアップスケジュール作成装置は、データ保存サーバにバックアップされるバックアップデータを有する複数のバックアップ対象サーバと、バックアップ対象サーバからバックアップデータを取得してデータ保存サーバに転送する複数のデータ転送サーバとが互いにネットワークで接続されたバックアップスケジュール管理システムにおけるバックアップ処理のバックアップスケジュールを作成するバックアップスケジュール作成装置である。本発明の一態様に係るバックアップスケジュール作成装置は、バックアップデータ伝送時の推定のバックアップスループットと、バックアップ対象サーバにおけるバックアップデータの使用容量と、に基づいて、データ転送サーバとバックアップ対象サーバとの各組み合わせにおけるバックアップ予測時間を算出するバックアップ予測時間算出部と、バックアップ予測時間の情報と、バックアップ処理を行う場合におけるネットワークの使用度合いの情報と、に基づいて、バックアップ対象サーバのバックアップデータのバックアップ処理をデータ転送サーバに順に割り当て、割り当ての結果に基づいてバックアップスケジュールを作成するスケジュール作成部と、を備える。
本発明の少なくとも一態様によれば、バックアップデータの容量の変化を予測しにくいシステムにおいても、適切なバックアップスケジュールを作成できるようになる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の一実施形態に係るバックアップスケジュール管理システムの概略構成例を示すブロック図である。 本発明の一実施形態に係るバックアップスケジュール管理システムを構成するサーバ、バックアップスケジュール管理装置の各ハードウェア構成例を示すブロック図である。 本発明の一実施形態に係るバックアップジョブテーブルの構成例を示す図である。 本発明の一実施形態に係るVM構成情報テーブルの構成例を示す図である。 本発明の一実施形態に係るバックアップデータ経路テーブルの構成例を示す図である。 本発明の一実施形態に係るバックアップ予測時間テーブルの構成例を示す図である。 本発明の一実施形態に係るバックアップ予測時間テーブルに示されるバックアップ対象サーバとデータ転送サーバとの各組み合わせにおける、仮バックアップ予測時間の長さを示すグラフである。 本発明の一実施形態に係る暫定バックアップスケジュールテーブルの構成例を示す図である。 本発明の一実施形態に係るスケジュール作成部による割り当て処理が行われた後におけるバックアップ対象サーバとデータ転送サーバとの対応例を示す図である。 本発明の一実施形態に係る修正後の暫定バックアップスケジュールテーブルである候補バックアップスケジュールテーブルの構成例を示す図である。 本発明の一実施形態に係るスケジュール作成部による暫定バックアップスケジュールテーブルの修正処理の概要を示す図である。 本発明の一実施形態に係るスケジュール作成部による暫定バックアップスケジュールテーブルの修正処理の概要を示す図である。 本発明の一実施形態に係るスケジュール作成部による暫定バックアップスケジュールテーブルの修正処理の概要を示す図である。 本発明の一実施形態に係るバックアップスケジュール管理システムによるバックアップスケジュール管理処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るバックアップ予測時間算出部によるバックアップ予測時間テーブル作成処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るスケジュール作成部による暫定バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るスケジュール作成部による暫定バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るスケジュール作成部による候補バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るスケジュール作成部による候補バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。 本発明の一実施形態に係るスケジュール作成部によるバックアップスケジュール決定処理の手順の例を示すフローチャートである。 本発明の一実施形態に係る候補バックアップスケジュール選定画面の構成例を示す図である。 本発明の一実施形態に係るスケジュール作成部によるバックアップ予測時間テーブル更新処理の手順の例を示すフローチャートである。
以下、本発明の実施形態を、図を用いて説明する。各図において、同一の構成には同一の符号を付す。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。本発明は、他の種々の形態でも実施する事が可能である。特に限定しない限り、各構成要素は単数でも複数でも構わない。
<バックアップスケジュール管理システムの構成>
まず、図1を参照して、本発明の一実施形態に係るバックアップスケジュール管理システム100の構成について説明する。図1は、バックアップスケジュール管理システム100の概略構成例を示すブロック図である。
図1に示すように、バックアップスケジュール管理システム100は、サーバ(ホスト)1と、バックアップスケジュール管理装置2と、を備える。サーバ1は、サーバ1a~サーバ1dで構成される。サーバ1a~サーバ1dには、それぞれ、サーバ上にVM(Virtual Machine:仮想マシン)を作成して実行するためのハイパーバイザ11a~ハイパーバイザ11dがインストールされている。
サーバ1aにはVMA12a及びVMJ13jが構成され、サーバ1bにはVMK12k及びVMB12bが構成される。サーバ1cにはVMC12c~VME12eが構成され、サーバ1dにはVML13l、VMN13n及びVMN14nが構成される。
VMA12a~VME12eは、バックアップデータを有するバックアップ対象サーバ12である。図中で一点鎖線の枠で囲われたVMJ13j~VMM13mは、バックアップ対象サーバ12からバックアップデータを収集してデータ保存サーバ14に保存するデータ転送サーバ13である。図中において二点鎖線の枠で囲われたVMN14nは、データ転送サーバ13によるバックアップ処理に基づいて収集されたVMA12a~VME12eのバックアップデータが格納されるデータ保存サーバ14である。
バックアップスケジュール管理装置2(バックアップスケジュール作成装置の一例)は、バックアップ処理のスケジュールを作成する。そして、バックアップスケジュール管理装置2は、作成したバックアップスケジュールと、バックアップスケジュールに基づくバックアップ処理の可否の判定結果とを、データ転送サーバ13のVMJ13j~VMM13mに通知する。
なお、バックアップスケジュール管理システム100におけるサーバ1の数や、サーバ1に配置されるVMの数、バックアップ対象サーバ12とデータ転送サーバ13とデータ保存サーバ14との比率は、図1に示す例に限定されない。また、バックアップ対象サーバ12、データ転送サーバ13、データ保存サーバ14は、クラウド環境等に設けられてもよい。
バックアップスケジュール管理装置2は、バックアップ構成情報取得部21と、VM構成情報取得部22と、スケジュール管理部23と、結果出力部24と、データベースDbと、を備える。
バックアップ構成情報取得部21は、データ保存サーバ14からバックアップ構成情報を取得してバックアップジョブテーブルT1(図3参照)を作成する。バックアップ構成情報は、バックアップ処理のジョブであるバックアップジョブを構成する各要素に関する情報である。バックアップジョブテーブルT1の構成例については、後述の図3を参照して詳述する。
VM構成情報取得部22は、バックアップスケジュール管理システム100を構成する各サーバ1の構成情報を取得するとともに、各サーバ1のハイパーバイザ11から各VMの構成情報を取得する。そして、VM構成情報取得部22は、取得した構成情報に基づいてVM構成情報テーブルT2(図4参照)を作成する。また、VM構成情報取得部22は、取得した構成情報に基づいて、バックアップデータ経路テーブルT3(図5参照)を作成する。VM構成情報テーブルT2の構成例については後述の図4を参照して詳述し、バックアップデータ経路テーブルT3の構成例については後述の図5を参照して詳述する。
スケジュール管理部23は、バックアップ予測時間算出部231と、スケジュール作成部232と、を備える。
バックアップ予測時間算出部231は、バックアップジョブテーブルT1、VM構成情報テーブルT2及びバックアップデータ経路テーブルT3に基づいて、バックアップ予測時間テーブルT11(図6参照)を作成する。バックアップ予測時間テーブルT11は、バックアップ対象サーバ12とデータ転送サーバ13との組み合わせごとにおける仮のバックアップスループット、及び、バックアップ処理に要するバックアップ予測時間とが格納されるテーブルである。バックアップ予測時間テーブルT11については、後述の図6を参照して詳述する。
スケジュール作成部232は、バックアップ予測時間テーブルT11に記載の情報に基づいて、暫定バックアップスケジュールテーブルT12(図7参照)を作成する。暫定バックアップスケジュールテーブルT12は、バックアップ予測時間が大きいバックアップ対象サーバから順に、相性のよいデータ転送サーバを割り当てた結果を示すテーブルである。暫定バックアップスケジュールテーブルT12については、後述の図7を参照して詳述する。
また、スケジュール作成部232は、バックアップ処理実行中におけるデータ経路使用状況の分散度合いや、各データ経路におけるバックアップスループットのネットワーク帯域との関係などの情報に基づいて、暫定バックアップスケジュールテーブルT12を修正する。そして、スケジュール作成部232は、修正後の暫定バックアップスケジュールテーブルT12を、候補バックアップスケジュールテーブルT13とする。本実施形態では、スケジュール作成部232は、得られる効果が異なる複数の候補バックアップスケジュールテーブルT13を生成する。スケジュール作成部232は、例えば、バックアップ完了時間が最も早くなるバックアップスケジュールと、バックアップ処理時におけるネットワークの分散度合いが最も大きくなるバックアップスケジュールと、のそれぞれに対応する候補バックアップスケジュールテーブルT13を作成することができる。
さらに、スケジュール作成部232は、予め定められた判断基準に基づいて選択された、又は、ユーザによって選択された候補バックアップスケジュールテーブルT13を用いて、バックアップスケジュールを作成する。また、スケジュール作成部232は、作成したバックアップスケジュールに基づく実際のバックアップ処理の完了後に、処理結果を用いてバックアップ予測時間テーブルT11(図6参照)を更新する。
結果出力部24は、候補バックアップスケジュールテーブルT13、最終決定されたバックアップスケジュール等を、表示部230(図2参照)の画面等を介してユーザに提示する。
データベースDbには、バックアップジョブテーブルT1、VM構成情報テーブルT2、バックアップデータ経路テーブルT3、バックアップ予測時間テーブルT11、暫定バックアップスケジュールテーブルT12、候補バックアップスケジュールテーブルT13等が格納される。
<計算機のハードウェア構成例>
次に、本実施形態に係るバックアップスケジュール管理システム100の機能を実現するための装置のハードウェア構成について、図2を参照して説明する。図2は、バックアップスケジュール管理システム100を構成するサーバ1、バックアップスケジュール管理装置2の各ハードウェア構成例を示すブロック図である。図2に示す計算機200は、いわゆるコンピュータとして用いられるハードウェアである。
計算機200は、バスBにそれぞれ接続された制御部210と、不揮発性ストレージ220と、表示部230と、操作入力部240と、通信I/F(Interface)250と、を備える。
制御部210は、CPU(Central Processing Unit)211と、ROM(Read Only Memory)212と、RAM(Random Access Memory)213と、を備える。
CPU211は、本実施形態に係る各機能を実現するソフトウェアのプログラムコードをROM212から読み出してRAM213に展開して実行する。RAM213には、演算処理の途中に発生した変数やパラメータ等が一時的に書き込まれる。
なお、制御部210は、CPU211の代わりに、MPU(Micro-Processing Unit)等の処理装置を備えてもよい。もしくは、制御部210において、CPUとMPUとが併用されてもよい。
不揮発性ストレージ220としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フレキシブルディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、不揮発性のメモリカード等を用いることができる。この不揮発性ストレージ220には、OS、各種のパラメータの他に、計算機200を機能させるためのプログラム等が記録される。なお、プログラムは、ROM212に格納されてもよい
表示部230は、例えば、LCD(Liquid Crystal Display)等で構成されるモニタであり、計算機200で行われる処理の結果等を表示する。
操作入力部240は、例えば、キーボード、マウス、タッチセンサ等によって構成され、ユーザによる操作に応じた操作信号を生成してCPU211に供給する。
なお、表示部230と操作入力部240とは、タッチパネルとして一体に構成されてもよい。
プログラムは、コンピュータが読取り可能なプログラムコードの形態で格納され、CPU211は、当該プログラムコードに従った動作を逐次実行する。つまり、ROM212又は不揮発性ストレージ220は、コンピュータによって実行されるプログラムを格納した、コンピュータ読取可能な非一過性の記録媒体の一例として用いられる。
通信I/F250には、例えば、NIC(Network Interface Card)等が用いられ、ネットワーク又は通信線を介して外部装置との間で各種のデータを送受信することが可能である。
<バックアップジョブテーブルT1の構成>
次に、図3を参照して、バックアップジョブテーブルT1の構成について説明する。図3は、バックアップジョブテーブルT1の構成例を示す図である。
図3に示すように、バックアップジョブテーブルT1は、「ジョブ名」、「VM名」、「VMロール」、「プラットフォーム」、「バックアップジョブ開始時間」、「バックアップウィンドウ」、「次回バックアップ形式」及び「標準バックアップスループット値(MB/s)」の各項目を有する。
「ジョブ名」の項目には、バックアップジョブのジョブ名の情報が格納される。「VM名」の項目には、VMに付与された名称(VM名)の情報が格納される。「VMロール」の項目には、VMに割り当てられた役割(VMロール)の情報が格納される。VMロールには、例えば、図に示す「バックアップ対象」、「データ転送」、「データ保存」のいずれか格納される。
「プラットフォーム」の項目には、仮想化を実現するプラットフォームの名称の情報が格納される。「バックアップジョブ開始時間」の項目には、バックアップジョブの開始時間の情報が格納される。「バックアップウィンドウ」の項目には、バックアップウィンドウの開始時間及び終了時間の情報が格納される。
「次回バックアップ形式」の項目には、バックアップ対象サーバ12において行われる次回のバックアップ処理のバックアップ形式の情報が格納される。図3に示す例では、「次回バックアップ形式」の項目には「増分」、「フル」、「null」等が格納される。「増分」は、前回のバックアップ処理の実行時点から増分したデータをバックアップする増分バックアップを示し、「フル」は、すべてのデータをバックアップするフルバックアップを示す。「null」は、バックアップしないことを示す。
「標準バックアップスループット値(MB/s)」の項目には、「次回バックアップ形式」に格納されたバックアップ形式により定まる標準のバックアップスループット値の情報が格納される。この「標準バックアップスループット値(MB/s)」は、後述の図6に示すバックアップ予測時間テーブルT11において、仮の値として「仮バックアップスループット(MB/s)」の項目に格納される。
例えば、図3に示すバックアップジョブテーブルT1の最上段のレコードには、「Job A」というジョブ名のバックアップジョブは、バックアップ対象サーバ12であるVMA12aを対象として行われるジョブであることが示されている。また、最上段のレコードには、VMの仮想化プラットフォームは“仮想化基盤A”であり、バックアップジョブの開始時間は“21:00”であり、バックアップウィンドウは“21:00~7:00”であることが示されている。さらに、最上段のレコードには、次回のバックアップ形式は「増分」であり、標準バックアップスループット値は“25(MB/s)”であることが示されている。
<VM構成情報テーブルの構成>
次に、図4を参照して、VM構成情報テーブルT2について説明する。図4は、VM構成情報テーブルT2の構成例を示す図である。
図4に示すように、VM構成情報テーブルT2は、「VM名」、「VMロール」、「VM配置ホスト」及び「VMの使用容量(GB)」の各項目を有する。
「VM名」の項目には、VMの名称が格納される。「VMロール」の項目には、VMに付与された役割の情報が格納される。「VM配置ホスト」の項目には、VMが配置されたホスト(サーバ)の情報が格納される。「VMの使用容量」の項目には、VMのデータの使用容量(GB)の情報が格納される。
例えば、図4に示すVM構成情報テーブルT2の最上段のレコードには、VM名が“VMA”であるVMA12aのVMロールは“バックアップ対象(サーバ)”であり、VMA12aが配置されたホストは“サーバ1a”であり、VMの使用容量は“40(GB)”であることが示されている。
<バックアップデータ経路テーブルの構成>
次に、図5を参照して、バックアップデータ経路テーブルT3の構成について説明する。図5は、バックアップデータ経路テーブルT3の構成例を示す図である。
図5に示すように、バックアップデータ経路テーブルT3は、「データ経路番号」、「送信元ホスト」、「送信先ホスト」及び「ホスト間ネットワーク帯域(Mb/s)」の各項目を有する。
「データ経路番号」の項目には、バックアップデータの経路を識別する番号である、データ経路番号の情報が格納される。「送信元ホスト」の項目には、バックアップデータの送信元となるバックアップ対象サーバ12が配置されたサーバ1の名称の情報が格納される。「送信先ホスト」の項目には、バックアップデータの送信先となるデータ転送サーバ13が配置されたサーバ1の名称の情報が格納される。「ホスト間ネットワーク帯域(Mb/s)」の項目には、送信元ホストから送信先ホストに対してバックアップデータが伝送される場合において、該バックアップデータの伝送経路を占有するネットワーク帯域の情報が格納される。
例えば、図5に示すバックアップデータ経路テーブルT3の最上段のレコードには、データ経路番号が“1”であるデータ経路は、送信元ホスト及び送信先ホストがいずれも“サーバ1a”であり、ホスト間ネットワーク帯域は“null”であることが示されている。また、上から二段目のレコードには、データ経路番号が“2”であるデータ経路は、送信元ホストが“サーバ1a”であって送信先ホストが“サーバ1b”であり、ホスト間ネットワーク帯域は“1000(Mb/s)”であることが示されている。
<バックアップ予測時間テーブル>
次に、図6を参照して、バックアップ予測時間テーブルT11の構成について説明する。図6は、バックアップ予測時間テーブルT11の構成例を示す図である。バックアップ予測時間テーブルT11は、バックアップジョブテーブルT1、VM構成情報テーブルT2、バックアップデータ経路テーブルT3に記載の各情報に基づいて、スケジュール管理部23のバックアップ予測時間算出部231によって作成されるテーブルである。
図6に示すように、バックアップ予測時間テーブルT11は、「組み合わせ番号」、「バックアップ対象サーバ」、「VMの使用容量(GB)」、「データ転送サーバ」、「データ経路番号」、「仮バックアップスループット(Mb/s)」及び「仮バックアップ予測時間(分)」の各項目を有する。
「組み合わせ番号」の項目には、バックアップデータの送信元であるバックアップ対象サーバ12と送信先であるデータ転送サーバ13との組み合わせを識別する番号である、組み合わせ番号の情報が格納される。
「バックアップ対象サーバ」の項目には、バックアップ対象サーバ12の名称の情報が格納される。「VMの使用容量(GB)」の項目には、バックアップ対象サーバ12におけるデータ使用容量の情報が格納される。「データ転送サーバ」の項目には、データ転送サーバ13の名称の情報が格納される。「データ経路番号」の項目には、バックアップ対象サーバ12及びデータ転送サーバ13の組み合わせにおいて使用されるデータ経路のデータ経路番号の情報が格納される。
「仮バックアップスループット(Mb/s)」の項目には、データ経路と、該データ経路使用時において占有するネットワーク帯域の情報から導出される推定のバックアップスループットの値が、仮バックアップスループットとして格納される。
「仮バックアップ予測時間(分)」の項目には、VMのバックアップ容量と仮バックアップスループットから算出される推定のバックアップ予測時間が、仮バックアップ予測時間として格納される。
例えば、図6に示すバックアップ予測時間テーブルT11の最上段のレコードには、組み合わせ番号“1”におけるバックアップ対象サーバ12のVMA12aのデータ使用容量は“40(GB)”であることが示されている。また、最上段のレコードには、データ転送サーバは“VMJ13j”であり、データ経路番号は“1”であり、仮バックアップスループットは“100(Mb/s)”であり、仮バックアップ予測時間は“20(分)”であることが示されている。
図7は、バックアップ予測時間テーブルT11に示されるバックアップ対象サーバ12とデータ転送サーバ13との各組み合わせにおける、仮バックアップ予測時間の長さを示すグラフである。図7に示すグラフの縦軸にはデータ転送サーバ13が配置され、横軸にはバックアップ対象サーバ12が配置される。図7に示す、バックアップ対象サーバ12とデータ転送サーバ13との各組み合わせにおける仮バックアップ予測時間の長さの情報に基づいて、スケジュール管理部23のバックアップ予測時間算出部231(図1参照)は、暫定バックアップスケジュールテーブルT12を作成する。
<暫定バックアップスケジュールテーブルの構成>
次に、図8を参照して、暫定バックアップスケジュールテーブルT12の構成について説明する。図8は、暫定バックアップスケジュールテーブルT12の構成例を示す図である。
図8に示すように、暫定バックアップスケジュールテーブルT12は、「ジョブ名」、「バックアップ対象サーバ」、「データ転送サーバ」、「バックアップ容量(GB)」、「仮バックアップスループット(Mb/s)」、「仮バックアップ予測時間(分)」、「データ経路番号」、「バックアップ開始時間」及び「バックアップ終了時間」の各項目を有する。
「ジョブ名」の項目には、バックアップジョブのジョブ名の情報が格納される。「バックアップ対象サーバ」の項目には、バックアップ対象サーバ12の名称の情報が格納される。「データ転送サーバ」の項目には、データ転送サーバ13の名称の情報が格納される。「バックアップ容量(GB)」の項目には、バックアップ対象サーバ12のバックアップデータの容量の情報が格納される。
「仮バックアップスループット(Mb/s)」の項目には、バックアップ予測時間テーブルT11(図6参照)の仮バックアップスループットの値が格納される。「仮バックアップ予測時間(分)」の項目には、バックアップ予測時間テーブルT11の仮バックアップ予測時間の情報が格納される。「データ経路番号」の項目には、バックアップ対象サーバ12とデータ転送サーバ13との組み合わせによって定まるデータ経路の番号の情報が格納される。「バックアップ開始時間」の項目には、バックアップ処理の開始時間の情報が格納される。「バックアップ終了時間」の項目には、バックアップ処理の終了時間の情報が格納される。
例えば、図8に示す暫定バックアップスケジュールテーブルT12の最上段のレコードには、ジョブ名がJob Aであるジョブの、バックアップ対象サーバ12のVMA12aからデータ転送サーバ13であるVMJ13jへのバックアップデータのバックアップ処理の情報が記載されている。また、最上段のレコードには、VMA12aのバックアップ容量は“40(GB)”であり、仮バックアップスループットは“100(Mb/s)”であり、バックアップ予測時間は“120(分)”であることが示されている。さらに、最上段のレコードには、VMA12a及びVMJ13jの組み合わせが使用するネットワークのデータ経路番号は“1”であり、バックアップ開始時間は“3:00”であり、バックアップ終了時間は“5:00”であることが示されている。
スケジュール管理部23のスケジュール作成部232(図1参照)は、暫定バックアップスケジュールテーブルT12に記載の内容に基づいて、バックアップ対象サーバ12をデータ転送サーバ13に割り当てる処理を行う。このとき、スケジュール作成部232は、データ転送サーバ13への割り当てを、バックアップ予測時間の最小値が最も大きいバックアップ対象サーバ12から順に行う。
例えば、図7に示した例では、バックアップ対象サーバ12であるVMA12aにおいては、データ転送サーバ13であるVML13lとの組におけるバックアップ予測時間が最小となる。同様に、VMB12bにおいては、VMK13kとの組におけるバックアップ予測時間が最小となり、VMC12cにおいては、VML13lとの組におけるバックアップ予測時間が最小となる。また、VMD12dにおいては、VMJ13jとの組におけるバックアップ予測時間が最小となる。これらの、最小のバックアップ予測時間のうち、バックアップ予測時間が最も大きいものから順に、データ転送サーバ13への割り当てを行う。
図9は、スケジュール作成部232による割り当て処理が行われた後におけるバックアップ対象サーバ12とデータ転送サーバ13との対応例を示す図である。図9の縦軸にはデータ転送サーバ13が配置され、横軸は、バックアップ開始時間から終了時間までの時間軸を示す。図9では、バックアップ対象サーバ12のデータ転送サーバ13への割り当て処理の説明を分かりやすくするため、バックアップ対象サーバ12が図1に図示したものよりも多く存在する(VMF以降のVMが存在する)場合を例に挙げる。
図9に示す例では、データ転送サーバ13であるVMJ13jに対しては、バックアップ予測時間が最も大きいバックアップ対象サーバ12であるVMFと、次に大きいVMD12dとが、早いバックアップ開始時間から順に割り当てられている。また、VMK13kに対しては、バックアップ予測時間が最も大きいVMB12bと、次に大きいVMC12cと、その次に大きいVMHとが、早いバックアップ開始時間から順に割り当てられている。
なお、スケジュール作成部232が、バックアップ予測時間が大きいバックアップ対象サーバ12ほど、データ転送サーバ13によるバックアップ処理時間の早い時間に割り当てる処理は一例であり、本発明はこれに限定されない。スケジュール作成部232は、データ転送サーバ13に対して、バックアップ予測時間が小さいバックアップ対象サーバ12から順に、早い時間のスケジュールを割り当ててもよい。
スケジュール作成部232は、バックアップ対象サーバ12のデータ転送サーバ13への割り当ての完了後に、バックアップウィンドウの情報、及び、バックアップ処理時において使用されるネットワークの経路の分散度合いの情報に基づいて、暫定バックアップスケジュールテーブルT12を修正する。そして、スケジュール作成部232は、修正後の暫定バックアップスケジュールテーブルT12を、候補バックアップスケジュールテーブルT13とする。
図10は、修正後の暫定バックアップスケジュールテーブルT12である候補バックアップスケジュールテーブルT13の構成例を示す図である。図11は、スケジュール作成部232による暫定バックアップスケジュールテーブルT12の修正処理の概要を示す図である。図11の縦軸にはデータ転送サーバ13が配置され、横軸は、バックアップ開始時間から終了時間までの時間軸を示す。
図10に示す候補バックアップスケジュールテーブルT13が、修正前の暫定バックアップスケジュールテーブルT12と異なる点は、「経路多重度カウンタ」の項目を有する点である。その他の項目については、図8に示した暫定バックアップスケジュールテーブルT12における各項目と同一であるため、重複する項目の説明は省略する。
「経路多重度カウンタ」の項目には、ネットワークの経路の多重度を示すカウンタの値が格納される。ネットワークの経路の多重度は、バックアップデータの伝送時におけるネットワークの使用度合いを示す。バックアップスケジュールにおける同じ時間帯において使用する経路が、他のバックアップデータの経路と重複している場合、経路多重度カウンタの値はカウントアップされる。スケジュール作成部232は、「経路多重度カウンタ」の項目に格納されたカウント値に基づいて、暫定バックアップスケジュールテーブルT12の仮バックアップスループットの値を修正する。
図10に示す例では、job Aという名称のバックアップジョブの、VMA12aからVMJ13jへのバックアップデータの送信時における仮バックアップスループットの値が“100(分)”から“150(分)”に修正されている。この修正は、データ経路番号が“1”である経路において、同じ時間帯に他のバックアップデータの伝送も行われることに起因して、スケジュール作成部232が行ったものである。
図11には、データ転送サーバ13のVMJ13jに割り当てられたバックアップ対象サーバ12のVMFのバックアップ予測時間と、VMK13kに割り当てられたVMC12cのバックアップ予測時間と、VML13lに割り当てられたVMA12aのバックアップ予測時間とが、それぞれより大きい(長い)時間に修正された例を示す。この修正は、バックアップ対象サーバ12であるVMF、VMC12c、VMA12aのそれぞれのバックアップデータが、同じ時間帯に同じデータ経路を用いて伝送されることに起因して、スケジュール作成部232が行ったものである。
また、スケジュール作成部232は、バックアップ処理が行われる同じ時間帯において、バックアップデータが伝送される経路が重複している場合、経路におけるネットワークスループットが帯域内に収まるように、仮バックアップスループットを修正する。そして、スケジュール作成部232は、修正した仮バックアップスループットに基づいて、仮バックアップ予測時間を再計算する。また、スケジュール作成部232は、再計算した仮バックアップスループット、仮バックアップ予測時間の各値に基づいて、バックアップ開始及びバックアップ終了時間も再計算する。
候補バックアップスケジュールテーブルT13において、バックアップ終了時間がバックアップウィンドウ時間内に収まらない組み合わせがある場合、スケジュール作成部232は、候補バックアップスケジュールテーブルT13の値を再度調整する。具体的には、スケジュール作成部232は、バックアップ対象サーバ12とデータ転送サーバ13との組み合わせの変更、バックアップデータの送信の順番の変更等を行う。
図12及び図13は、スケジュール作成部232による暫定バックアップスケジュールテーブルT12の修正処理の概要を示す図である。図12及び図13の縦軸にはデータ転送サーバ13が配置され、横軸は、バックアップ開始時間から終了時間までの時間軸を示す。
図12の上段に示す例では、データ転送サーバ13のVMJ13jに割り当てられたデータ転送サーバ13のうち、VMB12bのバックアップデータが送信される時間が、図中に実線の矩形の枠で示されるバックアップウィンドウの外に出てしまっている。したがって、スケジュール作成部232は、VMB12bのバックアップデータを転送するデータ転送サーバ13を、バックアップ終了時間が最も早いVMK13kに変更する。
図12の中段に、VMB12bのバックアップデータを転送するデータ転送サーバ13が、VMJ13jからVMK13kに変更された状態を示す。
データ転送サーバ13の変更後のスケジュールにおいて、使用されるネットワークが重複する時間帯がある場合、スケジュール作成部232は、その時間帯におけるバックアップデータのバックアップ予測時間を修正する。
図12の下段には、データ転送サーバ13であるVMK13kに割り当てられたVMD12dのバックアップデータのバックアップ予測時間と、VML13lに割り当てられたVMGのバックアップデータのバックアップ予測時間とが、それぞれより大きい(長い)時間に修正されている。
さらに、スケジュール作成部232は、データ転送サーバ13におけるバックアップデータの転送順序を変更することにより、ネットワークの多重度を減らせると判断した場合、バックアップデータの転送順序を修正する。
図13の上段には、図12の下段と同一のスケジュールを示す。図13の中段には、データ転送サーバ13であるVMK13kに割り当てられたVMB12bのバックアップデータが転送される時間を、一番速い時間帯に入れ替えた状態を示す。スケジュール作成部232によってこのような調整が行われることにより、バックアップスケジュールの後半(遅い時間)におけるネットワークの多重度が減る。そして、ネットワークの多重度が減ることにより、バックアップデータの転送に要する時間が短くなり、バックアップ予測時間も短くなる。
図13の下段には、データ転送サーバ13であるVMK13kに割り当てられたVMD12dのバックアップデータのバックアップ予測時間と、VML13lに割り当てられたVMHのバックアップデータのバックアップ予測時間とが、それぞれ短縮された様子が示されている。
結果出力部24は、調整後の暫定バックアップスケジュールテーブルT12′を候補バックアップスケジュールテーブルT13として、表示部230(図2参照)を介してユーザに提示する。そして、スケジュール管理部23は、候補バックアップスケジュールテーブルT13を確認したユーザによる指示に基づいて、最終的なバックアップスケジュールを作成する。
<バックアップスケジュール管理処理>
次に、本実施形態に係るバックアップスケジュール管理システム100によるバックアップスケジュール管理方法について説明する。図14は、バックアップスケジュール管理システム100によるバックアップスケジュール管理処理の手順の例を示すフローチャートである。
まず、バックアップスケジュール管理装置2のバックアップ構成情報取得部21は、データ保存サーバ14からバックアップ構成情報を取得し、VM構成情報取得部22は、サーバ1及びVMの構成情報を取得する。そして、バックアップ構成情報取得部21は、バックアップジョブテーブルT1を作成し、VM構成情報取得部22は、VM構成情報テーブルT2及びバックアップデータ経路テーブルT3を作成する(ステップS1)。
次いで、スケジュール管理部23のバックアップ予測時間算出部231は、バックアップ予測時間テーブル作成処理を行う(ステップS2)。ステップS2のバックアップ予測時間テーブル作成処理については、次の図15を参照して詳述する。
次いで、スケジュール管理部23のスケジュール作成部232は、暫定バックアップスケジュールテーブル作成処理を行う(ステップS3)。ステップS3の暫定バックアップスケジュールテーブル作成処理については、後述の図16及び図17を参照して詳述する。
次いで、スケジュール作成部232は、候補バックアップスケジュールテーブル作成処理を行う(ステップS4)。ステップS4の候補バックアップスケジュールテーブル作成処理については、後述の図18及び図19を参照して詳述する。
次いで、スケジュール作成部232は、バックアップスケジュール決定処理を行う(ステップS5)。ステップS5のバックアップスケジュール決定処理については、後述の図20を参照して詳述する。
[バックアップ予測時間テーブル作成処理]
次に、図15を参照して、バックアップ予測時間算出部231によるバックアップ予測時間テーブル作成処理について説明する。図15は、バックアップ予測時間算出部231によるバックアップ予測時間テーブル作成処理の手順の例を示すフローチャートである。まず、バックアップ予測時間算出部231は、バックアップ対象サーバ12及びデータ転送サーバ13の組み合わせを構成要素としてバックアップ予測時間テーブルT11に追加する(ステップS11)。
次いで、バックアップ予測時間算出部231は、バックアップ対象サーバ12及びデータ転送サーバ13の各組み合わせにおけるデータ経路を特定し、特定したデータ経路を、構成要素としてバックアップ予測時間テーブルT11に追加する(ステップS12)。
次いで、バックアップ予測時間算出部231は、仮バックアップスループット算出処理を行う。仮バックアップスループット算出処理は、バックアップ対象サーバ12とデータ転送サーバ13との全組み合わせ(に対応する全レコード)を対象として行われる。
仮バックアップスループット算出処理において、バックアップ予測時間算出部231には、まず、バックアップ対象サーバ12のホスト(サーバ)とデータ転送サーバ13のホストとは一致しているか否かを判定する(ステップS13)。つまり、バックアップ予測時間算出部231は、バックアップ対象サーバ12及びデータ転送サーバ13間のバックアップデータの送信は、同一のサーバ1内で行われるか否かを判定する。
ステップS13で、ホストは一致していると判定された場合(ステップS13がYES)、バックアップ予測時間算出部231は、標準バックアップスループット値を、その組み合わせにおける仮バックアップスループットに設定する(ステップS14)。一方、ステップS13で、ホストは異なると判定された場合(ステップS13がNO)、バックアップ予測時間算出部231は、バックアップ対象サーバ12及びデータ転送サーバ13の組み合わせが使用するデータ経路のネットワーク帯域及び標準バックアップスループット値のうち、値の小さいものを、該組み合わせの仮バックアップスループットに設定する(ステップS15)。
ステップS14又はステップS15の処理後、バックアップ予測時間算出部231は、バックアップ予測時間の算出処理を行う。バックアップ予測時間の算出処理は、バックアップ対象サーバ12とデータ転送サーバ13との全組み合わせに対応する全レコードを対象として行われる。バックアップ予測時間の算出処理において、バックアップ予測時間算出部231は、バックアップ容量を仮バックアップスループットで除算することにより、バックアップ予測時間を算出する(ステップS16)。ステップS16の処理後、バックアップ予測時間算出部231によるバックアップ予測時間テーブル作成処理は終了する。
[暫定バックアップスケジュールテーブル作成処理]
次に、図16及び図17を参照して、スケジュール管理部23のスケジュール作成部232による暫定バックアップスケジュールテーブル作成処理について説明する。図16及び図17は、スケジュール作成部232による暫定バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。
暫定バックアップスケジュールテーブル作成処理において、スケジュール作成部232は、まず、データ転送サーバ13へのバックアップ対象サーバ12の割り当て処理を行う。データ転送サーバ13へのバックアップ対象サーバ12の割り当て処理は、バックアップ対象サーバ12の数の分だけ行われる。バックアップ対象サーバ12の割り当て処理において、スケジュール作成部232は、バックアップ予測時間の最小値が最も大きいバックアップ対象サーバ12から順にバックアップ予測時間が最小となるデータ転送サーバ13へ割り当てる(ステップS21)。ステップS21の処理後、スケジュール作成部232は、ネットワーク多重度を考慮したスループット及びバックアップ予測時間の修正処理(図17)を行う。
ネットワーク多重度を考慮したスループット及びバックアップ予測時間の修正処理は、すべてのバックアップジョブのそれぞれにおけるバックアップ対象サーバ12及びデータ転送サーバ13の全組み合わせを対象として行われる。ネットワーク多重度を考慮したスループット及びバックアップ予測時間の修正処理において、スケジュール作成部232は、まず、同じバックアップ時間中に同一のデータ経路が使われているか否かを判定する(ステップS31)。
ステップS31で、同じバックアップ時間中に同一のデータ経路が使われていると判定された場合(ステップS31がYES)、スケジュール作成部232は、同一のデータ経路を用いて伝送されるバックアップデータのバックアップスループットの合計は、該データ経路のネットワーク帯域を超えているか否かを判定する(ステップS32)。ステップS32で、ネットワーク帯域を超えていると判定された場合(ステップS32がYES)、スケジュール作成部232は、バックアップ時間中のスループットがネットワーク帯域に収まるようバックアップスループットを再計算する(ステップS33)。
ステップS31がNO判定の場合、又は、ステップS32がNO判定の場合、スケジュール作成部232は、バックアップ対象サーバ12及びデータ転送サーバ13の組み合わせが使用するデータ経路のネットワーク帯域及び標準バックアップスループット値のうち、値の小さいものを、該組み合わせのバックアップスループットに設定する(ステップS34)。ステップS33又はステップS34の処理後、スケジュール作成部232は、算出したバックアップスループットを用いてバックアップ予測時間を修正する(ステップS35)。ステップS35の処理後、スケジュール作成部232による暫定バックアップスケジュールテーブル作成処理は終了する。
[候補バックアップスケジュールテーブル作成処理]
次に、図18及び図19を参照して、スケジュール作成部232による候補バックアップスケジュールテーブル作成処理について説明する。図18及び図19は、スケジュール作成部232による候補バックアップスケジュールテーブル作成処理の手順の例を示すフローチャートである。候補バックアップスケジュールテーブルT13は、上述したように、スケジュール作成部232が暫定バックアップスケジュールテーブルT12を修正することにより生成されるテーブルである。
まず、スケジュール作成部232は、暫定バックアップスケジュールテーブルT12の全バックアップ終了時間が、バックアップウィンドウ時間内に収まっているか否かを判定する(ステップS41)。ステップS41で、バックアップウィンドウ時間内に収まっていると判定された場合(ステップS41がYES)、スケジュール作成部232は、バックアップデータが伝送されるデータ経路の経路多重度を計上し、計上した結果を候補バックアップスケジュールテーブルT13に格納する(ステップS42)。
ステップS41がNO判定の場合、又は、ステップS42の処理後、スケジュール作成部232は、データ転送サーバへのバックアップ対象サーバの割り当ての修正処理を行う。データ転送サーバへのバックアップ対象サーバの割り当ての修正処理において、スケジュール作成部232は、最もバックアップ終了時間が遅いバックアップ対象サーバ12を、最もバックアップ終了時間が早いデータ転送サーバ13に割り当てる処理を行う(ステップS43)。ステップS43の処理は、図12を参照して説明した処理である。
次いで、スケジュール作成部232は、ネットワーク多重度を考慮したスループット及びバックアップ予測時間の修正を行う(ステップS44)。ステップS44の処理は、図13を参照して説明した処理である。
ステップS44の処理後、スケジュール作成部232は、再度、暫定バックアップスケジュールテーブルT12の全バックアップ終了時間が、バックアップウィンドウ時間内に収まっているか否かを判定する(ステップS45)。ステップS45で、バックアップウィンドウ時間内にすべて収まっていると判定された場合(ステップS45がYES)、スケジュール作成部232は、バックアップデータが伝送されるデータ経路の経路多重度を計上し、計上した結果を候補バックアップスケジュールテーブルT13に格納する(ステップS46)。
一方、ステップS45で、バックアップウィンドウ時間内に収まっていないバックアップ終了時間があると判定された場合(ステップS45がNO)、または、ステップS46の処理後、スケジュール作成部232は、データ転送サーバに割り当てられたバックアップ対象サーバの処理順序入れ替え処理(図19)を行う。
データ転送サーバに割り当てられたバックアップ処理サーバの順序入れ替え処理において、スケジュール作成部232は、まず、最もバックアップ終了時間が遅いバックアップ対象サーバによるバックアップ開始時間を、バックアップ処理における最も早い時間に変更する(ステップS51)。次いで、スケジュール作成部232は、ネットワーク多重度を考慮したスループット及びバックアップ予測時間の修正を行う(ステップS52)。
ステップS52の処理後、スケジュール作成部232は、再度、暫定バックアップスケジュールテーブルT12の全バックアップ終了時間は、バックアップウィンドウ時間内に収まっているか否かを判定する(ステップS53)。ステップS53で、バックアップウィンドウ時間内に収まっていると判定された場合(ステップS53がYES)、スケジュール作成部232は、バックアップデータが伝送されるデータ経路の経路多重度を計上し、計上した結果を候補バックアップスケジュールテーブルT13に格納する(ステップS54)。
ステップS54の処理後、又は、ステップS53でバックアップウィンドウ時間内に収まっていないバックアップ終了時間があると判定された場合(ステップS53がNO)、スケジュール作成部232は、ステップS55の判定を行う。ステップS55において、スケジュール作成部232は、これまでの処理で対象としたデータ転送サーバ13におけるバックアップ処理数(バックアップ対象サーバ12の数)を示すカウント値jは、データ転送サーバ13の数を超えているか否かを判定する。ステップS55で、「カウント値j≦データ転送サーバ13におけるバックアップ処理数」であると判定された場合(ステップS55がNO)、スケジュール作成部232は、データ転送サーバに割り当てられたバックアップ処理サーバの順序入れ替え処理(ステップS51及びステップS52)を行う。
一方、ステップS55で、「カウント値j>データ転送サーバ13におけるバックアップ処理数」であると判定された場合(ステップS55がYES)、スケジュール作成部232は、これまでの処理で対象としたデータ転送サーバの数を示すカウント値iは、実際のデータ転送サーバ13の数を超えたか否かを判定する(ステップS56)。ステップS56で、「カウント値i≦データ転送サーバ13の数」であると判定された場合(ステップS56がNO)、スケジュール作成部232は、図18のデータ転送サーバへのバックアップ対象サーバの割り当ての修正処理(図18のステップS43、ステップS44)を行う。
一方、ステップS56で、「カウント値i>データ転送サーバ13の数」であると判定された場合(ステップS56がYES)、スケジュール作成部232は、これまでの処理で作成した候補バックアップスケジュールテーブルT13の数は、0より多いか否かを判定する(ステップS57)。ステップS57で、作成済みの候補バックアップスケジュールテーブルT13の数は、1以上であると判定された場合(ステップS57がYES)、スケジュール作成部232による候補バックアップスケジュールテーブル作成処理は終了する。
一方、作成済みの候補バックアップスケジュールテーブルT13の数は0であると判定された場合(ステップS57がNO)、結果出力部24は、候補バックアップスケジュールがないことを管理者に通知する(ステップS58)。例えば、バックアップデータ容量が想定以上に急激に増えた場合、バックアップウィンドウに時間内にバックアップ処理の終了時間が収まらないスケジュールしか作れない、すなわち、候補バックアップスケジュールを作成できない場合も生じ得る。このような場合においても、本実施形態によれば、管理者にその旨が通知されるため、管理者はバックアップ処理の実行前に対策をとることが可能となる。ステップS58の処理後、スケジュール作成部232による候補バックアップスケジュールテーブル作成処理は終了する。
[バックアップスケジュール決定処理]
次に、図20を参照して、スケジュール作成部232によるバックアップスケジュール決定処理について説明する。図20は、スケジュール作成部232によるバックアップスケジュール決定処理の手順の例を示すフローチャートである。図20に示す処理は、スケジュール作成部232が、得られる効果に応じて候補バックアップスケジュールテーブルT13を複数種類作成していることを前提としたものである。複数種類の候補バックアップスケジュールテーブルT13には、例えば、バックアップ完了時間をより早くすることが可能な候補バックアップスケジュールテーブルT13、データ経路の分散度合いを大きくすることが可能な候補バックアップスケジュールテーブルT13等がある。
まず、スケジュール作成部232は、作成済みの候補バックアップスケジュールテーブルT13の数は“1”より大きいか否かを判定する(ステップS61)。ステップS61で、候補バックアップスケジュールテーブルT13の数は“1”より大きいと判定された場合(ステップS61がYES)、スケジュール作成部232は、候補バックアップスケジュールテーブルの選定処理を行う。
候補バックアップスケジュールテーブルの選定処理では、スケジュール作成部232は、スケジュール選定の優先事項が、バックアップ完了時間及びデータ経路の分散度合いのいずれであるかの判定を行う(ステップS62)。スケジュール作成部232は、スケジュール選定の優先事項の判定を、例えば、次の図21に示す候補バックアップスケジュール選定画面Scに対するユーザによる指示等に基づいて行うことができる。候補バックアップスケジュール選定画面Scの構成については、図21を参照して後述する。
スケジュール選定の優先事項がバックアップ完了時間である場合、スケジュール作成部232は、バックアップ完了時間が最も早い候補バックアップスケジュールテーブルT13を選択する(ステップS63)。一方、スケジュール選定の優先事項がデータ経路の分散度合いである場合、スケジュール作成部232は、データ経路の分散度合いが最も大きい候補バックアップスケジュールテーブルT13を選択する(ステップS64)。
ステップS61がNO判定の場合、あるいは、ステップS63又はステップS64の処理後、スケジュール作成部232は、選定された候補バックアップスケジュールテーブルT13に基づいてバックアップスケジュールを決定する(ステップS65)。ステップS61がNO判定であった場合、すなわち、候補バックアップスケジュールテーブルT13の数が1以下であった場合には、スケジュール作成部232は、その候補バックアップスケジュールテーブルT13に基づいてバックアップスケジュールを決定する。ステップS65の処理後、スケジュール作成部232によるバックアップスケジュール決定処理は終了する。
図21は、候補バックアップスケジュール選定画面Scの構成例を示す図である。図21に示すように、候補バックアップスケジュール選定画面Scの左上方には、「バックアップ完了時間が最も早い」の選択肢と、「使用バックアップデータ経路が最も分散」の選択肢とが表示されている。図21に示す例では、2つ目の「使用バックアップデータ経路が最も分散」の選択肢が選択された様子が示されている。
この選択肢の下方には、「20yy/mm/dd バックアップスケジュール」の表題が付与された表が表示されている。該表は、図13の下段等に示したグラフである。つまり、データ転送サーバ13における各バックアップ処理に対応するバックアップ対象サーバ12が、バックアップスケジュールの時間順に割り当てられた表である。ユーザは、表の上部の選択肢のいずれかを選択することにより、選択肢に示されたスケジュール選定の優先事項に応じたスケジュールを、候補バックアップスケジュール選定画面Scに表示させることができる。
表の下方には、決定ボタンB1及びキャンセルボタンB2が配置されている。ユーザによって決定ボタンB1が押下された場合、候補バックアップスケジュール選定画面Scに表示されているバックアップスケジュールが、各データ転送サーバ13に適用される。
<バックアップ予測時間テーブルの更新処理>
次に、図22を参照して、スケジュール作成部232によるバックアップ予測時間テーブル更新処理について説明する。図22は、スケジュール作成部232によるバックアップ予測時間テーブル更新処理の手順の例を示すフローチャートである。
まず、スケジュール作成部232は、バックアップ処理後におけるバックアップ対象サーバの構成情報を取得する(ステップS71)。次いで、スケジュール作成部232は、取得した構成情報に基づいて、バックアップ予測時間テーブルT11における各バックアップ対象サーバ12のバックアップ容量、バックアップスループットの各値を更新する(ステップS72)。
次いで、スケジュール作成部232は、更新後のバックアップ容量、バックアップスループットの各値を用いて、バックアップ予測時間を算出する(ステップS73)。次いで、スケジュール作成部232は、算出したバックアップ予測時間で、バックアップ予測時間テーブルT11の仮バックアップ予測時間を更新する(ステップS74)。ステップS74の処理後、スケジュール作成部232によるバックアップ予測時間テーブル更新処理は終了する。
[各種効果]
上述した実施形態では、バックアップ予測時間算出部231は、仮バックアップスループットと、バックアップ対象サーバ12のバックアップデータの使用容量と、に基づいて、データ転送サーバ13とバックアップ対象サーバ12との各組み合わせにおけるバックアップ予測時間を算出する。また、スケジュール作成部232は、バックアップ予測時間の情報と、バックアップ処理を行う場合におけるネットワークの使用度合いの情報と、に基づいて、バックアップ対象サーバ12のバックアップ処理をデータ転送サーバ13に順に割り当て、割り当ての結果に基づいてバックアップスケジュールを作成する。
バックアップ処理にかかる時間は、データ転送サーバ13とバックアップ対象サーバ12との組み合わせ、バックアップ対象サーバ12のデータ容量、ネットワークの使用度合い等によって変動するものである。本実施形態では、これらの要素を考慮してバックアップスケジュールが作成されるため、本実施形態によれば、バックアップデータの容量の変化を予測しにくいシステムにおいても、適切なバックアップスケジュールを作成できるようになる。また、本実施形態によれば、バックアップスケジュール管理装置2が自動的にバックアップスケジュールを作成するため、管理者等がバックアップスケジュールを作成したり調整したりする手間を省くことができる。
また、上述した実施形態では、スケジュール作成部232は、バックアップ予測時間を最も短くすることが可能なデータ転送サーバ13に、バックアップ対象サーバ12のバックアップ処理を割り当てる。したがって、本実施形態によれば、バックアップの完了時間をより短くすることが可能なバックアップスケジュールが作成される。
また、上述した実施形態では、スケジュール作成部232は、バックアップ処理が実行されることにより、ネットワークの使用度合いが高くなると想定される時間帯においては、データ転送サーバ13及びバックアップ対象サーバ12の各組み合わせにおけるバックアップ予測時間を、より長い時間に修正する。したがって、本実施形態によれば、ネットワークの使用状況に応じたバックアップスケジュールを作成できる。
また、上述した実施形態では、スケジュール作成部232は、バックアップ処理の終了時間がバックアップウィンドウの時間内に収まらないデータ転送サーバ13がある場合、バックアップウィンドウの時間外に行われるバックアップ処理を、バックアップ処理の終了時間が最も早いデータ転送サーバ13に移し替える。したがって、本実施形態によれば、バックアップウィンドウを考慮したバックアップスケジュールを作成することができる。
また、上述した実施形態では、スケジュール作成部232は、データ転送サーバ13に割り当てられたバックアップ対象サーバ12のバックアップ処理の順番を、ネットワークの使用度合いを低減させることを可能とする順番に変更する。したがって、本実施形態によれば、バックアップの完了時間をより短くすることが可能なバックアップスケジュールが作成される。
また、上述した実施形態では、結果出力部24は、バックアップ完了時間優先の候補バックアップスケジュールと、データ経路の分散度優先の候補バックアップスケジュールとの両方をユーザに提示する。そして、スケジュール作成部232は、ユーザによって選択された方の候補バックアップスケジュールに基づいて、バックアップスケジュールを作成する。したがって、本実施形態によれば、ユーザが優先する事項に基づいたバックアップスケジュールが作成される。
さらに、上述した実施形態では、スケジュール作成部232は、作成したバックアップスケジュールに基づくバックアップ処理の終了後に、複数のバックアップ対象サーバ12のそれぞれにおけるバックアップデータの使用容量の情報を取得する。そして、スケジュール作成部232は、取得したバックアップデータの使用容量の情報に基づいてバックアップ予測時間を算出し、算出後のバックアップ予測時間で、バックアップ処理の実行前におけるバックアップ予測時間を更新する。したがって、本実施形態によれば、バックアップ処理の実績値の情報が、次回のバックアップスケジュールの作成にフィードバックされるため、スケジュール作成部232によるバックアップスケジュール作成の精度を常に向上させることが可能となる。
なお、上述した実施形態では、本発明に係るバックアップスケジュール管理システムが、ハイパーバイザの技術を用いて実現される仮想化システムに適用される例を挙げたが、本発明はこれに限定されない。本発明に係るバックアップスケジュール管理システムは、コンテナ等の他の仮想化技術を用いて実現される仮想化システムに適用されてもよい。また、バックアップ対象サーバ12とデータ転送サーバ13との組み合わせを流動的に変更可能なシステムであれば、仮想化技術を用いずに実現されるシステムに適用されてもよい。
また、上述した実施形態では、バックアップ予測時間算出部231とスケジュール作成部232とは、各種テーブルに格納された各値を用いてバックアップ予測時間の算出、バックアップスケジュールの作成を行う例を挙げたが、本発明はこれに限定されない。例えば、本発明に係るバックアップスケジュール管理システムは、バックアップ予測時間算出部231及びスケジュール作成部232の機能を機械学習モデルとして構成し、該機械学習モデルから、推論結果としてバックアップスケジュールを出力させてもよい。
また、上述した実施形態は本発明を分かりやすく説明するためにシステムの構成を詳細且つ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。図1及び図2において実線又は矢印で示した制御線又は情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
さらに、本明細書において、時系列的な処理を記述する処理ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)をも含むものである。
1…サーバ、2…バックアップスケジュール管理装置、11…ハイパーバイザ、12…バックアップ対象サーバ、12a…VMA、12b…VMB、12c…VMC、12d…VMD、12e…VME、12k…VMK、13…データ転送サーバ、13j…VMJ、13k…VMK、13l…VML、13m…VMM、13n…VMN、14…データ保存サーバ、14n…VMN、21…バックアップ構成情報取得部、22…VM構成情報取得部、23…スケジュール管理部、24…結果出力部、100…バックアップスケジュール管理システム、231…バックアップ予測時間算出部、232…スケジュール作成部、T1…バックアップジョブテーブル、T11…バックアップ予測時間テーブル、T12…暫定バックアップスケジュールテーブル、T13…候補バックアップスケジュールテーブル、T2…VM構成情報テーブル、T3…バックアップデータ経路テーブル

Claims (10)

  1. データ保存サーバにバックアップされるバックアップデータを有する複数のバックアップ対象サーバと、前記バックアップ対象サーバから前記バックアップデータを取得して前記データ保存サーバに転送する複数のデータ転送サーバとが互いにネットワークで接続されたバックアップスケジュール管理システムにおけるバックアップ処理のバックアップスケジュールを作成するバックアップスケジュール作成装置であって、
    前記バックアップデータの伝送時における推定のバックアップスループットと、前記バックアップ対象サーバにおける前記バックアップデータの使用容量と、に基づいて、前記データ転送サーバと前記バックアップ対象サーバとの各組み合わせにおけるバックアップ予測時間を算出するバックアップ予測時間算出部と、
    前記バックアップ予測時間の情報と、前記バックアップ処理を行う場合における前記ネットワークの使用度合いの情報と、に基づいて、前記バックアップ対象サーバの前記バックアップデータのバックアップ処理を前記データ転送サーバに順に割り当て、割り当ての結果に基づいて前記バックアップスケジュールを作成するスケジュール作成部と、を備える
    バックアップスケジュール作成装置。
  2. 前記スケジュール作成部は、前記バックアップ予測時間を最も短くすることが可能な前記データ転送サーバに、前記バックアップ対象サーバのバックアップ処理を割り当てる
    請求項1に記載のバックアップスケジュール作成装置。
  3. 前記バックアップ予測時間算出部は、前記データ転送サーバと前記バックアップ対象サーバとを接続する前記ネットワークの経路におけるネットワーク帯域の情報に基づいて、
    前記推定のバックアップスループットを算出する
    請求項2に記載のバックアップスケジュール作成装置。
  4. 前記スケジュール作成部は、複数の前記データ転送サーバ及び前記バックアップ対象サーバの組み合わせにおける前記バックアップ処理が実行されることにより、前記ネットワークの使用度合いが高くなると想定される時間帯においては、前記データ転送サーバ及び前記バックアップ対象サーバの各組み合わせにおける前記バックアップ予測時間を、より長い時間に修正する
    請求項3に記載のバックアップスケジュール作成装置。
  5. 前記スケジュール作成部は、前記バックアップ処理の終了時間がバックアップウィンドウの時間内に収まらない前記データ転送サーバがある場合、前記バックアップウィンドウの時間外に行われるバックアップ処理を、前記バックアップ処理の終了時間が最も早い前記データ転送サーバに移し替える
    請求項4に記載のバックアップスケジュール作成装置。
  6. 前記スケジュール作成部は、前記データ転送サーバに割り当てられた前記バックアップ対象サーバのバックアップ処理の順番を、前記ネットワークの使用度合いを低減させる順番に変更する
    請求項5に記載のバックアップスケジュール作成装置。
  7. 前記スケジュール作成部は、前記バックアップスケジュールにおいてネットワークの使用度合いを低減できると判定された時間帯が存在するとき、前記データ転送サーバに割り当てられた前記バックアップ対象サーバのバックアップ処理の順番を、前記ネットワークの使用度合いを低減できると判定された時間帯のネットワークの使用度合いを低減させる順番に変更する
    請求項5に記載のバックアップスケジュール作成装置。
  8. 前記スケジュール作成部は、前記バックアップ処理の終了時間をより短くするバックアップスケジュールの候補と、前記ネットワークの使用度合いをより低減するバックアップスケジュールの候補と、を作成し、予め設定された優先事項、又は、操作入力部を介して入力される指示に基づいていずれかの候補を選択し、選択した候補に基づいて前記バックアップスケジュールを作成する
    請求項6に記載のバックアップスケジュール作成装置。
  9. 前記スケジュール作成部は、作成した前記バックアップスケジュールに基づく前記バックアップ処理の終了後に、複数の前記バックアップ対象サーバのそれぞれにおける前記バックアップデータの使用容量の情報を取得し、取得した前記バックアップデータの使用容量の情報に基づいて前記バックアップ予測時間を算出し、算出後の前記バックアップ予測時間で前記バックアップ処理の実行前における前記バックアップ予測時間を更新する
    請求項に記載のバックアップスケジュール作成装置。
  10. データ保存サーバにバックアップされるバックアップデータを有する複数のバックアップ対象サーバと、前記バックアップ対象サーバから前記バックアップデータを取得して前記データ保存サーバに転送する複数のデータ転送サーバとが互いにネットワークで接続されたバックアップスケジュール管理システムにおけるバックアップ処理のバックアップスケジュールを作成するバックアップスケジュール作成装置によるバックアップ作成方法であって、
    バックアップ予測時間算出部が、前記バックアップデータの伝送時における推定のバックアップスループットと、前記バックアップ対象サーバにおける前記バックアップデータの使用容量と、に基づいて、前記データ転送サーバと前記バックアップ対象サーバとの各組み合わせにおけるバックアップ予測時間を算出する手順と、
    スケジュール作成部が、前記バックアップ予測時間の情報と、前記バックアップ処理を行う場合における前記ネットワークの使用度合いの情報と、に基づいて、前記バックアップ対象サーバの前記バックアップデータのバックアップ処理を前記データ転送サーバに順に割り当て、割り当ての結果に基づいて前記バックアップスケジュールを作成する手順と、を含む
    バックアップスケジュール作成方法。
JP2024086179A 2024-05-28 2024-05-28 バックアップスケジュール作成装置及びバックアップスケジュール作成方法 Active JP7844542B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2024086179A JP7844542B2 (ja) 2024-05-28 2024-05-28 バックアップスケジュール作成装置及びバックアップスケジュール作成方法
US19/051,593 US20250370881A1 (en) 2024-05-28 2025-02-12 Backup schedule creation device and backup schedule creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2024086179A JP7844542B2 (ja) 2024-05-28 2024-05-28 バックアップスケジュール作成装置及びバックアップスケジュール作成方法

Publications (2)

Publication Number Publication Date
JP2025179438A JP2025179438A (ja) 2025-12-10
JP7844542B2 true JP7844542B2 (ja) 2026-04-13

Family

ID=97873940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024086179A Active JP7844542B2 (ja) 2024-05-28 2024-05-28 バックアップスケジュール作成装置及びバックアップスケジュール作成方法

Country Status (2)

Country Link
US (1) US20250370881A1 (ja)
JP (1) JP7844542B2 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699559A (zh) 2013-12-04 2015-06-10 腾讯科技(深圳)有限公司 分布式数据备份方法和系统
US20210232461A1 (en) 2020-01-27 2021-07-29 EMC IP Holding Company LLC Global backup scheduler based on integer programming and machine learning
US20210255926A1 (en) 2020-02-13 2021-08-19 EMC IP Holding Company LLC Backup Agent Scaling with Evaluation of Prior Backup Jobs
US20210255932A1 (en) 2020-02-19 2021-08-19 EMC IP Holding Company LLC Prioritizing virtual machines for backup protection at a virtual machine disk level
US20220197756A1 (en) 2020-12-17 2022-06-23 Druva Inc. System and method for data back- up using a proxy pool
US20230051637A1 (en) 2021-08-11 2023-02-16 International Business Machines Corporation Adjusting data backups based on system details
US20230185619A1 (en) 2021-12-15 2023-06-15 Druva Inc. System and method for dynamic resource allocation during data backup/restore
US20230185674A1 (en) 2021-12-15 2023-06-15 Druva Inc. System and method for optimized scheduling of data backup/restore

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699559A (zh) 2013-12-04 2015-06-10 腾讯科技(深圳)有限公司 分布式数据备份方法和系统
US20210232461A1 (en) 2020-01-27 2021-07-29 EMC IP Holding Company LLC Global backup scheduler based on integer programming and machine learning
US20210255926A1 (en) 2020-02-13 2021-08-19 EMC IP Holding Company LLC Backup Agent Scaling with Evaluation of Prior Backup Jobs
US20210255932A1 (en) 2020-02-19 2021-08-19 EMC IP Holding Company LLC Prioritizing virtual machines for backup protection at a virtual machine disk level
US20220197756A1 (en) 2020-12-17 2022-06-23 Druva Inc. System and method for data back- up using a proxy pool
US20230051637A1 (en) 2021-08-11 2023-02-16 International Business Machines Corporation Adjusting data backups based on system details
US20230185619A1 (en) 2021-12-15 2023-06-15 Druva Inc. System and method for dynamic resource allocation during data backup/restore
US20230185674A1 (en) 2021-12-15 2023-06-15 Druva Inc. System and method for optimized scheduling of data backup/restore

Also Published As

Publication number Publication date
US20250370881A1 (en) 2025-12-04
JP2025179438A (ja) 2025-12-10

Similar Documents

Publication Publication Date Title
US10831387B1 (en) Snapshot reservations in a distributed storage system
US8793693B2 (en) Apparatus and method for predicting a processing time of a computer
US8131891B2 (en) Updating I/O capability of a logically-partitioned computer system
US8332862B2 (en) Scheduling ready tasks by generating network flow graph using information receive from root task having affinities between ready task and computers for execution
US7809831B2 (en) Method for provisioning resources
US20130179877A1 (en) Intelligent and automated code deployment
JP7197776B2 (ja) スケジューリングプログラム、スケジューリング方法、およびスケジューリング装置
JP3960961B2 (ja) ソフトウェアに修正情報を適用する装置および方法
US20240134762A1 (en) System and method for availability group database patching
US11010203B2 (en) Fusing and unfusing operators during a job overlay
US10845997B2 (en) Job manager for deploying a bundled application
JPWO2016079786A1 (ja) 計算機システム及びデータ処理方法
US11876689B1 (en) Method and system for SLA/QoS adherence-based flex on demand in a multi-API virtual desktop infrastructure (VDI) environment
JP7844542B2 (ja) バックアップスケジュール作成装置及びバックアップスケジュール作成方法
JP2019020798A (ja) 情報処理装置およびプログラム
US10257022B2 (en) Determining statuses of computer modules
WO2014119269A1 (ja) データセット多重度変更装置、サーバ、およびデータセット多重度変更方法
US20240394075A1 (en) Method and system for aggregate resource-based flex on demand in a multi-api virtual desktop infrastructure (vdi) environment
US20240394088A1 (en) Method and system for eue maximization-based flex on demand in a multi-api virtual desktop infrastructure (vdi) environment
US12455797B2 (en) Copy execution time optimization system management
JP7835697B2 (ja) 管理計算機、管理計算システム、管理計算プログラム及び管理計算方法
US20250383935A1 (en) Method and system for adjusting pod resources
US20260086842A1 (en) Clone creation method and storage system
US12229021B2 (en) Backup management device and backup destination migration method
US20230401085A1 (en) Selection of hosts for virtual machines based on current virtual machine requirements and headroom availability

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20260205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20260303

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260401

R150 Certificate of patent or registration of utility model

Ref document number: 7844542

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150