JP2018173701A - Data management system, storage device, backup device, method and program - Google Patents
Data management system, storage device, backup device, method and program Download PDFInfo
- Publication number
- JP2018173701A JP2018173701A JP2017069770A JP2017069770A JP2018173701A JP 2018173701 A JP2018173701 A JP 2018173701A JP 2017069770 A JP2017069770 A JP 2017069770A JP 2017069770 A JP2017069770 A JP 2017069770A JP 2018173701 A JP2018173701 A JP 2018173701A
- Authority
- JP
- Japan
- Prior art keywords
- backup
- block
- unit
- storage
- data
- 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.)
- Granted
Links
Images
Landscapes
- Retry When Errors Occur (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、ストレージ装置に記憶されたデータを管理するためのデータ管理システム、ストレージ装置、バックアップ装置、ストレージ装置のバックアップ方法およびストレージ装置のバックアッププログラムに関する。 The present invention relates to a data management system, a storage device, a backup device, a storage device backup method, and a storage device backup program for managing data stored in a storage device.
ストレージ装置に記憶されているデータをバックアップする方法として、ストレージ装置との間の転送量や、バックアップ装置側で保管するデータ量を削減するために、差分バックアップと呼ばれる方法が広く用いられている。差分バックアップは、バックアップ装置がバックアップを行う際に、1つ前のバックアップのタイミングからの差分のみをバックアップする方法である。 As a method for backing up data stored in the storage device, a method called differential backup is widely used in order to reduce the amount of data transferred to and from the storage device and the amount of data stored on the backup device side. The differential backup is a method of backing up only the difference from the timing of the previous backup when the backup device performs backup.
差分バックアップでは、バックアップ装置が、1回目で、対象とされるストレージ装置の全てのデータをバックアップ(取得および保管)した後、2回目以降で、対象とされるストレージ装置において前回のバックアップよりも後に更新された部分、すなわち差分データのみをバックアップする。バックアップ装置は、データをリストアする(過去のバックアップ時点の状態に戻す)ときには、初回のバックアップ時に取得したデータに対して、2回目から指定されたバックアップ時点までの差分データを順次適用していくことで、指定された時点のデータの状態に復元する。 In differential backup, the backup device backs up (acquires and stores) all the data in the target storage device at the first time, and then after the previous backup in the target storage device after the second time. Only the updated part, that is, the differential data is backed up. When the backup device restores data (returns to the state of the previous backup), it sequentially applies the differential data from the second time to the specified backup time to the data acquired at the time of the first backup. Then, restore to the data state at the specified time.
ストレージ装置が使用不能となる障害に備えるために、バックアップ装置は通常、ストレージ装置の外部に設けられる。 In order to prepare for a failure that makes the storage device unusable, the backup device is usually provided outside the storage device.
バックアップ装置がストレージ装置の外部に設けられる場合、バックアップ装置がバックアップの対象とされるストレージ装置の詳細な内部構造を知らなくても、更新されたデータを特定できることが好ましい。 When the backup device is provided outside the storage device, it is preferable that the updated data can be identified without knowing the detailed internal structure of the storage device to be backed up.
例えば、NAS(Network Attached Storage)ストレージ装置のファイルシステムのように、ストレージ装置を制御するファイルシステムが各ファイルの最終更新日時を管理している場合には、それらを参照することで差分データを特定できる。例えば、バックアップ装置は、自身の前回バックアップ日時と各ファイルの最終更新日時とを比較して、前回バックアップ日時よりファイルの最終更新日時が新しいか否かによって、各ファイルのバックアップ要否を判定すればよい。このように、ファイルシステムがファイルの更新日時を管理しているようなストレージ装置であれば、比較的簡単に差分データを特定できる。例えば、Microsoft Windows(登録商標)のバックアップに広く用いられているxcopyコマンドは、このようなアルゴリズムを実行するバックアップソフトウェアの例である。 For example, when the file system that controls the storage device manages the last update date and time of each file, such as a file system of a NAS (Network Attached Storage) storage device, the difference data is identified by referring to them. it can. For example, the backup device compares its own previous backup date and time with the last update date and time of each file, and determines whether or not backup of each file is necessary depending on whether or not the last update date and time of the file is newer than the previous backup date and time. Good. As described above, if the storage system manages the file update date and time, the difference data can be identified relatively easily. For example, the xcopy command widely used for the backup of Microsoft Windows (registered trademark) is an example of backup software that executes such an algorithm.
しかし、SAN(Storage Area Network)ストレージ装置などの、所定のブロック単位で記憶領域を管理する記憶ユニットを備えるストレージ装置の多くは、最終更新日時を管理する機構が存在しない。このため、そのようなストレージ装置に対しては、上記のような最終更新日時を利用して、記憶ユニットに格納されたデータブロックの中から差分データを特定することができない。 However, many storage apparatuses such as a SAN (Storage Area Network) storage apparatus including a storage unit that manages a storage area in a predetermined block unit do not have a mechanism for managing the last update date and time. For this reason, for such a storage apparatus, the difference data cannot be specified from the data blocks stored in the storage unit using the last update date and time as described above.
以下、本発明において、このような記憶ユニットを1つ以上備えるストレージ装置を「ブロックストレージ装置」と呼ぶ場合がある。なお、ブロックストレージ装置における記憶ユニットは、物理ユニットであるか、論理ユニット(Logical Unit; LU)であるかを問わない。また、以下では、ブロックストレージ装置が備える記憶ユニットの各々を、ブロックデバイスと呼ぶ場合がある。 Hereinafter, in the present invention, a storage apparatus including one or more such storage units may be referred to as a “block storage apparatus”. It does not matter whether the storage unit in the block storage apparatus is a physical unit or a logical unit (LU). Hereinafter, each storage unit included in the block storage apparatus may be referred to as a block device.
ブロックストレージ装置に対する差分バックアップの実現方法として、例えば、毎回全てのデータを取得して、前回のバックアップ時の状態と比較すれば、差分データを特定できる。しかし、当該方法では、全てのデータの読み出しとチェックサム計算などが必要となり、バックアップ装置側に負荷および時間的コストがかかるだけでなく、ストレージ装置側にも負荷がかかり、ストレージ装置の性能低下につながるという問題がある。 As a method for realizing the differential backup for the block storage device, for example, if all data is acquired every time and compared with the state at the time of the previous backup, the differential data can be specified. However, this method requires reading of all data and calculating the checksum, which not only incurs a load and time cost on the backup device side, but also places a load on the storage device side, which reduces the performance of the storage device. There is a problem of being connected.
また、他の方法として、ブロックストレージ装置側に、各ブロックと対応づけて最終更新時刻を記録する機構を持たせる方法がある(例えば、特許文献1参照)。 As another method, there is a method in which the block storage apparatus side has a mechanism for recording the last update time in association with each block (for example, see Patent Document 1).
また、他の方法として、バックアップ装置が、ブロックストレージ装置が保持する、スナップショット管理などのための内部データを参照して、更新された部分を解析する方法がある(例えば、特許文献2参照)。 As another method, there is a method in which the backup device analyzes the updated portion by referring to internal data for snapshot management or the like held by the block storage device (see, for example, Patent Document 2). .
しかし、特許文献1に記載の方法は、ストレージ装置側の時刻と、バックアップ装置側の時刻とが厳密に同期していなければならず、バックアップデータの整合性を保証するのが困難であるという問題がある。例えば、両装置間での時刻のずれのために、実際には更新された1つのブロックを更新されていないと誤判断すれば、バックアップデータに不整合が生じるが、それを知らずにリストアした場合、ブロックデバイス全体が利用できなくなる可能性がある。
However, the method described in
その対策方法として、時刻のずれを許容するために、前回のバックアップ時よりも10分前を基準時間とするなどの方法も考えられるが、どれだけのずれが生じるかはストレージ装置側に依存するため最適値を求めるのが困難であるとともに、ずれ量を大きく許容すれば、それだけ更新されていないブロックのデータを差分データとして特定する可能性が高くなり、データの転送時の負荷やバックアップ装置側のメモリ容量の負荷が大きくなる。 As a countermeasure, a method such as setting the reference time to be 10 minutes before the previous backup can be considered in order to allow a time lag, but the amount of time lag depends on the storage device side. For this reason, it is difficult to obtain the optimum value, and if the deviation amount is allowed to be large, the possibility of specifying the data of the block that has not been updated as differential data increases, and the load at the time of data transfer and the backup device side The load of memory capacity increases.
さらに、特許文献1に記載の方法では、ブロックストレージ装置側に、新たに最終更新時刻を管理するための領域がブロック数分必要となる。このため、ブロック数が多くなればなるほど、ストレージ装置側のメモリ使用量が増加するという問題がある。
Further, in the method described in
例えば、システムを10年運用すると仮定し、うるう年とうるう秒を考慮せず1年を365日とすれば、10年は315,360,000秒となる。最終更新時刻を、1秒単位でカウントするカウンタ値で実装しようとした場合、上記秒数は16ビットには収まらず、それ以上のビット数のデータ容量が必要となる。演算効率を考慮すれば、最終更新日時は32ビットのデータで管理されることになる。例えば、1TiBのブロックデバイスを32KiB単位のブロックに分割した場合、ブロックごとに32ビットのメモリが必要であるとすれば、ストレージ装置の制御メモリを、31250ブロック×32ビット=1MiBも消費する。 For example, if it is assumed that the system is operated for 10 years and the year is 365 days without considering the leap year and the leap second, 10 years becomes 315, 360,000 seconds. When it is attempted to implement the last update time with a counter value that counts in units of one second, the number of seconds does not fit in 16 bits, and a data capacity of more bits is required. Considering the calculation efficiency, the last update date and time is managed as 32-bit data. For example, when a block device of 1 TiB is divided into blocks of 32 KiB, if a 32-bit memory is required for each block, 31250 blocks × 32 bits = 1 MiB are consumed for the control memory of the storage apparatus.
また、特許文献2には、ブロックストレージ装置と接続されるサーバ装置側で、ブロックストレージ装置におけるアクセス回数やスナップショットの作成回数やマウント回数やバックアップ回数やリストア回数などを取得して、それに基づきファイルグループの移行を判定する旨が記載されている。しかし、特許文献2には、これらのデータを取得したサーバが移行を判定する方法として、特定の変数との大小比較をする旨の記載しかなく、差分バックアップのための具体的なロジックは開示されていない。
Also, in
差分バックアップを不整合とならずに行おうとすると、ブロックストレージ側でこれらの回数がどのように管理されているか、またこれらの回数を計測した処理がどのように行われているかを知る必要がある。しかし、このようなストレージ装置毎に異なる内部処理を基に、差分バックアップを制御しなければならないとすると、バックアップ装置の実装が複雑になったり、汎用性がなくなるという問題がある。 If you want to perform differential backup without inconsistency, you need to know how these counts are managed on the block storage side and how the processing that measures these counts is performed. . However, if the differential backup must be controlled based on such different internal processing for each storage device, there is a problem that the implementation of the backup device becomes complicated and the versatility is lost.
本発明は、上述した課題に鑑み、ブロックストレージ装置の差分バックアップを、簡易なロジックで、かつより少ない処理負荷および/またはより少ないリソース負荷で実現できるデータ管理システム、ストレージ装置、バックアップ装置、ストレージ装置のバックアップ方法およびストレージ装置のバックアッププログラムを提供することを目的とする。 In view of the above-described problems, the present invention provides a data management system, storage device, backup device, and storage device that can implement differential backup of a block storage device with simple logic and with less processing load and / or less resource load. An object of the present invention is to provide a backup method and a storage apparatus backup program.
本発明によるデータ管理システムは、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットを備えたストレージ装置と、ストレージ装置の記憶ユニットに記憶されたデータのバックアップを行うバックアップ装置とを備え、ストレージ装置は、自装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタの値を更新する静止点カウンタ更新部と、記憶ユニットが有するブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、静止点カウンタの値に更新する最終更新期間更新部と、バックアップ装置からの要求に応じて、静止点カウンタと最終更新期間とを出力する静止点情報提供部とを含み、バックアップ装置は、バックアップを行う際に、静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間とを取得する静止点情報取得部と、取得された最終更新期間と、自装置が保持しているブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された静止点カウンタを更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出部とを含むことを特徴とする。 A data management system according to the present invention includes a storage apparatus including one or more storage units that manage storage areas in units of predetermined blocks, and a backup apparatus that backs up data stored in the storage units of the storage apparatus. When the storage device detects a stationary point at a predetermined timing while the data stored in the storage unit is stationary, the storage device updates the value of the stationary point counter held by the storage device. When data is written to either the counter update unit or a block that is a plurality of block-specific data areas of the storage unit, among the last update period held by the device in association with each block A last update period update unit that updates the last update period corresponding to the block to the value of the static point counter; The backup device includes a quiesce point information providing unit that outputs a quiesce point counter and a last update period in response to a request from the backup device. Based on the stationary point information acquisition unit that acquires the last update period of the unit, the acquired last update period, and the reference point counter that indicates the reference point of backup for each of the blocks held by the own device, The block of the storage unit that is the backup target detects the updated block that has been updated since the previous backup, and the acquired quiesce counter is the current block of the block identified as the updated block And an update block detector that holds as a backup reference point counter That.
本発明によるストレージ装置は、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットと、自装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタの値を更新する静止点カウンタ更新部と、記憶ユニットが有するブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、静止点カウンタの値に更新する最終更新期間更新部と、バックアップ装置からの要求に応じて、静止点カウンタと最終更新期間とを出力する静止点情報提供部とを備えたことを特徴とする。 The storage apparatus according to the present invention has one or more storage units that manage storage areas in a predetermined block unit, and a quiesce point that is a predetermined timing in a state where data stored in the storage unit is stationary in the own apparatus. When detected, when data is written to any of a block that is a plurality of data areas in block units of the storage unit and a stationary point counter update unit that updates the value of the stationary point counter held by the own device A last update period update unit that updates the last update period corresponding to the block among the last update periods held by the own apparatus in association with each block to the value of the quiescent point counter, and a request from the backup device And a quiesce point information providing unit for outputting a quiesce point counter and a last update period.
本発明によるバックアップ装置は、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットを備えたストレージ装置の記憶ユニットに記憶されたデータのバックアップを行う際に、ストレージ装置から、ストレージ装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点が検出されると値が更新される静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間であって、記憶ユニットのデータ領域であるブロックのいずれかに対してデータが書き込まれると静止点カウンタの値に更新される最終更新期間とを取得する静止点情報取得部と、取得された最終更新期間と、自装置が保持しているブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された静止点カウンタを更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出部とを備えたことを特徴とする。 The backup device according to the present invention provides a backup device that stores data in a storage unit of a storage device having one or more storage units that manage storage areas in units of predetermined blocks. A stationary point counter whose value is updated when a stationary point at a predetermined timing is detected while the data stored in the storage unit is stationary, and a final update period of the storage unit to be backed up A quiesce point information acquisition unit that acquires a last update period that is updated to the value of the quiesce point counter when data is written to any of the blocks that are data areas of the storage unit, and the acquired last update period And a reference point counter indicating the reference point of backup for each block held by the device. A block in which a storage unit that is a backup target has an update block that is a data update from the previous backup, and the acquired quiesce counter is identified as an update block And an update block detection unit that holds as a reference point counter for the current backup.
本発明によるストレージ装置のバックアップ方法は、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットを備えたストレージ装置が、自装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタの値を更新し、ストレージ装置が、記憶ユニットが有するブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、静止点カウンタの値に更新し、ストレージ装置が、記憶ユニットに記憶されたデータのバックアップを行うバックアップ装置からの要求に応じて、静止点カウンタと最終更新期間とを出力し、バックアップ装置が、バックアップを行う際に、静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間とを取得し、バックアップ装置が、取得された最終更新期間と、自装置が保持しているブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された静止点カウンタを更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持することを特徴とする。 According to the storage apparatus backup method of the present invention, a storage apparatus including one or more storage units that manage storage areas in a predetermined block unit is in a state where data stored in the storage unit is stationary in the own apparatus. When a quiesce point at a predetermined timing is detected, the value of the quiesce point counter held by the own device is updated, and the storage device applies to any of the blocks that are a plurality of data areas in block units of the storage unit. When the data is written, the last update period corresponding to the block is updated to the value of the quiesce point counter among the last update periods held by the own device in association with each block, and the storage device stores the data. In response to a request from the backup device that backs up the data stored in the unit, When the backup device performs backup, the backup device acquires a quiesce point counter and the last update period of the storage unit to be backed up, and the backup device acquires the last update period acquired, Based on the reference point counter indicating the backup reference point for each block held by the local device, data was updated from the previous backup from among the blocks of the storage unit that was the backup target An update block that is a block is detected, and the acquired still point counter is held as a reference point counter for the current backup of the block identified as the update block.
本発明によるストレージ装置のバックアッププログラムは、コンピュータに、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットを備えたストレージ装置の記憶ユニットに記憶されたデータのバックアップを行う際に、ストレージ装置から、ストレージ装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点が検出されると値が更新される静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間であって、記憶ユニットのデータ領域であるブロックのいずれかに対してデータが書き込まれると静止点カウンタの値に更新される最終更新期間とを取得する静止点情報取得処理、および取得された最終更新期間と、自装置が保持しているブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された静止点カウンタを更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出処理を実行させることを特徴とする。 A storage apparatus backup program according to the present invention provides a storage system for backing up data stored in a storage unit of a storage apparatus having one or more storage units that manage storage areas in predetermined block units. When a quiesce point at a predetermined timing is detected in a state where data stored in the storage unit is stationary in the storage device, a quiesce point counter whose value is updated and a storage unit to be backed up A quiesce point information acquisition process that acquires a last update period that is updated to the value of the quiesce point counter when data is written to any of the blocks that are data areas of the storage unit. Updated last update period and a block for each block held by the device. Based on the reference point counter indicating the reference point of backup, an update block that is a block whose data has been updated since the previous backup is detected and acquired from among the blocks of the storage unit that is the backup target An update block detection process is performed in which the static point counter is held as a reference point counter for the current backup of a block identified as an update block.
本発明によれば、ブロックストレージ装置の差分バックアップを、簡易なロジックで、かつより少ない処理負荷および/またはより少ないリソース負荷で実現できる。 According to the present invention, differential backup of a block storage device can be realized with simple logic and with less processing load and / or less resource load.
実施形態1.
以下、図面を参照して本発明の実施形態について説明する。図1は、第1の実施形態のデータ管理システムの構成例を示すブロック図である。図1に示すデータ管理システム500は、ブロックストレージ装置1と、バックアップ装置2と、アプリケーション装置3とを備える。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram illustrating a configuration example of a data management system according to the first embodiment. A
ブロックストレージ装置1は、1つ以上の記憶ユニット11と、データ入力部12と、データ出力部13と、メタ情報管理部14と、メタ情報提供部15と、最終更新期間更新部16と、静止点検出部17と、静止点カウンタ更新部18と、スナップショット記憶部111とを含む。
The
記憶ユニット11は、上述したように、自身の記憶領域を所定のブロック単位で管理する記憶手段である。本実施形態の記憶ユニット11の各々は、ブロック単位の複数のデータ領域(以下、単にブロックという)を有する。以下、ブロックに格納されるデータをブロックデータという場合がある。
As described above, the
データ入力部12は、外部より、記憶ユニット11へのデータの書き込み要求を受け付ける。データ出力部13は、外部より、記憶ユニットからのデータの読み出し要求を受け付ける。
The data input unit 12 accepts a data write request to the
メタ情報管理部14は、ブロックストレージ装置1のメタ情報を管理(保持)する。メタ情報の例としては、記憶ユニット11の各々についての、名称、容量、アクセス権限などが挙げられるが、メタ情報はこれらに限定されない。
The meta
本実施形態のメタ情報管理部14はさらに、メタ情報として、静止点カウンタ141と、最終更新期間142とを保持する。
The meta
静止点カウンタ141は、ブロックストレージ装置1の状態または記憶ユニット11の状態が所定の条件を満たした時点である静止点がとられるたびに値が更新(増加または減少)されるカウンタである。静止点カウンタ141は、静止点が記憶ユニット11ごとに独立してとられる場合には、記憶ユニット11ごとに設けられる。メタ情報管理部14は、例えば、記憶ユニット11の識別子と対応づけて、静止点カウンタ141を保持してもよい。
The
多くのブロックストレージ装置のバックアップにおいて、整合性を確保するために静止点をとるという特性がある。本実施形態でも、そのような静止点をとる特性を利用できるようにした。なお、本実施形態の静止点は、ブロックストレージ装置のバックアップにおいて、整合性を確保するためにとられるものに限定されない。 In many block storage device backups, there is a characteristic of taking a quiesce point to ensure consistency. Also in the present embodiment, such a characteristic that takes a stationary point can be used. Note that the quiesce point of the present embodiment is not limited to a point taken to ensure consistency in backup of the block storage device.
本実施形態では、例えば、静止点を、ブロックストレージ装置1の状態または記憶ユニット11の状態が所定の条件を満たした時点として定義する。なお、所定の条件には、少なくとも対象(ブロックストレージ装置1や、記憶ユニット11やそのグループ等)において、データが静止しているとの静止条件を含む。換言すると、静止点は、所定の対象においてデータが静止した状態、かつ所定の条件を満たす状態となった時点であればよい。また、静止点を、バックアップ装置2からの所定の要求(例えば、静止点確保要求等)を受け付けた時点と定義することも可能である。ただし、本実施形態では、静止点は、少なくとも1秒よりも長い時間間隔で発生するものとする。
In the present embodiment, for example, a quiesce point is defined as a point in time when the state of the
本実施形態では、ブロックストレージ装置1がスナップショットを作成した時点を、静止点の一例として説明するが、静止点は、上記の条件を満たす任意の時点でよい。静止点の他の例としては、例えば、アプリケーション装置3からシャットダウンする旨が通知された時点や、アプリケーション装置3からファイルシステムのアンマウントがされた時点などが挙げられる。なお、静止点はこれらの状態すべてであってもよい。すなわち、所定の条件は複数の異なる状態を許容できるものとする。
In the present embodiment, the time point when the
また、最終更新期間142は、各記憶ユニット11のブロックごとに設けられる。メタ情報管理部14は、例えば、記憶ユニット11の識別子およびブロックの識別子と対応づけて、最終更新期間142を保持してもよい。
Further, the
ここで、最終更新期間142は、対応するブロックに最後にデータが更新された期間である。最終更新期間142は、より具体的には、対応するブロックに最後にデータが更新された時点を含む所定の時間区間の情報である。
Here, the
本実施形態では、そのような最終更新期間142を、静止点カウンタ141を用いて表現する。より具体的には、最終更新期間142を、対応するブロックに最後にデータが更新された時点が、時間的に隣接する2つの静止点で挟まれた時間区間のうちのどの区間に属するかを示す情報とする。最終更新期間142は、例えば、対応するブロックに最後にデータが更新された期間(上記の時間区間)の開始点に相当する静止点を示す情報(静止点カウンタ)であってもよい。
In the present embodiment, such a
メタ情報提供部15は、メタ情報管理部14に保持されているメタ情報を外部に提供する。
The meta
最終更新期間更新部16は、データ入力部12へのデータ書き込み要求に応じて、対応する最終更新期間142を更新する。最終更新期間更新部16は、例えば、データ入力部12へのデータ書き込み要求に応じて、要求先のブロックに対応づけられた最終更新期間142を、同ブロックが対応する静止点カウンタ141の値に更新する。ここで、ブロックが対応する静止点カウンタ141とは、例えば、そのブロックを有する記憶ユニット11に対応づけられた静止点カウンタ141である。なお、静止点カウンタ141が1つのみの場合は、唯一の静止点カウンタ141を、ブロックが対応する静止点カウンタ141とすればよい。また、静止点カウンタ141が所定の記憶ユニット11のグループごとに設けられている場合には、そのブロックを有する記憶ユニット11が属するグループに対応づけられた静止点カウンタ141を、ブロックが対応する静止点カウンタ141とすればよい。本実施形態では、静止点カウンタ141が設けられる単位(すなわち、静止点の検出単位)と、該単位が対応するブロックとの関係は、最終更新期間更新部16において既知であるとする。
The last update
静止点検出部17は、静止点がとられたことを検出する。 The stationary point detector 17 detects that a stationary point has been taken.
静止点カウンタ更新部18は、静止点検出部17による検出結果をもとに静止点カウンタ141を更新する。静止点カウンタ更新部18は、静止点検出部17によって静止点がとられたことが検出される度に、対応する静止点カウンタ141を更新する。静止点カウンタ更新部18は、例えば、静止点検出部17によって静止点がとられたことが検出される度に、検出元の記憶ユニット11に対応づけられた静止点カウンタ141を更新する。なお、静止点カウンタ更新部18においても、検出される静止点と、更新先の静止点カウンタ141との関係は既知であるとする。
The stationary point
スナップショット記憶部111は、スナップショットを記憶する。
The
また、バックアップ装置2は、バックアップ部21と、リストア部22と、バックアップデータ記憶部23と、静止点カウンタ記憶部24とを含む。
The
バックアップ部21は、ブロックストレージ装置1の各記憶ユニット11または指定された記憶ユニット11に記憶されているデータ(より具体的には、記憶ユニット11が備える各ブロックのブロックデータ)をバックアップする。
The
リストア部22は、後述するバックアップファイルや、バックアップデータ記憶部23や静止点カウンタ記憶部24等に記憶されている情報に基づいて、ブロックストレージ装置1の各記憶ユニット11または指定された記憶ユニット11にデータをリストアする。
The restore
バックアップデータ記憶部23は、バックアップ対象とされたブロックストレージ装置1が備える各記憶ユニット11のバックアップデータを記憶する。
The backup data storage unit 23 stores backup data of each
また、バックアップ部21は、静止点確保部211と、更新ブロック検出部212とを含む。
The
静止点確保部211は、バックアップ時に、バックアップ対象の静止点を確保する。静止点確保部211は、ブロックストレージ装置1の少なくともバックアップ対象とされた記憶ユニット11に対するデータの書き込みを停止した状態で、ブロックストレージ装置1に対して静止点の発生を伴う所定のイベントを発行することにより、静止点を確保してもよい。静止点確保部211は、例えば、静止点がスナップショットを更新した時点である場合には、バックアップ対象においてスナップショットを作成させて、静止点を発生させる。また、静止点確保部211は、例えば、静止点がバックアップ装置2からの所定の要求(例えば、静止点確保要求等)の受信時点であれば、バックアップ対象を指定した該要求を送信して、静止点を発生させる。
The stationary
更新ブロック検出部212は、新たなバックアップを行う際に、バックアップ対象の前回のバックアップ時点からデータが更新されたブロックを検出する。
When performing a new backup, the update
静止点カウンタ記憶部24は、バックアップ対象とする最小単位(例えば、記憶ユニット11)の各々に対応づけて、バックアップの基準点となる静止点カウンタ241を保持する。なお、静止点カウンタ記憶部24は、上記を初期状態の静止点カウンタ241として、さらに、バックアップごとに、取得した差分データ231の各々と対応づけられる静止点カウンタ241を保持してもよい。なお、静止点カウンタ241を、バックアップの基準点を示す意味で「基準点カウンタ」と呼ぶ場合もある。
The quiesce point counter storage unit 24 holds a quiesce point counter 241 serving as a backup reference point in association with each minimum unit (for example, the storage unit 11) to be backed up. Note that the stationary point counter storage unit 24 may hold the stationary point counter 241 associated with each of the acquired
ここで、バックアップ装置2が保持する静止点カウンタ241には、当該対象の直前のバックアップ時点においてブロックストレージ装置1から取得した、当該対象と対応する静止点カウンタ141が設定される。
Here, the quiesce point counter 241 held by the
アプリケーション装置3は、ブロックストレージ装置1に対して、データの書き込み要求やデータの読み出し要求を行って、ブロックストレージ装置1にデータを入出力する装置である。
The
本実施形態において、ブロックストレージ装置1は、例えば、Fibre Channel、iSCSI、SAS(Serial Attached SCSI)等のインタフェースを備えたSANストレージ装置であってよい。また、ブロックストレージ装置1は、例えば、iSCSIまたは独自のプロトコルで通信するソフトウェアを導入した汎用サーバであってもよい。また、ブロックストレージ装置1は、例えば、NVM Expressまたは独自のプロトコルで通信するフラッシュストレージであってもよい。
In this embodiment, the
また、バックアップ装置2は、例えば、バックアップ部21とリストア部22とを実装したソフトウェアを導入し、かつ、バックアップデータ記憶部23および静止点カウンタ記憶部24に相当する記憶装置を備えた、汎用サーバであってもよい。なお、バックアップ装置2は、物理サーバでも仮想サーバでもよい。また、バックアップデータ記憶部23は、バックアップ装置2に接続した外部ストレージにより実現されてもよい。
In addition, the
また、アプリケーション装置3は、任意のサーバや、パーソナルコンピュータや、それらに備えられるCPU等の情報処理装置であってもよい。また、アプリケーション装置3は、例えば、ブロックストレージ装置1の記憶ユニット11の中にファイルシステムを作成し、該ファイルシステムにアプリケーションのプログラムまたはデータのファイルを保存する汎用サーバであってもよい。なお、アプリケーション装置3は、物理サーバでも仮想サーバでもよい。また、アプリケーション装置3は、例えば、静止画または動画を記録するカメラなどのセンサデバイスであってもよい。
The
次に、本実施形態の動作を説明する。まず、ブロックストレージ装置1側の動作を簡単に説明する。
Next, the operation of this embodiment will be described. First, the operation on the
本実施形態のブロックストレージ装置1は、各記憶ユニット11を一定の大きさの論理的なブロックに分割する。例えば、それぞれのブロックの大きさを32KiBとしてもよい。ブロックを小さくすれば、バックアップ装置2において、差分バックアップによるデータ量の削減効果が高まるが、メモリ使用量は大きくなる。
The
ブロックストレージ装置1は、記憶ユニット11が新たに作成されると、メタ情報管理部14に、新しい記憶ユニット11に対応する静止点カウンタ141と最終更新期間142とを追加し、それらの値を初期化する。本実施例では、静止点カウンタ141の初期値を1、それぞれのブロックの最終更新期間142の初期値を0とする。
When the
図2は、本実施形態のブロックストレージ装置1の動作の一例を示すフローチャートである。図2は、ブロックストレージ装置1のデータ書き込み要求受け付け時の動作の例を示すフローチャートである。図2に示す例では、まず、データ入力部12が、アプリケーション装置3からデータ書き込み要求を受け付ける(ステップS101)。
FIG. 2 is a flowchart showing an example of the operation of the
次に、データ入力部12は、要求に応じて、ブロックにデータを書き込む(ステップS102)。なお、データの書き込み先のブロックは特に問わない。 Next, the data input unit 12 writes data in the block in response to the request (step S102). Note that the block to which data is written is not particularly limited.
データ入力部12によるデータの書き込みが成功した場合(ステップS103のYes)、最終更新期間更新部16が、対応するブロックの最終更新期間142を更新する(ステップS104)。なお、書き込みが失敗した場合には(ステップS103のNo)、ステップS104を行わずに、ステップS105に進む。
When the data writing by the data input unit 12 is successful (Yes in Step S103), the final update
最後に、データ入力部12が、書き込み結果を要求元に返送する(ステップS105)。 Finally, the data input unit 12 returns the write result to the request source (step S105).
図3は、メタ情報管理部14に保持される静止点カウンタ141および最終更新期間142の例を示す説明図である。なお、図3(a)が静止点カウンタ141の例を示す説明図であり、図3(b)が最終更新期間142の例を示す説明図である。
FIG. 3 is an explanatory diagram illustrating an example of the
ブロックストレージ装置1において、アプリケーション装置3からデータ入力部12に書き込み要求があり、書き込みが成功すると、最終更新期間更新部16は、対応するブロックの最終更新期間142を更新する。
In the
図4は、最終更新期間142の更新後の例を示す説明図である。例えば、図3に示される初期状態で、ブロック番号3で特定されるブロックの中のデータが書き込みによって更新されたとき、最終更新期間更新部16は、図4に示すように、当該ブロックに対応する最終更新期間142を、に静止点カウンタ141の値である1に設定する。
FIG. 4 is an explanatory diagram showing an example after the
また、図5は、ブロックストレージ装置1の静止点検出時の動作の例を示すフローチャートである。図5に示す例では、まず、静止点検出部17が、静止点を検出する(ステップS111)。
FIG. 5 is a flowchart showing an example of the operation of the
次に、静止点カウンタ更新部18が、検出された静止点に対応する静止点カウンタ141を更新する(ステップS112)。
Next, the stationary point
また、図6は、ブロックストレージ装置1のスナップショット要求受け付け時の動作の例を示すフローチャートである。図5に示す例では、まず、ブロックストレージ装置1が、スナップショット要求を受け付ける(ステップS121)。
FIG. 6 is a flowchart showing an example of the operation when the
次に、ブロックストレージ装置1の図示しないスナップショット機能部は、受け付けたスナップショット要求に応じて、各記憶ユニット11のスナップショットを作成する(ステップS122)。これにより、各記憶ユニット11のブロックデータは静止点が取られた状態となる。
Next, a snapshot function unit (not shown) of the
ブロックストレージ装置1では、静止点がとられた状態となるステップS122の後、上記のステップS111〜ステップS112の動作が行われる。
In the
なお、ステップS122でスナップショットを取る前に、ブロックストレージ装置1へのアクセスがフリーズされた場合には、スナップショットを取る前に、記憶ユニット11に未記入のデータが書き込まれる。すなわち、上記のステップS101〜ステップS105の動作が行われる。
If access to the
例えば、アプリケーション装置3が、ブロックストレージ装置1の記憶ユニット11の中にファイルシステムを作成している場合、該ファイルシステムをフリーズすると、ファイルシステムへの新たな書き込み要求が保留され、記憶ユニット11に未書き込みのデータが書き込まれ、記憶ユニット11のデータは静止点がとられた状態となる。そして、ファイルシステムのフリーズを解除すると、書き込み要求の保留が解除され、記憶ユニット11のデータは静止点がとられていない状態になる。なお、ファイルシステムのフリーズ機能は多くのファイルシステムが備えている。
For example, when the
図7は、静止点カウンタ141の更新後の例を示す説明図である。上記のスナップショットの作成により、静止点カウンタ141は、例えば、図7に示す状態に更新される。なお、本例では、記憶ユニット11への未記入のデータがなかった場合の例を示しているが、未記入のデータがあった場合には、当該データが書き込まれたブロックに対応する最終更新期間142が、スナップショットを取る前の時点の静止点カウンタ141の値である1に設定される。
FIG. 7 is an explanatory diagram showing an example after the
次に、バックアップ装置2の動作を説明する。図8〜図9は、バックアップ装置2のバックアップ動作の例を示すフローチャートである。
Next, the operation of the
図8〜図9に示す例では、まず、静止点確保部211が、バックアップ対象の記憶ユニット11の静止点をとる(確保する)。静止点をとる方法は、例えば、アプリケーション装置3のシャットダウンである。また、例えば、アプリケーション装置3からのファイルシステムのアンマウントである。また、例えば、アプリケーション装置3のファイルシステムをフリーズし、ブロックストレージ装置1に記憶ユニット11のスナップショットを作成させ、アプリケーション装置3のファイルシステムのフリーズを解除する。
In the example shown in FIGS. 8 to 9, first, the quiesce
本例では、3つ目の方法を用いた例を説明する。すなわち、アプリケーション装置3のシャットダウンとファイルシステムのアンマウントが不要な、ファイルシステムを一時的にフリーズしてスナップショットを作成する方法を説明する。ファイルシステムをフリーズせずにバックアップすることも可能であるが、その場合、未書き込みのデータが反映されず一部のファイルをリストアできなくなる場合がある点で注意が必要である。
In this example, an example using the third method will be described. That is, a method of creating a snapshot by temporarily freezing the file system that does not require the
まず、静止点確保部211は、ブロックストレージ装置1へのアプリケーションレベルでのデータアクセスをフリーズする(ステップS201)。
First, the stationary
例えば、静止点確保部211は、Secure Shellでアプリケーション装置3にログインし、ファイルシステムフリーズのためのコマンドを実行してもよい。
For example, the stationary
次に、静止点確保部211は、ブロックストレージ装置1にスナップショットを作成させる(ステップS202)。例えば、静止点確保部211は、Secure Shellでブロックストレージ装置1の管理インタフェースにログインし、スナップショット作成のためのコマンドを実行してもよい。また、例えば、静止点確保部211はブロックストレージ装置1のスナップショット作成のためのリモートプロシージャコールを実行してもよい。
Next, the stationary
次に、静止点確保部211は、ステップS201でフリーズさせたデータアクセスのフリーズ状態を解除する(ステップS203)。ファイルシステムをフリーズしている間は、ファイルシステムへの書き込みが保留されているため、なるべく早くフリーズを解除することが望ましい。
Next, the stationary
なお、アプリケーション装置3が、ブロックストレージ装置1の記憶ユニット11の中にファイルシステムを作成していない場合は、ファイルシステムを介さずに、上記の動作を行えばよい。
If the
次に、更新ブロック検出部212が、メタ情報提供部15に要求を行い、静止点カウンタ141と最終更新期間142を受け取る(ステップS204)。例えば、更新ブロック検出部212は、ブロックストレージ装置1にメタ情報の読み出しを要求するためのSCSIコマンドを発行し、その応答として、ブロックストレージ装置1からメタ情報を含むデータを受け取ってもよい。また、例えば、更新ブロック検出部212は、Secure Shellでブロックストレージ装置1の管理インタフェースにログインし、メタ情報を出力するコマンドを実行して、該情報を得てもよい。また、例えば、更新ブロック検出部212はブロックストレージ装置1のメタ情報取得のためのリモートプロシージャコールを実行して、該情報を得てもよい。
Next, the update
次に、更新ブロック検出部212が、今回のバックアップ用に、ステップS204で取得した静止点カウンタ141を保存する(ステップS205)。更新ブロック検出部212は、例えば、静止点カウンタ記憶部24に、取得した静止点カウンタ141を静止点カウンタ241として記憶すればよい。
Next, the update
なお、静止点カウンタ141のバックアップ先は、例えば、バックアップ装置2が内蔵するハードディスクドライブでなくてもよい。バックアップ先は、例えば、バックアップ装置2に接続した外部ストレージ装置であってもよい。
Note that the backup destination of the
本例では、バックアップ装置2が内蔵するハードディスクドライブに作成したファイルシステムとしての静止点カウンタ記憶部24に、1回のバックアップに1つのバックアップファイルを作成する例を示す。このとき、更新ブロック検出部212は、バックアップファイルのファイル名を記憶ユニット11の識別IDと静止点カウンタ141から決定してもよい。例えば、記憶ユニット11の識別IDが001114FBで、静止点カウンタ141が1のとき、バックアップファイルのファイル名を、例えば、001114FB−00001.BAKとする。なお、更新ブロック検出部212は、当該ステップでは、空のファイルを作成する。
In this example, an example is shown in which one backup file is created for one backup in the still point counter storage unit 24 as a file system created in a hard disk drive built in the
次に、更新ブロック検出部212は、前回のバックアップに関する情報(例えば、上記のバックアップファイル)が存在するかを確認し(ステップS206)、存在しなければステップS207に進み、存在すればステップS208に進む。
Next, the update
ステップS207では、更新ブロック検出部212は、更新ブロックを求める際のバックアップの基準点を示す変数bに0を代入する。前回のバックアップに関する情報が存在しないため、今回が初回のバックアップである。本例では、初回のバックアップでは、書き込みがあったブロックのみをバックアップし、書き込みがなくブロックの初期状態であるすべてゼロのブロックはバックアップしない。すべてゼロのブロックをバックアップしないことで、ブロックストレージ装置1からの読み出し処理を省略でき、また、データを保存するための容量を節約できる。
In step S207, the update
前回のバックアップに関する情報が存在すれば、更新ブロック検出部212は、変数bに前回バックアップ時の静止点カウンタ241を代入する(ステップS208)。
If there is information related to the previous backup, the update
次に、スナップショット記憶部111に記憶されているスナップショットのそれぞれの対象ブロックについて、ステップS210〜S212の処理を繰り返す(ループL209)。 Next, the processing of steps S210 to S212 is repeated for each target block of the snapshot stored in the snapshot storage unit 111 (loop L209).
すなわち、更新ブロック検出部212は、まず、変数aに、ステップS204で取得した、対象ブロックの最終更新期間を代入する(ステップS210)。
That is, the update
次に、変数aと変数bの値を比較し(ステップS211)、aが大きければステップS212に進み、bが大きいまたは等しい場合はステップS212を実行せずにループL209を継続する。 Next, the values of the variable a and the variable b are compared (step S211). If a is large, the process proceeds to step S212. If b is large or equal, the loop L209 is continued without executing step S212.
一方、aが大きければ、対象ブロックは、前回バックアップ時からデータの更新のあった更新ブロックであるとして、ブロックストレージ装置1の該スナップショットから対象ブロックのブロックデータをバックアップする(ステップS212)。本例では、バックアップファイルに更新ブロックのブロックデータを差分データとして書き込むことにより行う。 On the other hand, if a is large, the target block is assumed to be an updated block whose data has been updated since the previous backup, and the block data of the target block is backed up from the snapshot of the block storage device 1 (step S212). In this example, the update block block data is written as difference data in the backup file.
図9は、バックアップファイルの記録内容の例を示す説明図である。バックアップファイルに追記(記録)する内容の例として、図10に示すように、更新ブロックとされたブロック番号とブロックのデータの組が挙げられる。 FIG. 9 is an explanatory diagram showing an example of the recorded contents of a backup file. As an example of the contents to be additionally recorded (recorded) in the backup file, as shown in FIG. 10, there is a set of a block number and a block data set as an update block.
更新ブロック検出部212は、ループL209を繰り返し、aがbより大きいとき、バックアップファイルにブロック番号とブロックのデータの組を追記する。
The update
ループL209が終了すると、静止点確保部211は、ブロックストレージ装置1に、バックアップ対象とした記憶ユニット11のスナップショットを削除させる(ステップS213)。ブロックストレージ装置1がCopy−On−Write方式のスナップショット方式を採用している場合、今回のバックアップの開始時に作成したスナップショットを削除することで記憶ユニット11の書き込み性能が向上することが期待される。しかし、スナップショットを削除することは本発明を実施するうえで必須ではない。例えば、スナップショットのデータをブロックストレージ装置1の内部で短時間でリストアできるようにするため、スナップショットを削除せず残しておいてもよい。
When the loop L209 ends, the quiesce
なお、上記でバックアップしたデータをリストアするためには、リストア部22が古いバックアップファイルから順に読みだして記憶ユニット11に書き込めばよい。差分バックアップのデータを基に、リストアするリストア動作については、広く知られているため、詳細な説明を省略する。
In order to restore the data backed up as described above, the restore
以上のように、本実施形態のバックアップ装置2は、前回バックアップ時の静止点カウンタと、新たに取得したそれぞれのブロックの最終更新期間とを比較する単純なアルゴリズムで更新されたブロックを特定できる。このため、バックアップ装置2は、ブロックストレージ装置1の他の内部データやスナップショット/レプリケーション機能を気にする必要がなく、差分バックアップを短期間および低コストで実装できる。
As described above, the
また、本実施形態によれば、バックアップ装置2が初期バックアップ時においても、全データを読み出してバックアップと比較する必要がない。また、スナップショットからバックアップする場合に、バックアップ完了後にスナップショットを削除できる。このため、ブロックストレージ装置1の性能向上や、バックアップ装置2のデータ容量の増加防止や、ブロックストレージ装置1とバックアップ装置2との間の転送負荷の低減ができる。
Further, according to the present embodiment, even when the
さらに、最終更新日時を保存する場合に比べて、時刻の同期が不要で、かつブロックストレージ装置1側のメモリ使用量も少なくてすむ。
Furthermore, time synchronization is not required and the memory usage on the
すなわち、ブロックストレージ装置1が最終更新日時を保持する場合、一般的なバックアップ頻度と製品寿命から算出すると、1ブロックあたり32ビットが必要であると考えられるのに対し、本発明の最終更新期間142は、1ブロックあたり16ビット程度で足りる。
That is, when the
また、ブロックストレージ装置の利用者は短時間でバックアップでき、かつ、バックアップ時の負荷が低いバックアップ装置を低コストで入手できるようになり、ブロックストレージ装置の外部にバックアップをとることによって、内部にバックアップをとるよりもデータを失う可能性の低いシステムを構築できる。 In addition, users of block storage devices can back up in a short time and can obtain a backup device with a low load during backup at a low cost. You can build a system that is less likely to lose data than taking
なお、上記の最終更新期間142のビット数は、次のような想定の下で算出した。すなわち、一般的に、バックアップの多くは、業務時間外にとられ、毎日夜間または毎週週末が設定されるケースが多い。これに加えて不定期のメンテナンスでバックアップを取るとしても、数回/日の頻度でバックアップを取れれば十分だと考えられる。また、ストレージ製品の一般的な保守期間を考えて、20年間数字があふれなければ十分と考えられる。このように想定したケースによれば、20年間×365日×3回=219,000回のバックアップに対応できればよく、処理効率を考慮して16ビット(65,535まで)あれば、十分であると考えられる。
The number of bits in the
なお、後述する変形例では、1ブロックあたり32ビットや、場合によっては64ビットも想定されうるが、最終更新時刻を比較する方法や、スナップショット回数などを直に参照する方法と比べて、複雑な制御や時刻同期の必要がなく、単純な比較によるアルゴリズムのみで実現できたり、データの整合性を保証できるといった効果は依然得られる。すなわち、簡易なロジックで、かつ処理負荷(データの読み出し量が少なくて済む)および/またはリソース負荷(少ないメモリ使用量)が低減できる。 In the modification described later, 32 bits per block or 64 bits may be assumed in some cases, but it is more complicated than the method of comparing the last update time or the method of referring to the number of snapshots directly. There is no need for simple control and time synchronization, and there can still be obtained an effect that it can be realized only by an algorithm based on a simple comparison and that data consistency can be guaranteed. That is, it is possible to reduce the processing load (the amount of data read is small) and / or the resource load (a small amount of memory used) with simple logic.
変形例.
なお、上記の実施形態の構成および方法の少なくとも一部は、増分バックアップにも応用できる。増分バックアップをする場合は、前回バックアップ時の静止点カウンタ241に代えて、増分バックアップの基点となるバックアップの静止点カウンタ241を用いて、更新されたブロックを検出すればよい。
Modified example.
Note that at least a part of the configuration and method of the above-described embodiment can also be applied to incremental backup. When performing incremental backup, an updated block may be detected by using a backup quiesce point counter 241 serving as a base point of incremental backup instead of the quiesce point counter 241 at the time of the previous backup.
また、スナップショットからのみ差分バックアップをする場合、スナップショットの識別IDを静止点カウンタ141として代用してもよい。例えば、スナップショットの識別IDがスナップショットをとるたびに1,2,3…と順に増加するとき、当該識別IDを静止点カウンタ141として使用することができる。本発明では、このようなスナップショットの識別IDも、静止点カウンタ141の一態様とみなす。
Further, when performing differential backup only from a snapshot, the snapshot identification ID may be substituted for the
また、静止点カウンタ141は、一定時間ごとに増加(または減少)するカウンタであってもよい。例えば、10分間隔で増加するタイマー値を静止点カウンタ141としてもよい。なお、その場合、静止点カウンタ141を更新する処理は、データの書き換えが起きない状態で行うのが好ましい。また、その場合、バックアップ装置2は、前回バックアップしたときの静止点カウンタ241より大きいブロックに加えて、該静止点カウンタ241と等しいブロックもバックアップするようにする。本発明では、このようなカウンタも、静止点カウンタ141の一態様とみなす。
The
また、静止点カウンタ141は、一定量の書き込みごとに増加(または減少)するカウンタであってもよい。例えば、32MiB書き込むごとに1増加するカウンタ値を静止点カウンタ141としてもよい。その場合も、バックアップ装置2は、前回バックアップしたときの静止点カウンタ241より大きいブロックに加えて、該静止点カウンタ241と等しいブロックもバックアップするようにする。本発明では、このようなカウンタも、静止点カウンタ141の一態様とみなす。
Further, the
また、静止点カウンタ141は、1回の書き込みごとに増加(または減少)するカウンタであってもよい。なお、本例の場合、静止点をとったときにのみ増加(または減少)するカウンタを用いるのに比べて、長いビット数が必要となるが、簡単なアルゴリズムで差分バックアップを実現する効果は得られる。本発明では、このようなカウンタも、静止点カウンタ141の一態様とみなす。
The
次に、本発明の実施形態にかかるコンピュータの構成例を示す。図11は、本発明の実施形態にかかるコンピュータの構成例を示す概略ブロック図である。コンピュータ1000は、CPU1001と、主記憶装置1002と、補助記憶装置1003と、インタフェース1004と、ディスプレイ装置1005と、入力デバイス1006とを備える。
Next, a configuration example of a computer according to the embodiment of the present invention will be shown. FIG. 11 is a schematic block diagram illustrating a configuration example of a computer according to the embodiment of the present invention. The
上述のブロックストレージ装置やバックアップ装置やアプリケーション装置は、例えば、コンピュータ1000に実装されてもよい。その場合、各装置の動作は、プログラムの形式で補助記憶装置1003に記憶されていてもよい。CPU1001は、プログラムを補助記憶装置1003から読み出して主記憶装置1002に展開し、そのプログラムに従って上記の実施形態における所定の処理を実施する。
The block storage device, the backup device, and the application device described above may be mounted on the
補助記憶装置1003は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例として、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ1000に配信される場合、配信を受けたコンピュータは1000がそのプログラムを主記憶装置1002に展開し、上記の実施形態における所定の処理を実行してもよい。
The
また、プログラムは、各実施形態における所定の処理の一部を実現するためのものであってもよい。さらに、プログラムは、補助記憶装置1003に既に記憶されている他のプログラムとの組み合わせで上記の実施形態における所定の処理を実現する差分プログラムであってもよい。
The program may be for realizing a part of predetermined processing in each embodiment. Furthermore, the program may be a difference program that realizes the predetermined processing in the above-described embodiment in combination with another program already stored in the
インタフェース1004は、他の装置との間で情報の送受信を行う。また、ディスプレイ装置1005は、ユーザに情報を提示する。また、入力デバイス1006は、ユーザからの情報の入力を受け付ける。
The
また、実施形態における処理内容によっては、コンピュータ1000の一部の要素は省略可能である。例えば、装置がユーザに情報を提示しないのであれば、ディスプレイ装置1005は省略可能である。
Further, depending on the processing contents in the embodiment, some elements of the
また、各装置の各構成要素の一部または全部は、汎用または専用の回路(Circuitry)、プロセッサ等やこれらの組み合わせによって実施される。これらは単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。 In addition, some or all of the constituent elements of each device are implemented by general-purpose or dedicated circuits (Circuitry), processors, and the like or combinations thereof. These may be constituted by a single chip or may be constituted by a plurality of chips connected via a bus. Moreover, a part or all of each component of each device may be realized by a combination of the above-described circuit and the like and a program.
各装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。 When some or all of the constituent elements of each device are realized by a plurality of information processing devices and circuits, the plurality of information processing devices and circuits may be centrally arranged or distributedly arranged. Also good. For example, the information processing apparatus, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client and server system and a cloud computing system.
次に、本発明のデータ管理システムの概要を説明する。図12は、本発明のデータ管理システムの概要を示すブロック図である。図12に示すデータ管理システム600は、ストレージ装置61と、バックアップ装置62とを備える。
Next, the outline of the data management system of the present invention will be described. FIG. 12 is a block diagram showing an outline of the data management system of the present invention. A
ストレージ装置61(例えば、ブロックストレージ装置1)は、所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニット611と、静止点カウンタ更新部612と、最終更新期間更新部613と、静止点情報提供部614とを備える。
The storage device 61 (for example, the block storage device 1) includes one or
静止点カウンタ更新部612(例えば、静止点カウンタ更新部18)は、自装置において記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタ615の値を更新する。
When the stationary point counter updating unit 612 (for example, the stationary point counter updating unit 18) detects a stationary point at a predetermined timing in a state where data stored in the storage unit is stationary in the own device, the own device holds the stationary point counter. The value of the
最終更新期間更新部613(例えば、最終更新期間更新部16)は、記憶ユニットが有するブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、ブロックの各々に対応づけて自装置が保持している最終更新期間616のうち当該ブロックに対応する最終更新期間616を、静止点カウンタ615の値に更新する。
The last update period update unit 613 (for example, the last update period update unit 16) associates each block when data is written in any of the blocks that are a plurality of data areas in block units of the storage unit. The
静止点情報提供部614(例えば、メタ情報提供部15)は、バックアップ装置からの要求に応じて、静止点カウンタ615と最終更新期間616とを出力する。
The quiesce point information providing unit 614 (for example, the meta information providing unit 15) outputs a
また、バックアップ装置62は、静止点情報取得部621と、更新ブロック検出部622とを備える。
Further, the
静止点情報取得部621(更新ブロック検出部212の一部)は、バックアップを行う際に、静止点カウンタ615と、バックアップ対象とされた記憶ユニットの最終更新期間616とを取得する。
The quiesce point information acquisition unit 621 (a part of the update block detection unit 212) acquires the
更新ブロック検出部622(更新ブロック検出部212の一部)取得された最終更新期間616と、自装置が保持しているブロックの各々についてのバックアップの基準点を示す基準点カウンタ623とに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された静止点カウンタ615を更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタ623として保持する。
Based on the
以上、本実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。 While the present invention has been described with reference to the present embodiment and examples, the present invention is not limited to the above embodiment and examples. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
本発明は、ブロックベースでデータを記憶する記憶ユニットに対するバックアップ用途であれば、好適に適用可能である。 The present invention can be suitably applied to backup applications for storage units that store data on a block basis.
500 データ管理システム
1 ブロックストレージ装置
11 記憶ユニット
111 スナップショット記憶部
12 データ入力部
13 データ出力部
14 メタ情報管理部
141 静止点カウンタ
142 最終更新期間
15 メタ情報提供部
16 最終更新期間更新部
17 静止点検出部
18 静止点カウンタ更新部
2 バックアップ装置
21 バックアップ部
211 静止点確保部
212 更新ブロック検出部
22 リストア部
23 バックアップデータ記憶部
231 差分データ
24 静止点カウンタ記憶部
241 静止点カウンタ
3 アプリケーション装置
1000 コンピュータ
1001 CPU
1002 主記憶装置
1003 補助記憶装置
1004 インタフェース
1005 ディスプレイ装置
1006 入力デバイス
61 ストレージ装置
611 記憶ユニット
612 静止点カウンタ更新部
613 最終更新期間更新部
614 静止点情報提供部
615 静止点カウンタ
616 最終更新期間
62 バックアップ装置
621 静止点情報取得部
622 更新ブロック検出部
623 基準点カウンタ
500
1002
Claims (10)
前記ストレージ装置は、
自装置において前記記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタの値を更新する静止点カウンタ更新部と、
前記記憶ユニットが有する前記ブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、前記ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、前記静止点カウンタの値に更新する最終更新期間更新部と、
前記バックアップ装置からの要求に応じて、前記静止点カウンタと前記最終更新期間とを出力する静止点情報提供部とを含み、
前記バックアップ装置は、
前記バックアップを行う際に、前記静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間とを取得する静止点情報取得部と、
取得された前記最終更新期間と、自装置が保持している前記ブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された前記静止点カウンタを前記更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出部とを含む
ことを特徴とするデータ管理システム。 A storage device including one or more storage units that manage storage areas in predetermined block units, and a backup device that backs up data stored in the storage units of the storage device,
The storage device
A stationary point counter updating unit that updates a value of a stationary point counter held by the own device when detecting a stationary point at a predetermined timing in a state where the data stored in the storage unit is stationary in the own device; ,
When data is written to any of the blocks that are a plurality of data areas of the block unit of the storage unit, the block in the last update period held by the own device in association with each of the blocks A last update period update unit that updates the last update period corresponding to the value of the quiescent point counter;
In response to a request from the backup device, including a stationary point information providing unit that outputs the stationary point counter and the last update period,
The backup device is
When performing the backup, the quiesce point counter, and a quiesce point information acquisition unit that acquires the last update period of the storage unit that is the backup target;
Based on the acquired last update period and the reference point counter indicating the reference point of backup for each of the blocks held by the own device, the previous block among the blocks included in the storage unit to be backed up An update block detection that detects an update block that has been updated from the time of the backup and holds the acquired still point counter as a reference point counter for the current backup of the block identified as the update block A data management system characterized by comprising a department.
請求項1記載のデータ管理システム。 The data management system according to claim 1, wherein the update block detection unit detects an update block by comparing the acquired last update period with the reference point counter.
前記ストレージ装置の少なくともバックアップ対象とされた記憶ユニットに対するデータの書き込みを停止した状態で、前記ストレージ装置に対して前記静止点の発生を伴う所定のイベントを発行する静止点確保部を含む
請求項1または請求項2記載のデータ管理システム。 The backup device is
2. A quiesce point securing unit that issues a predetermined event accompanying the occurrence of the quiesce point to the storage device in a state where data writing to at least a storage unit that is a backup target of the storage device is stopped. Or the data management system of Claim 2.
請求項1から請求項3のうちのいずれかに記載のデータ管理システム。 The quiesce point is either the time when the snapshot is updated, the timing when a certain time elapses, the timing when a certain amount of writing is performed in the target recording unit, or the timing when one writing is performed in the target recording unit. The data management system according to any one of claims 1 to 3.
請求項1から請求項4のうちのいずれかに記載のデータ管理システム。 The data management system according to any one of claims 1 to 4, wherein a bit length of a stationary counter held by the storage device is 16 bits or less.
前記静止点カウンタは、記録ユニットごとに保持され、
前記更新ブロック検出部は、初回バックアップ時に、取得された最終更新期間が初期値のままのブロックをバックアップの対象から除外する
請求項1から請求項5のうちのいずれかに記載のデータ管理システム。 In each of the recording units, each of the blocks is initialized with a predetermined value,
The stationary point counter is held for each recording unit,
The data management system according to any one of claims 1 to 5, wherein the update block detection unit excludes, from the backup target, a block in which the acquired last update period remains the initial value during the initial backup.
自装置において前記記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点を検出すると、自装置が保持している静止点カウンタの値を更新する静止点カウンタ更新部と、
前記記憶ユニットが有する前記ブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、前記ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、前記静止点カウンタの値に更新する最終更新期間更新部と、
前記バックアップ装置からの要求に応じて、前記静止点カウンタと前記最終更新期間とを出力する静止点情報提供部とを備えた
ことを特徴とするストレージ装置。 One or more storage units that manage storage areas in predetermined block units;
A stationary point counter updating unit that updates a value of a stationary point counter held by the own device when detecting a stationary point at a predetermined timing in a state where the data stored in the storage unit is stationary in the own device; ,
When data is written to any of the blocks that are a plurality of data areas of the block unit of the storage unit, the block in the last update period held by the own device in association with each of the blocks A last update period update unit that updates the last update period corresponding to the value of the quiescent point counter;
A storage apparatus, comprising: a quiesce point information providing unit that outputs the quiesce point counter and the last update period in response to a request from the backup device.
取得された前記最終更新期間と、自装置が保持している前記ブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された前記静止点カウンタを前記更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出部とを備えた
ことを特徴とするバックアップ装置。 When performing backup of data stored in a storage unit of a storage apparatus having one or more storage units that manage storage areas in predetermined block units, the storage apparatus stores the data in the storage unit. A stationary point counter whose value is updated when a stationary point at a predetermined timing is detected in a state where the data to be stationary is stationary, and a final update period of the storage unit to be backed up, the storage unit A quiesce point information acquisition unit that acquires a final update period that is updated to the value of the quiesce point counter when data is written to any of the blocks that are data areas of
Based on the acquired last update period and the reference point counter indicating the reference point of backup for each of the blocks held by the own device, the previous block among the blocks included in the storage unit to be backed up An update block detection that detects an update block that has been updated from the time of the backup and holds the acquired still point counter as a reference point counter for the current backup of the block identified as the update block And a backup device.
前記ストレージ装置が、前記記憶ユニットが有する前記ブロック単位の複数のデータ領域であるブロックのいずれかに対してデータが書き込まれると、前記ブロックの各々に対応づけて自装置が保持している最終更新期間のうち当該ブロックに対応する最終更新期間を、前記静止点カウンタの値に更新し、
前記ストレージ装置が、前記記憶ユニットに記憶されたデータのバックアップを行うバックアップ装置からの要求に応じて、前記静止点カウンタと前記最終更新期間とを出力し、
前記バックアップ装置が、前記バックアップを行う際に、前記静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間とを取得し、
前記バックアップ装置が、取得された前記最終更新期間と、自装置が保持している前記ブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された前記静止点カウンタを前記更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する
ことを特徴とするストレージ装置のバックアップ方法。 A storage device having one or more storage units that manage storage areas in a predetermined block unit detects a stationary point at a predetermined timing in a state where data stored in the storage unit is stationary in the own device. Then, the value of the static point counter held by the own device is updated,
When the storage device writes data to any of the blocks that are a plurality of data areas of the block unit of the storage unit, the storage device stores the last update held in association with each of the blocks Update the last update period corresponding to the block in the period to the value of the quiesce point counter,
In response to a request from a backup device that backs up data stored in the storage unit, the storage device outputs the quiesce point counter and the last update period,
When the backup device performs the backup, it acquires the quiesce point counter and the last update period of the storage unit to be backed up,
The backup device has a storage unit that is a backup target based on the acquired last update period and a reference point counter indicating a backup reference point for each of the blocks held by the own device. An update block that is a block whose data has been updated since the previous backup is detected from among the blocks, and the acquired still point counter is used as a reference point counter for the current backup of the block identified as the update block A storage apparatus backup method, characterized by comprising:
所定のブロック単位で記憶領域を管理する1つ以上の記憶ユニットを備えたストレージ装置の記憶ユニットに記憶されたデータのバックアップを行う際に、前記ストレージ装置から、前記ストレージ装置において前記記憶ユニットに記憶されるデータが静止している状態で所定のタイミングである静止点が検出されると値が更新される静止点カウンタと、バックアップ対象とされた記憶ユニットの最終更新期間であって、前記記憶ユニットのデータ領域であるブロックのいずれかに対してデータが書き込まれると前記静止点カウンタの値に更新される最終更新期間とを取得する静止点情報取得処理、および
取得された前記最終更新期間と、自装置が保持している前記ブロックの各々についてのバックアップの基準点を示す基準点カウンタとに基づいて、バックアップ対象とされた記憶ユニットが有するブロックの中から前回のバックアップ時からデータの更新があったブロックである更新ブロックを検出するとともに、取得された前記静止点カウンタを前記更新ブロックと特定されたブロックの今回のバックアップの基準点カウンタとして保持する更新ブロック検出処理
を実行させるためのストレージ装置のバックアッププログラム。 On the computer,
When performing backup of data stored in a storage unit of a storage apparatus having one or more storage units that manage storage areas in predetermined block units, the storage apparatus stores the data in the storage unit. A stationary point counter whose value is updated when a stationary point at a predetermined timing is detected in a state where the data to be stationary is stationary, and a final update period of the storage unit to be backed up, the storage unit A static point information acquisition process for acquiring a final update period that is updated to the value of the static point counter when data is written to any of the blocks that are the data area of the data area, and the acquired final update period, To a reference point counter indicating a backup reference point for each of the blocks held by the own device Based on this, the update block that is a block in which data has been updated since the previous backup is detected from among the blocks of the storage unit that is the backup target, and the acquired quiescent point counter is identified as the update block A storage device backup program for executing an update block detection process to be held as a reference point counter for the current backup of a block that has been processed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017069770A JP6939023B2 (en) | 2017-03-31 | 2017-03-31 | Data management systems, storage devices, backup devices, methods and programs |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017069770A JP6939023B2 (en) | 2017-03-31 | 2017-03-31 | Data management systems, storage devices, backup devices, methods and programs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018173701A true JP2018173701A (en) | 2018-11-08 |
JP6939023B2 JP6939023B2 (en) | 2021-09-22 |
Family
ID=64107706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017069770A Active JP6939023B2 (en) | 2017-03-31 | 2017-03-31 | Data management systems, storage devices, backup devices, methods and programs |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6939023B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416878A (en) * | 2020-11-09 | 2021-02-26 | 山西云时代技术有限公司 | File synchronization management method based on cloud platform |
WO2023103397A1 (en) * | 2021-12-06 | 2023-06-15 | 海飞科(南京)信息技术有限公司 | Method for storage management, medium, program product, system, and apparatus |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250902A (en) * | 1993-02-24 | 1994-09-09 | Hitachi Ltd | File backup method for distributed system |
JPH09101912A (en) * | 1995-10-06 | 1997-04-15 | Mitsubishi Electric Corp | Difference backup system |
JP2009146389A (en) * | 2007-11-22 | 2009-07-02 | Hitachi Ltd | Backup system and method |
JP2012014286A (en) * | 2010-06-29 | 2012-01-19 | Toshiba Corp | Storage system, data backup method in the same and data backup program |
JP2016151803A (en) * | 2015-02-16 | 2016-08-22 | 富士通株式会社 | Storage control device, storage control program, and storage control method |
-
2017
- 2017-03-31 JP JP2017069770A patent/JP6939023B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250902A (en) * | 1993-02-24 | 1994-09-09 | Hitachi Ltd | File backup method for distributed system |
JPH09101912A (en) * | 1995-10-06 | 1997-04-15 | Mitsubishi Electric Corp | Difference backup system |
JP2009146389A (en) * | 2007-11-22 | 2009-07-02 | Hitachi Ltd | Backup system and method |
JP2012014286A (en) * | 2010-06-29 | 2012-01-19 | Toshiba Corp | Storage system, data backup method in the same and data backup program |
JP2016151803A (en) * | 2015-02-16 | 2016-08-22 | 富士通株式会社 | Storage control device, storage control program, and storage control method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416878A (en) * | 2020-11-09 | 2021-02-26 | 山西云时代技术有限公司 | File synchronization management method based on cloud platform |
WO2023103397A1 (en) * | 2021-12-06 | 2023-06-15 | 海飞科(南京)信息技术有限公司 | Method for storage management, medium, program product, system, and apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP6939023B2 (en) | 2021-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210224166A1 (en) | Database snapshot and backup management with recoverable chains | |
US10235066B1 (en) | Journal destage relay for online system checkpoint creation | |
US20200167277A1 (en) | Garbage collection of expired snapshots | |
US10152381B1 (en) | Using storage defragmentation function to facilitate system checkpoint | |
US10241873B2 (en) | Headstart restore of first volume to a second volume | |
US10642633B1 (en) | Intelligent backups with dynamic proxy in virtualized environment | |
US11042444B2 (en) | Cloud instantiation using out-of-order incrementals | |
US10346369B2 (en) | Retrieving point-in-time copies of a source database for creating virtual databases | |
EP2593858B1 (en) | De-duplication based backup of file systems | |
US11210264B2 (en) | Consolidation of expired snapshots using compute on cloud | |
US11256579B2 (en) | Array integration for virtual machine backup | |
US11914554B2 (en) | Adaptable multi-layered storage for deduplicating electronic messages | |
US11194669B2 (en) | Adaptable multi-layered storage for generating search indexes | |
US11003364B2 (en) | Write-once read-many compliant data storage cluster | |
US11392460B2 (en) | Adaptable multi-layer storage with controlled restoration of protected data | |
CN107533495B (en) | Techniques for data backup and recovery | |
US11681586B2 (en) | Data management system with limited control of external compute and storage resources | |
US11080142B2 (en) | Preservation of electronic messages between snapshots | |
US20240061749A1 (en) | Consolidating snapshots using partitioned patch files | |
WO2019139781A1 (en) | Cloud instantiation using out-of-order incrementals | |
JP6939023B2 (en) | Data management systems, storage devices, backup devices, methods and programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210120 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210329 |
|
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: 20210803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210816 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6939023 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |