JP5966184B2 - Management system - Google Patents
Management system Download PDFInfo
- Publication number
- JP5966184B2 JP5966184B2 JP2012200627A JP2012200627A JP5966184B2 JP 5966184 B2 JP5966184 B2 JP 5966184B2 JP 2012200627 A JP2012200627 A JP 2012200627A JP 2012200627 A JP2012200627 A JP 2012200627A JP 5966184 B2 JP5966184 B2 JP 5966184B2
- Authority
- JP
- Japan
- Prior art keywords
- block data
- data
- block
- partial block
- processing time
- 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
Links
Images
Description
本発明は、ファイルを複数のデータに分割して管理する技術に関する。 The present invention relates to a technique for managing a file by dividing it into a plurality of data.
近年、データのバックアップ方法の1つとして、重複排除技術が提案されている(特許文献1参照)。重複排除技術とは、ストレージ内にあるブロックデータの重複を検出し、重複しているブロックデータの一方を排除することでストレージ容量を効率的に利用できる技術である。
このような技術を用いることによって、データセンタは、ストレージ内に同一の情報を格納しているブロックデータが蓄積されることを無くすことを可能にする。さらに、データセンタは、ストレージ内に記憶するデータ量を削減できる。
In recent years, a deduplication technique has been proposed as one of data backup methods (see Patent Document 1). The deduplication technology is a technology that can efficiently use storage capacity by detecting duplication of block data in the storage and eliminating one of the duplicated block data.
By using such a technique, the data center can eliminate the accumulation of block data storing the same information in the storage. Furthermore, the data center can reduce the amount of data stored in the storage.
データセンタは、ネットワークを介して他のデータセンタと連携することで、データセンタ間でのブロックデータの重複排除を行う(以下、「グローバル重複排除処理」という。)。複数のデータセンタは、グローバル重複排除処理を行うことによって、データセンタ間でブロックデータの重複を排除し、データセンタ全体でストレージを効率的に利用することを可能にする。
このようなデータセンタが実現されている場合、ユーザはリストアを行うことによって所望のデータを取得する。具体的には、ユーザは、所望のファイルを復元するのに必要となるブロックデータを各データセンタから取得し、取得されたブロックデータに対してリストア処理を行うことによって所望のファイルを復元する。
Data centers perform deduplication of block data between data centers by cooperating with other data centers via a network (hereinafter referred to as “global deduplication processing”). A plurality of data centers perform global deduplication processing, thereby eliminating duplication of block data between data centers and making it possible to efficiently use storage throughout the data centers.
When such a data center is realized, the user acquires desired data by performing restoration. Specifically, the user obtains block data necessary for restoring a desired file from each data center, and restores the desired file by performing a restoration process on the obtained block data.
しかしながら、グローバル重複排除処理を行う場合、重複排除されたブロックデータは、データセンタ全体で唯一のブロックデータとなってしまう。ユーザは、リストアを行う際に、ファイルをリストアするのに必要なブロックデータを保持しているデータセンタに、必要なブロックデータを取得しに行かなければならない。そのため、リストア時のブロックデータ転送にかかる遅延の影響によってリストア時間が大幅にかかってしまうという問題があった。 However, when global deduplication processing is performed, the deduplicated block data becomes the only block data in the entire data center. When performing the restore, the user must go to the data center that holds the block data necessary for restoring the file to obtain the necessary block data. For this reason, there is a problem that the restoration time is significantly increased due to the influence of the delay in the block data transfer at the time of restoration.
上記事情に鑑み、本発明は、リストア時間を短縮させる技術の提供を目的としている。 In view of the above circumstances, an object of the present invention is to provide a technique for shortening the restoration time.
本発明の一態様は、複数のブロックデータで構成される1つのデータを、要求に応じて前記複数のブロックデータを送信することによって送信先において前記1つのデータを復元可能であり、前記ブロックデータは、他のブロックデータの一部である部分ブロックデータを複数組み合わせることによって生成可能であり、複数の地点にそれぞれ設置され1以上の前記ブロックデータを記憶する複数のデータセンタから、ユーザが要求するデータを生成するために必要となる前記ブロックデータ又は前記部分ブロックデータを送信する通信システムにおける管理システムであって、前記ブロックデータ毎に、前記ブロックデータを生成可能な前記複数の部分ブロックデータの組み合わせを記憶するブロックリスト記憶部と、前記ブロックデータ毎に、前記ブロックデータを前記複数の部分ブロックデータを組み合わせることによって生成する際に要する処理時間を、前記ブロックリスト記憶部に記憶される前記組み合わせ毎に算出する処理時間算出部と、前記データ毎に、前記データを構成する前記ブロックデータを前記データセンタから受信するのに要する処理時間と、前記処理時間算出部によって算出された処理時間と、に基づいて、前記ブロックデータ毎の取得方法を決定する決定部と、を備える管理システムである。 According to one embodiment of the present invention, one piece of data composed of a plurality of pieces of block data can be restored at a transmission destination by transmitting the plurality of pieces of block data in response to a request. Can be generated by combining a plurality of partial block data, which is a part of other block data, and is requested by a user from a plurality of data centers respectively installed at a plurality of points and storing one or more block data. A management system in a communication system for transmitting the block data or the partial block data necessary for generating data, and a combination of the plurality of partial block data capable of generating the block data for each block data A block list storage unit for storing the block data and the block data In addition, a processing time calculation unit that calculates a processing time required for generating the block data by combining the plurality of partial block data for each combination stored in the block list storage unit, and for each data The acquisition method for each block data is determined based on the processing time required to receive the block data constituting the data from the data center and the processing time calculated by the processing time calculation unit. And a determination unit.
本発明の一態様は、上記の管理システムであって、前記処理時間算出部は、前記ブロックデータを生成するために必要となる複数の前記部分ブロックデータを受信するのに要する通信時間と、前記複数の部分ブロックデータを組み合わせることによって前記ブロックデータを生成するのに要する生成処理時間と、の和に基づいて前記処理時間を算出する。
One aspect of the present invention is the above-described management system, the processing time calculation unit, a communication time required to receive a plurality of the partial block data required to generate the block data, the The processing time is calculated based on the sum of the generation processing time required to generate the block data by combining a plurality of partial block data.
本発明の一態様は、上記の管理システムであって、前記決定部は、前記ブロックデータ毎に、前記ブロックデータを前記データセンタから受信するのに要する処理時間と、前記処理時間算出部によって算出された各処理時間と、を比較して最も短い処理時間における取得方法を候補として選択する候補選択部と、前記データを構成する複数のブロックデータの各候補の前記処理時間のうち最長の処理時間を最長時間として決定し、前記最長時間の候補を最長候補として決定する最長時間決定部と、前記最長候補以外の候補毎に、前記処理時間が前記最長時間を超えない範囲で、前記生成処理時間が最短となる前記取得方法を最終候補として決定する最終候補決定部と、前記最長候補及び前記最終候補の組み合わせを、前記データを取得する際の処理方法として出力する出力部と、を備える。 One aspect of the present invention is the management system described above, wherein the determination unit calculates, for each block data, a processing time required to receive the block data from the data center and the processing time calculation unit. A candidate selection unit that compares the obtained processing times with each other and selects an acquisition method in the shortest processing time as a candidate, and the longest processing time among the processing times of the candidates of the plurality of block data constituting the data A longest time determination unit for determining the longest time candidate as the longest candidate, and for each candidate other than the longest candidate, the generation processing time within a range not exceeding the longest time A final candidate determination unit that determines the acquisition method that is the shortest as a final candidate, and a combination of the longest candidate and the final candidate when acquiring the data And an output unit for outputting as the processing method, the.
本発明により、リストア時間を短縮させることが可能となる。 According to the present invention, the restoration time can be shortened.
以下、本発明の一実施形態を、図面を参照しながら説明する。
図1は、ファイルを構成するデータの関係性を表した図である。図1(A)は、ユーザからバックアップされたファイル1の構成例を表す図である。ファイル1は、複数のブロックデータで構成される。ブロックデータとは、ファイルをリストアするのに必要となるデータである。図1(A)では、例えば、ファイル1を構成するブロックデータは、“A”、“B”、“C”である。
図1(B)は、ブロックデータの構成例を表す図である。ブロックデータは、複数の部分ブロックデータを用いて生成することができる。部分ブロックデータとは、ブロックデータに対して分割処理が行われることによって生成されるデータである。言い換えれば、部分ブロックデータとは、ブロックデータの一部分を切り出して構成されるデータである。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram showing the relationship of data constituting a file. FIG. 1A is a diagram illustrating a configuration example of a file 1 backed up by a user. File 1 is composed of a plurality of block data. Block data is data required to restore a file. In FIG. 1A, for example, the block data constituting the file 1 are “A”, “B”, and “C”.
FIG. 1B is a diagram illustrating a configuration example of block data. Block data can be generated using a plurality of partial block data. Partial block data is data generated by performing a division process on block data. In other words, the partial block data is data configured by cutting out a part of the block data.
図1(B)の例では、ブロックデータ“E”は、“110111”の2進数で表される。また、ブロックデータ“F”は、“001101”の2進数で表される。ブロックデータ“E”は、分割処理が行われることによって部分ブロックデータ“E1”、部分ブロックデータ“E2”に分割される。部分ブロックデータ“E1”は、“110”の2進数で表される。部分ブロックデータ“E2”は、“111”の2進数で表される。
ブロックデータ“F”は、分割処理が行われることによって部分ブロックデータ“F1”、部分ブロックデータ“F2”に分割される。部分ブロックデータ“F1”は、“001”の2進数で表される。部分ブロックデータ“F2”は、“101”の2進数で表される。
In the example of FIG. 1B, the block data “E” is represented by a binary number “110111”. The block data “F” is represented by a binary number “001101”. The block data “E” is divided into partial block data “E1” and partial block data “E2” by performing a division process. The partial block data “E1” is represented by a binary number “110”. The partial block data “E2” is represented by a binary number “111”.
The block data “F” is divided into partial block data “F1” and partial block data “F2” by performing a division process. The partial block data “F1” is represented by a binary number “001”. The partial block data “F2” is represented by a binary number “101”.
ブロックデータ“A”は、“110101”の2進数で表される。ブロックデータ“A”は、分割処理が行われることによって部分ブロックデータ“A1”、部分ブロックデータ“A2”に分割される。部分ブロックデータ“A1”は、“110”の2進数で表される。部分ブロックデータ“A2”は、“101”の2進数で表される。部分ブロックデータ“A1”と部分ブロックデータ“E1”とは、同じ2進数で表される。また、部分ブロックデータ“A2”と部分ブロックデータ“F2”とは、同じ2進数で表される。すなわち、図1(B)に示すように、ブロックデータ“A”は、部分ブロックデータ“E1”と部分ブロックデータ“F2”との組み合わせにより生成することが可能である。 The block data “A” is represented by a binary number “110101”. The block data “A” is divided into partial block data “A1” and partial block data “A2” by performing the division process. The partial block data “A1” is represented by a binary number “110”. The partial block data “A2” is represented by a binary number “101”. The partial block data “A1” and the partial block data “E1” are represented by the same binary number. Further, the partial block data “A2” and the partial block data “F2” are represented by the same binary number. That is, as shown in FIG. 1B, the block data “A” can be generated by a combination of the partial block data “E1” and the partial block data “F2”.
図2は、本実施形態における管理システムのシステム構成を示す図である。本実施形態の管理システムは、複数のデータセンタ10、中央管理装置20、複数のPC30及びネットワーク40を備える。
データセンタ10は、ネットワーク40を介してPC30からバックアップされたファイル(以下、「バックアップファイル」という。)を記憶している。
中央管理装置20は、情報処理装置を用いて構成される。中央管理装置20は、各データセンタ10から転送されるブロックデータを管理する。
FIG. 2 is a diagram showing a system configuration of the management system in the present embodiment. The management system of this embodiment includes a plurality of
The
The
PC30は、ネットワーク40を介してデータセンタ10にファイルをバックアップする。また、PC30は、ネットワーク40を介してデータセンタ10からデータを受信し、ユーザが所望するファイルをリストアする。
ネットワーク40は、どのように構成されたネットワークでも良い。例えば、インターネットを用いて構成されてもよい。
The
The
図3は、データセンタ10及び中央管理装置20の機能構成を表す概略ブロック図である。まず、データセンタ10の機能構成を説明する。
データセンタ10は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、データセンタプログラムを実行する。データセンタプログラムの実行によって、データセンタ10は、通信部101、構成リスト作成部102、リストアデータ記憶部103、重複排除部104、ブロックデータ記憶部105、ブロックリスト記憶部106、処理時間算出部107、決定部108を備える装置として機能する。また、決定部108は、候補選択部109、最長時間決定部110、最終候補決定部111、出力部112、インデックスリスト記憶部113、部分ブロックデータ生成部114として機能する。なお、データセンタ10の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されても良い。また、データセンタプログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、データセンタプログラムは、電気通信回線を介して送受信されても良い。
FIG. 3 is a schematic block diagram showing the functional configuration of the
The
通信部101は、他のデータセンタ10、中央管理装置20及びPC30との間でデータの送受信を行う。
構成リスト作成部102は、リストアデータ構成リストを作成する。リストアデータ構成リストは、各バックアップファイルについて、復元するために必要となるブロックデータの情報が定義されているリストである。
リストアデータ記憶部103は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。例えば、半導体記憶装置は、SSD(Solid State Drive)である。リストアデータ記憶部103は、構成リスト作成部102で作成されたリストアデータ構成リストを記憶している。
The
The configuration
The restore
重複排除部104は、複数のデータセンタ10間でグローバル重複排除処理を行う。重複排除部104は、グローバル重複排除処理を行うことによって他のデータセンタ10に存在しないブロックデータを選択する。
ブロックデータ記憶部105は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。ブロックデータ記憶部105は、他のデータセンタ10に存在しないブロックデータを記憶している。
The
The block
ブロックリスト記憶部106は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。例えば、半導体記憶装置は、SSDである。ブロックリスト記憶部106は、部分ブロックリスト及びブロック配置リストを記憶している。部分ブロックリストは、ブロックデータ毎にブロックデータを生成可能な部分ブロックデータの組み合わせ(以下、「部分ブロックグループ」という。)が記述されているリストである。なお、部分ブロックグループには、ブロックデータをデータセンタ10から直接取得する部分ブロックグループが含まれてもよい。ブロック配置リストは、各部分ブロックデータに関する情報が記述されているリストである。例えば、ブロック配置リストには、部分ブロックデータのブロックサイズ、部分ブロックデータの配置情報(部分ブロックデータを記憶しているデータセンタ10の所在地)が記述されても良い。
The block
処理時間算出部107は、ブロックリスト記憶部106に記憶されている部分ブロックリスト及びブロック配置リストに基づいて、総リストア時間(処理時間)を算出する。総リストア時間は、ファイルのリストアを行うのに要する処理時間の合計時間である。処理時間算出部107は、部分ブロックリスト及びブロック配置リストを用いて、部分ブロックグループ毎に総リストア時間を算出する。
The processing
決定部108は、ファイルを構成するブロックデータ毎に1つの部分ブロックグループを決定する。以下、決定部108の具体的な構成について説明する。
候補選択部109は、ファイルを構成するブロックデータ毎に候補部分ブロックグループを選択する。候補部分ブロックグループは、部分ブロックグループの中で総リストア時間が最も短い部分ブロックグループである。
最長時間決定部110は、候補選択部109が選択した候補部分ブロックグループの中から、総リストア時間が最長となる部分ブロックグループ(以下、「最長部分ブロックグループ」という。)を決定する。最長時間決定部110は、最長部分ブロックグループの総リストア時間を最長リストア時間として取得する。
The
The
The longest
最終候補決定部111は、まず、候補部分ブロックグループ毎に、ブロックデータをデータセンタ10から直接取得する場合に要する総リストア時間(以下、「直接リストア時間」という。)を取得する。そして、最終候補決定部111は、最長部分ブロックグループ以外の候補部分ブロックグループ毎に、最長リストア時間と、直接リストア時間と、を比較する。
The final
最長リストア時間より直接リストア時間の方が短い場合、最終候補決定部111は、ブロックデータをデータセンタ10から直接取得する部分ブロックグループ(以下、「直接リストアグループ」という。)を、最終部分ブロックグループに決定する。
一方、最長リストア時間より直接リストア時間の方が長い場合、最終候補決定部111は、候補部分ブロックグループを最終部分ブロックグループに決定する。最終候補決定部111は、このような処理をブロックデータ毎に行うことによって、ブロックデータ毎の最終部分ブロックグループを決定する。
When the direct restore time is shorter than the longest restore time, the final
On the other hand, when the direct restore time is longer than the longest restore time, the final
出力部112は、最長部分ブロックグループ及び最終部分ブロックグループに基づいて、ファイル毎にインデックスリストを生成する。インデックスリストは、総リストア時間が最短となる部分ブロックデータの組み合わせが記述されたリストである。出力部112は、生成したインデックスリストをインデックスリスト記憶部113に出力する。出力部112は、インデックスリストを生成する際に各部分ブロックデータの先頭ポインタ情報及びバイト数をインデックスリストに記録する。
The
インデックスリスト記憶部113は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。例えば、半導体記憶装置は、SSDである。インデックスリスト記憶部113は、出力部112が出力したインデックスリストを記憶する。インデックスリスト記憶部113は、出力部112がインデックスリストを出力する度に、インデックスリストを追加して記憶する。
部分ブロックデータ生成部114は、インデックスリスト記憶部113が記憶しているインデックスリストを参照することによって、ブロックデータの分割処理を行い、部分ブロックデータを生成する。例えば、部分ブロックデータ生成部114は、先頭ポインタ情報が指し示すアドレスから、インデックスリストに記録されているバイト数分のデータを、部分ブロックデータとして取得する。
The index
The partial block data generation unit 114 performs block data division processing by referring to the index list stored in the index
次に、中央管理装置20の機能構成を説明する。中央管理装置20は、バスで接続されたCPUやメモリや補助記憶装置などを備え、管理プログラムを実行する。管理プログラムの実行によって、中央管理装置20は、通信部201、ブロックデータ記憶部202、分割処理部203、検出部204、更新部205を備える装置として機能する。なお、中央管理装置20の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されても良い。また、管理プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。また、管理プログラムは、電気通信回線を介して送受信されても良い。
Next, the functional configuration of the
通信部201は、複数のデータセンタ10との間でのデータの送受信を行う。
ブロックデータ記憶部202は、磁気ハードディスク装置や半導体記憶装置などの記憶装置を用いて構成される。例えば、半導体記憶装置は、SSDである。ブロックデータ記憶部202は、通信部201が複数のデータセンタ10から受信したブロックデータを記憶している。
分割処理部203は、ブロックデータ記憶部202に記憶されているブロックデータの分割処理を行う。分割処理は、1つのブロックデータを、複数の部分ブロックデータに細分化する処理である。分割処理部203は、ブロックデータを分割処理することによって部分ブロックデータを生成する。
検出部204は、生成された部分ブロックデータの重複を検出する。
更新部205は、検出部204による検出結果に応じて、部分ブロックリスト及びブロック配置リストを更新する。
The
The block
The
The
The
図4は、部分ブロックリスト及びブロック配置リストの具体例を示す図である。
図4(A)は、部分ブロックリストの具体例を表す図である。部分ブロックリストは、レコード50を複数有する。レコード50は、ブロックデータ及び部分ブロックグループの値を有する。
ブロックデータの値は、ブロックデータの識別情報を表す。
FIG. 4 is a diagram illustrating specific examples of the partial block list and the block arrangement list.
FIG. 4A is a diagram illustrating a specific example of the partial block list. The partial block list has a plurality of
The value of the block data represents identification information of the block data.
部分ブロックグループの値は、ブロックデータを生成可能な部分ブロックデータの識別情報を表す。なお、図4では部分ブロックグループに含まれる部分ブロックデータの数が2つであるが、1つであっても良いし3つ以上であっても良い。
図4(A)では、例えば、ブロックデータ“A”は、部分ブロックデータ“E1”と部分ブロックデータ“F2”との組み合わせによって生成可能である。また、ブロックデータ“A”は、部分ブロックデータ“D1”と部分ブロックデータ“J2”との組み合わせによって生成可能である。
The value of the partial block group represents identification information of partial block data that can generate block data. In FIG. 4, the number of partial block data included in the partial block group is two, but may be one or three or more.
In FIG. 4A, for example, block data “A” can be generated by a combination of partial block data “E1” and partial block data “F2”. The block data “A” can be generated by a combination of the partial block data “D1” and the partial block data “J2”.
図4(B)は、ブロック配置リストの具体例を表す図である。ブロック配置リストは、レコード51を複数有する。レコード51は、部分ブロックデータ、ブロックサイズ、配置先の各値を有する。
部分ブロックデータの値は、部分ブロックデータの識別情報を表す。ブロックサイズは、部分ブロックデータ容量の大きさを表す。ブロックサイズは、例えば、単位B(バイト)で表されても良い。配置先は、部分ブロックデータの配置情報(部分ブロックデータを記憶しているデータセンタ10の所在地)を表す。
図4(B)では、例えば、部分ブロックデータ“E1”は、大きさが100MB(メガバイト)であり、“愛媛”のデータセンタ10に記憶されている。
FIG. 4B is a diagram illustrating a specific example of the block arrangement list. The block arrangement list has a plurality of
The value of the partial block data represents identification information of the partial block data. The block size represents the size of the partial block data capacity. The block size may be expressed in units of B (bytes), for example. The placement destination represents placement information of partial block data (location of the
In FIG. 4B, for example, the partial block data “E1” has a size of 100 MB (megabytes) and is stored in the
図5〜図7を用いて、インデックスリストを作成する具体的な方法について説明する。以下の説明では簡単化のために、ファイル1のインデックスリストを作成する場合について説明する。ファイル1は、例えば、ブロックデータ“A”、ブロックデータ“B”及びブロックデータ“C”で構成される。 A specific method for creating an index list will be described with reference to FIGS. In the following description, a case where an index list of file 1 is created will be described for the sake of simplicity. The file 1 is composed of, for example, block data “A”, block data “B”, and block data “C”.
図5は、ブロックデータ“A”に関するブロックデータリストの構成図である。
ブロックデータリストは、リストア情報を表すレコード52を複数有する。レコード52は、ブロックデータ部分ブロックグループ、CPU処理時間(生成処理時間)、転送時間(通信時間)、総リストア時間の各値を有する。
ブロックデータの値は、ブロックデータの識別情報を表す。
部分ブロックグループの値は、各部分ブロックグループに含まれる部分ブロックデータの識別情報を表す。
FIG. 5 is a configuration diagram of a block data list regarding the block data “A”.
The block data list has a plurality of
The value of the block data represents identification information of the block data.
The value of the partial block group represents identification information of partial block data included in each partial block group.
CPU処理時間の値は、1つのブロックデータを生成する際に要する生成処理時間を表す。なお、直接リストアグループを表すレコード52(図5最上段のレコード52)のCPU処理時間は、部分ブロックデータを組み合わせる必要がないため“0”である。CPU処理時間は、部分ブロックデータの数毎にテーブルとして保持されていても良い。この場合、処理時間算出部107は、テーブルを参照することによって、部分ブロックグループに含まれる部分ブロックデータの数に応じたCPU処理時間を算出する。
The value of the CPU processing time represents the generation processing time required for generating one block data. Note that the CPU processing time of the
転送時間の値は、リストアに必要なブロックデータ及び部分ブロックデータを、各データセンタ10からリストア要求元(PC30)に転送する際に要する時間を表す。転送時間は、例えばブロック配置リストに基づいてリストアを行うのに必要なブロックデータ及び部分ブロックデータのブロックサイズを、ブロックデータ及び部分ブロックデータをデータセンタ10から受信するのに要する遅延時間で除算することで算出される。
総リストア時間の値は、各部分ブロックグループの総リストア時間を表す。具体的には、レコード52毎にCPU処理時間と転送時間との和によって算出される合計時間である。
The transfer time value represents the time required to transfer the block data and partial block data necessary for restoration from each
The value of the total restore time represents the total restore time of each partial block group. Specifically, this is the total time calculated by the sum of the CPU processing time and the transfer time for each record 52.
図6は、ファイル1を構成するブロックデータ毎のブロックデータリストを表す図である。
図6(A)は、ブロックデータ“A”に関するブロックデータリストの具体例を表す図である。図6(B)は、ブロックデータ“B”に関するブロックデータリストの具体例を表す図である。図6(C)は、ブロックデータ“C”に関するブロックデータリストの具体例を表す図である。
FIG. 6 is a diagram showing a block data list for each block data constituting the file 1.
FIG. 6A is a diagram illustrating a specific example of a block data list regarding the block data “A”. FIG. 6B is a diagram illustrating a specific example of a block data list regarding the block data “B”. FIG. 6C is a diagram illustrating a specific example of a block data list regarding the block data “C”.
候補選択部109は、ファイルを構成するブロックデータ毎に候補部分ブロックグループを選択する。図6(A)では、部分ブロックデータ“E1”及び“F2”で構成される部分ブロックグループの総リストア時間が“10”であり、ブロックデータ“A”に関する部分ブロックグループの中で最も総リストア時間が短い。したがって、候補選択部109は、部分ブロックデータ“E1”及び“F2”で構成される部分ブロックグループをブロックデータ“A”の候補部分ブロックグループに選択する(図6(A)の太枠)。
The
図6(B)では、ブロックデータ“B”のみで構成される直接リストアグループの総リストア時間(直接リストア時間」が“14”であり、ブロックデータ“B”に関する部分ブロックグループの中で最も総リストア時間が短い。したがって、候補選択部109は、ブロックデータ“B”のみで構成される直接リストアグループをブロックデータ“B”の候補部分ブロックグループに選択する(図6(B)の太枠)。
In FIG. 6B, the total restore time (direct restore time) of the direct restore group composed only of the block data “B” is “14”, which is the most total among the partial block groups related to the block data “B”. Therefore, the restore time is short, so that the
図6(C)では、部分ブロックデータ“P2”及び“O2”で構成される部分ブロックグループの総リストア時間が“11”であり、ブロックデータ“C”に関する部分ブロックグループの中で最も総リストア時間が短い。したがって、候補選択部109は、部分ブロックデータ“P2”及び“O2”で構成される部分ブロックグループをブロックデータ“C”の候補部分ブロックグループに選択する(図6(C)の太枠)。
In FIG. 6C, the total restoration time of the partial block group composed of the partial block data “P2” and “O2” is “11”, which is the most total restoration among the partial block groups related to the block data “C”. The time is short. Therefore, the
次に、最長時間決定部110は、ブロックデータリスト毎の候補部分ブロックグループの中から、総リストア時間が最長となる部分ブロックグループを決定する。図6では、ブロックデータ“B”の候補部分ブロックグループの総リストア時間が最も長い。したがって、最長時間決定部110は、ブロックデータ“B”の総リストア時間をファイル1の最長リストア時間に決定する。また、最長時間決定部110は、最長リストア時間の部分ブロックグループを最長部分ブロックグループに決定する。
Next, the longest
図7は、ファイル1を構成するブロックデータ毎のブロックデータリストを表す図である。
図7において、最終候補決定部111は、最長部分ブロックグループ以外の候補部分ブロックグループ毎に、最終部分ブロックグループを決定する。最終候補決定部111は、候補部分ブロックグループ毎に、最長リストア時間と直接リストア時間とを比較する。直接リストア時間が最長リストア時間よりも短い場合、最終候補決定部111は、直接リストアグループを最終部分ブロックグループに決定する。一方、直接リストア時間が最長リストア時間より長い場合、最終候補決定部111は、候補部分ブロックグループを最終部分ブロックグループに決定する。
FIG. 7 is a diagram illustrating a block data list for each block data constituting the file 1.
In FIG. 7, the final
図7(A)において、最終候補決定部111は、ブロックデータ“A”の直接リストア時間と、最長リストア時間とを比較する。ブロックデータ“A”の直接リストア時間は“12”であり、最長リストア時間は“14”である。すなわち、ブロックデータ“A”の直接リストア時間は最長リストア時間より短い。そのため、最終候補決定部111は、直接リストアグループを、ブロックデータ“A”の最終部分ブロックグループに決定する。
In FIG. 7A, the final
図7(C)において、最終候補決定部111は、ブロックデータ“C”の直接リストア時間と、最長リストア時間とを比較する。ブロックデータ“C”の直接リストア時間は“15”であり、最長リストア時間は“14”である。すなわち、ブロックデータ“C”の直接リストア時間は最長リストア時間より長い。そのため、最終候補決定部111は、候補部分ブロックグループを、ブロックデータ“C”の最終部分ブロックグループに決定する。
出力部112は、最長部分ブロックグループと最終部分ブロックグループとに基づいて、ファイル1のインデックスリストを生成する。
In FIG. 7C, the final
The
図8及び図9は、本実施形態のインデックスリスト作成の処理の流れを示すフローチャートである。
通信部101は、複数のPC30からバックアップファイルを受信する(ステップS101)。構成リスト作成部102は、リストアデータ構成リストを作成する。構成リスト作成部102は、複数のPC30からバックアップファイルをリストアデータ構成リストにファイル単位で記述する(ステップS102)。重複排除部104は重複排除処理を行うことによって、データセンタ10間でブロックデータの重複を排除する(ステップS103)。各データセンタ10は、自装置(データセンタ10)が記憶しているブロックデータを中央管理装置20に転送する(ステップS104)。
8 and 9 are flowcharts showing the flow of processing for creating an index list according to this embodiment.
The
中央管理装置20の通信部201は、各データセンタ10から転送されたブロックデータを受信する。分割処理部203は、受信したブロックデータの分割処理を行う。分割処理部203はブロックデータを生成可能な部分ブロックデータを生成する。検出部204は、分割処理部203が生成した部分ブロックデータの重複を検出する(ステップS105)。
The
更新部205は、検出部204による検出結果に応じて、部分ブロックリストを更新する(ステップS106)。更新部205は、検出部204による検出結果に応じて、ブロック配置リストを更新する(ステップS107)。通信部201は、部分ブロックリスト及びブロック配置リストを、各データセンタ10に転送する(ステップS108)。
The
データセンタ10の通信部101は、中央管理装置20から転送された部分ブロックリスト及びブロック配置リストを受信する。通信部101は、受信した部分ブロックリスト及びブロック配置リストをブロックリスト記憶部106に記録する。処理時間算出部107は、ブロックリスト記憶部106に記憶されている部分ブロックリスト及びブロック配置リストに基づいて、ファイルを構成する部分ブロックデータ毎に部分ブロックグループの総リストア時間を算出する(ステップS109)。
The
候補選択部109は、ファイルを構成するブロックデータ毎に部分ブロックグループの中から、総リストア時間が最も短い部分ブロックグループ(候補部分ブロックグループ)を選択する(ステップS110)。
最長時間決定部110は、候補部分ブロックグループの中から、総リストア時間が最長となる最長部分ブロックグループを決定する。最長時間決定部110は、最長部分ブロックグループの総リストア時間を最長リストア時間として取得する(ステップS111)。
The
The longest
最終候補決定部111は、最長部分ブロックグループ以外の候補部分ブロックグループ毎に、直接リストア時間と直接リストア時間とを比較する(ステップS112)。直接リストア時間が最長リストア時間よりも長い場合(ステップS112−YES)、最終候補決定部111は、候補部分ブロックグループを最終部分ブロックグループに決定する(ステップS113)。
The final
一方、ステップS112の処理において、直接リストア時間が最長リストア時間よりも短い場合(ステップS112−NO)、最終候補決定部111は、直接リストアグループを最終部分ブロックグループに決定する(ステップS114)。
出力部112は、最終部分ブロックグループと最長部分ブロックグループとに基づいて、インデックスリストを生成する(ステップS115)。出力部112は、生成したインデックスリストをインデックスリスト記憶部113に出力する。インデックスリスト記憶部113は、出力部112がインデックスリストを出力する度に、インデックスリストを追加し記憶する(ステップS116)。
On the other hand, when the direct restore time is shorter than the longest restore time in the process of step S112 (step S112—NO), the final
The
図10は、本実施形態のリストアの処理の流れを示すフローチャートである。
データセンタ10の通信部101は、ネットワーク40を介してPC30から送信されたユーザのリストア要求を受信する(ステップS201)。通信部101は、受信したリストア要求に応じてインデックスリストを参照することによって、リストア要求されたファイルを構成するブロックデータ及び部分ブロックデータとその配置先を判定する(ステップS202)。通信部101は、リストア要求されたファイルを構成するブロックデータ及び部分ブロックデータのうち、自装置(データセンタ10)に記憶されているデータについては、ブロックデータ記憶部105からブロックデータを読み出す。通信部101は、インデックスリストを参照することによって、リストア要求されたファイルを構成するブロックデータを要求元(PC30)に送信する。
FIG. 10 is a flowchart showing the flow of restoration processing according to this embodiment.
The
また、部分ブロックデータ生成部114は、インデックスリストに記憶されている先頭ポインタ情報及びバイト数を参照する。部分ブロックデータ生成部114は、先頭ポインタ情報及びバイト数に基づいて、ブロックデータの分割処理を行い、部分ブロックデータを生成する。通信部101は、生成された部分ブロックデータを要求元(PC30)に送信する。通信部101は、リストア要求されたファイルを構成するブロックデータ及び部分ブロックデータのうち、自装置(データセンタ10)に記憶されていないデータについては、その配置先のデータセンタ10に対して、要求元(PC30)へブロックデータ又は部分ブロックデータを転送することを要求する(ステップS203)。
Further, the partial block data generation unit 114 refers to the head pointer information and the number of bytes stored in the index list. The partial block data generation unit 114 performs block data division processing based on the head pointer information and the number of bytes, and generates partial block data. The
以上のように構成された管理システムによれば、各データセンタ10は、自装置と各データセンタ10との間のデータ転送時間に基づいて、ファイル毎にリストアに要する時間を最短にするためのインデックスリストを作成する。そのため、ユーザによってリストアが要求されているファイルについて、リストアに要する時間を低減する事が可能となる。
According to the management system configured as described above, each
また、最長リストア時間よりも短い時間でリストア可能なブロックデータについては、部分ブロックデータの結合を行うことなくブロックデータを直接転送するように、インデックスリストが生成される。一般的に、部分ブロックデータを結合してブロックデータを生成する処理はユーザの装置(PC30)で行われる。そのため、結合を行う回数を減らすことによって、ユーザの装置(PC30)におけるCPUの処理負荷を軽減することができる。 For block data that can be restored in a time shorter than the longest restoration time, an index list is generated so that the block data is directly transferred without combining partial block data. In general, processing for combining partial block data to generate block data is performed by a user device (PC 30). Therefore, the processing load of the CPU in the user device (PC 30) can be reduced by reducing the number of times of combining.
<変形例>
ブロック配置リストのレコード51は、ブロックサイズ及び配置先以外の情報を有しても良い。
上述したステップS109〜ステップS115の処理は、データセンタ10以外で行われても良い。例えば、中央管理装置20がインデックスリストを作成して、各データセンタ10にインデックスリストを転送しても良い。各データセンタ10の通信部101は、転送されたインデックスリストをインデックスリスト記憶部113に記録する。
複数のデータセンタ10の中の1つのデータセンタ10が、中央管理装置20として機能するように構成されても良い。
ユーザによって操作される装置は、上述したPC30に限定される必要は無い。例えば、PC(パーソナルコンピュータ)に変えて、スマートフォン、携帯電話機、ゲーム装置、テレビ受像機、映像記録装置などの通信端末装置であればどのような装置であっても良い。
<Modification>
The block
The processes in steps S109 to S115 described above may be performed in a place other than the
One
The device operated by the user need not be limited to the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
10…データセンタ, 20…中央管理装置, 30…PC, 40…ネットワーク, 101…通信部, 102…構成リスト作成部, 103…リストアデータ記憶部, 104…重複排除部, 105…ブロックデータ記憶部, 106…ブロックリスト記憶部, 107…処理時間算出部, 108…決定部, 109…候補選択部, 110…最長時間決定部, 111…最終候補決定部, 112…出力部, 113…インデックスリスト記憶部, 114…部分ブロックデータ生成部, 201…通信部, 202…ブロックデータ記憶部, 203…分割処理部, 204…検出部, 205…更新部
DESCRIPTION OF
Claims (3)
前記ブロックデータ毎に、前記ブロックデータを生成可能な前記複数の部分ブロックデータの組み合わせを記憶するブロックリスト記憶部と、
前記ブロックデータ毎に、前記ブロックデータを前記複数の部分ブロックデータを組み合わせることによって生成する際に要する処理時間を、前記ブロックリスト記憶部に記憶される前記組み合わせ毎に算出する処理時間算出部と、
前記データ毎に、前記データを構成する前記ブロックデータを前記データセンタから受信するのに要する処理時間と、前記処理時間算出部によって算出された処理時間と、に基づいて、前記ブロックデータ毎の取得方法を決定する決定部と、
を備える管理システム。 One data composed of a plurality of block data can be restored at a transmission destination by transmitting the plurality of block data in response to a request, and the block data includes other block data It can be generated by combining a plurality of partial block data, which is a part, and is necessary for generating data requested by a user from a plurality of data centers installed at a plurality of points and storing one or more of the block data. A management system in a communication system for transmitting the block data or the partial block data,
For each block data, a block list storage unit that stores a combination of the plurality of partial block data capable of generating the block data;
For each block data, a processing time calculation unit that calculates a processing time required for generating the block data by combining the plurality of partial block data for each combination stored in the block list storage unit;
Acquisition for each block data based on the processing time required to receive the block data constituting the data from the data center and the processing time calculated by the processing time calculation unit for each data A determination unit for determining a method;
A management system comprising:
前記ブロックデータ毎に、前記ブロックデータを前記データセンタから受信するのに要する処理時間と、前記処理時間算出部によって算出された各処理時間と、を比較して最も短い処理時間における取得方法を候補として選択する候補選択部と、
前記データを構成する複数のブロックデータの各候補の前記処理時間のうち最長の処理時間を最長時間として決定し、前記最長時間の候補を最長候補として決定する最長時間決定部と、
前記最長候補以外の候補毎に、前記処理時間が前記最長時間を超えない範囲で、前記生成処理時間が最短となる前記取得方法を最終候補として決定する最終候補決定部と、
前記最長候補及び前記最終候補の組み合わせを、前記データを取得する際の処理方法として出力する出力部と、
を備える請求項2に記載の管理システム。 The determination unit
For each block data, the processing time required to receive the block data from the data center is compared with each processing time calculated by the processing time calculation unit, and an acquisition method in the shortest processing time is selected. A candidate selector to select as,
A longest time determination unit that determines the longest processing time among the processing times of each candidate of a plurality of block data constituting the data as the longest time, and determines the longest time candidate as the longest candidate;
For each candidate other than the longest candidate, a final candidate determining unit that determines, as a final candidate, the acquisition method in which the generation processing time is the shortest in a range in which the processing time does not exceed the longest time;
An output unit that outputs a combination of the longest candidate and the final candidate as a processing method when acquiring the data;
The management system according to claim 2, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012200627A JP5966184B2 (en) | 2012-09-12 | 2012-09-12 | Management system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012200627A JP5966184B2 (en) | 2012-09-12 | 2012-09-12 | Management system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014056407A JP2014056407A (en) | 2014-03-27 |
JP5966184B2 true JP5966184B2 (en) | 2016-08-10 |
Family
ID=50613669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012200627A Active JP5966184B2 (en) | 2012-09-12 | 2012-09-12 | Management system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5966184B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6326981B2 (en) * | 2014-06-03 | 2018-05-23 | 富士通株式会社 | Restore program, restore system, and restore method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4601969B2 (en) * | 2004-01-27 | 2010-12-22 | 株式会社日立製作所 | File I / O controller |
JP5298982B2 (en) * | 2009-03-17 | 2013-09-25 | 日本電気株式会社 | Storage system |
US8769049B2 (en) * | 2009-04-24 | 2014-07-01 | Microsoft Corporation | Intelligent tiers of backup data |
JP5569074B2 (en) * | 2010-03-19 | 2014-08-13 | 日本電気株式会社 | Storage system |
-
2012
- 2012-09-12 JP JP2012200627A patent/JP5966184B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014056407A (en) | 2014-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809726B2 (en) | Distributed storage method and device | |
KR102007070B1 (en) | Reference block aggregating into a reference set for deduplication in memory management | |
JP5303038B2 (en) | Storage system that eliminates duplicate data | |
US20110225130A1 (en) | Storage device, and program and method for controlling storage device | |
JP2009205201A (en) | Data backup method using de-duplication technique, storage control communication device and program | |
WO2017020576A1 (en) | Method and apparatus for file compaction in key-value storage system | |
KR101983208B1 (en) | Data management method, node and system for database cluster | |
US20180060180A1 (en) | Systems and Processes For Data Backup And Recovery | |
JP5966184B2 (en) | Management system | |
US9733846B1 (en) | Integrated backup performance enhancements by creating affinity groups | |
JP6943008B2 (en) | Control programs, control methods, and information processing equipment | |
CN110896408B (en) | Data processing method and server cluster | |
JP5459388B2 (en) | Storage device | |
US10083121B2 (en) | Storage system and storage method | |
JP6287308B2 (en) | Replication control system, replication control method, and replication control program | |
CN112698783A (en) | Object storage method, device and system | |
JP2017142664A (en) | Data processing apparatus, data processing system, data processing method, and data processing program | |
JP2017097437A (en) | Information processing system, information processing equipment and program | |
JP6733213B2 (en) | Control device, storage device, storage system, control method, and program | |
WO2012053152A1 (en) | Storage system, data management device, method and program | |
JP6413792B2 (en) | Storage system | |
JP6110354B2 (en) | Heterogeneous storage server and file storage method thereof | |
JP6733214B2 (en) | Control device, storage system, control method, and program | |
US20230091577A1 (en) | Heterogenous replication in a hybrid cloud database | |
JP2018169842A (en) | Hierarchical storage management unit, hierarchical storage system, data management method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150306 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160324 |
|
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: 20160607 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160610 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5966184 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |