Summary of the invention
For overcoming in the available data backup the long and big defective of archive index memory requirement release time, the present invention proposes a kind of management system and method for Backup Data.
According to an aspect of the present invention, proposed a kind of management system of Backup Data, having comprised:
Backup service processing device, archive index management devices, Backup Data management devices and memory storage, described backup service processing device links to each other with backup client;
Described backup service processing device is used to receive backup command, Backup Data and the backup data index from backup client, and described Backup Data sent to described Backup Data management devices, described backup data index is sent to described archive index management devices;
Described Backup Data management devices receives described Backup Data and is written into described memory storage, and the local address stored of Backup Data is notified to backup service processing device;
Described archive index management devices receives described backup data index and is written into described memory storage, and is used to receive the archive index collection from described memory storage, sets up or upgrade the archive index table of level sectional type;
Described memory storage is used to store described backup data index and Backup Data, sets up the archive index collection according to local address stored of this backup data index and Backup Data and Backup Data size.
Wherein, described archive index management devices carries out segmentation according to predetermined value to the archive index collection, archive index collection to each segmentation merges, generate and merge index, produce the archive index collection of last layer by described merging index, the archive index collection of described last layer is set up the more archive index collection of last layer based on the limit value identical or different with described predetermined value with the same manner, thereby sets up the archive index table of described level sectional type.
Wherein, when data were recovered, described archive index management devices began to read from the described archive index table the superiors, and successively downward, except that the superiors, other level only reads the current archive index collection that does not reach the segmentation condition, forms described overall situation merging index.
Wherein, described backup service processing device also is used to receive the recovery order from backup client, instructs described Backup Data management devices to extract described Backup Data and sends to described backup client according to merge index from the overall situation of described archive index management devices.
Wherein, described archive index collection comprises a plurality of archive index items of certain each Backup Data of time point, and described archive index item is corresponding to the data warehouse in the described memory storage; Described archive index item is defined as<Start, Length, DepotId, Offset 〉, wherein, Start represents the reference position of Backup Data piece backup object in backup client, Length represents the length of described Backup Data piece, and DepotId represents the numbering of described data warehouse, and Offset represents the deposit position of described Backup Data piece in described data warehouse, wherein, described Start, Length, DepotId and Offse are four bytes or more a plurality of byte.
Wherein, described Backup Data management devices receives from the recovery order of backup service processing device and the described overall situation and merges index, reads corresponding Backup Data from described memory storage, sends to described backup service processing device.
Wherein, after described memory storage produces an archive index collection, described archive index management devices is placed on the bottom of described archive index table, successively upwards judge, whether reach the threshold value of this layer, if reach then merge the archive index collection that produces new last layer, to upgrade described Backup Data table.
Wherein, described Backup Data management devices is from the archive index collection of the superiors, only the archive index collection that each layer merged is placed new set, the archive index collection of forming following each layer of the archive index collection that is merged is not interposing at described new set, described new set is merged, form the described overall situation and merge index.
According to a second aspect of the invention, proposed a kind of management method of Backup Data, having comprised:
Step 10), receive backup command, Backup Data and backup data index, set up the archive index collection according to this backup data index and the local address stored of Backup Data and Backup Data size;
Step 20), according to described archive index collection, set up or upgrade the archive index table of level sectional type.
Wherein, step 20) in, according to predetermined value described archive index collection is carried out segmentation, archive index collection to each segmentation merges, generate and merge index, by the archive index collection of described merging index generation last layer, the archive index collection of described last layer is set up the more archive index collection of last layer based on the limit value identical or different with described predetermined value with the same manner, thereby sets up the described archive index table of level sectional type.
Wherein, described archive index collection comprises a plurality of archive index items of certain each Backup Data of time point, described archive index item is defined as<Start, Length, DepotId, Offset 〉, wherein, Start represents the reference position of Backup Data piece backup object in backup client, Length represents the length of described Backup Data piece, and DepotId represents the numbering of described data warehouse, and Offset represents the deposit position of described Backup Data piece in described data warehouse, wherein, described Start, Length, DepotId and Offse are four bytes or more a plurality of byte.
Wherein, step 20) also comprise: after producing the archive index collection, be placed on the bottom of described archive index table, successively upwards judge, whether reach the threshold value of this layer, if reach then merge the archive index collection that produces new last layer, to upgrade described Backup Data table.
Wherein, step 20) also comprise: the superiors begin to read from the archive index table, and are successively downward, and except that the superiors, other level is only handled the current archive index collection that does not reach the segmentation condition, form the described overall situation and merge index.
Wherein, step 20) also comprises: from the archive index collection of the superiors, only the archive index collection that each layer merged is placed new set, the archive index collection of forming following each layer of the archive index collection that is merged is not interposing at described new set, described new set is merged, form the described overall situation and merge index.
According to a third aspect of the invention we, proposed a kind of restoration methods of Backup Data, having comprised:
Step 10), receive recovery order,, upgrade the archive index table of level sectional type, forms described overall situation merging index according to the archive index collection from backup client;
Step 20), merge index, extract described Backup Data and send to described backup client according to the described overall situation;
Wherein, according to predetermined value described archive index collection is carried out segmentation, archive index collection to each segmentation merges, generate and merge index, produce the archive index collection of last layer by described merging index, the archive index collection of described last layer is set up the more archive index collection of last layer based on the limit value identical or different with described predetermined value with the same manner, thereby sets up the described archive index table of level sectional type.
Wherein, step 20) also comprise:
The superiors begin to read from the archive index table, and are successively downward, and except that the superiors, other level is only handled the current archive index collection that does not reach the segmentation condition, form the described overall situation and merge index.
Wherein, step 20) in, described archive index collection comprises a plurality of archive index items of certain each Backup Data of time point, described archive index item is defined as<Start, Length, DepotId, Offset 〉, wherein, Start represents the reference position of Backup Data piece backup object in backup client, and Length represents the length of described Backup Data piece, DepotId represents the numbering of described data warehouse, Offset represents the deposit position of described Backup Data piece in described data warehouse, wherein, and described Start, Length, DepotId and Offse are four bytes or more a plurality of byte.
The management system of Backup Data of the present invention and method, can active balance storage overhead and time overhead, utilize finite storage space to realize the efficient tissue of Backup Data, support is to the efficient location and the visit of Backup Data, can improve the recovery efficient of Backup Data effectively, improve resume speed, satisfy the current information system to RTO (data target release time, the system recovery time that operation system can be tolerated) requires more and more higher demand, have very strong practicality and wider range of application.
Embodiment
Be described in detail below in conjunction with the management system and the method for the drawings and specific embodiments a kind of data backup provided by the invention.
Fig. 1 illustrates Backup Data management system composition frame chart according to an embodiment of the invention.As shown in Figure 1, the Backup Data management system comprises backup service processing device, archive index management devices, Backup Data management devices and memory storage.The Backup Data management system links to each other with outside backup client (not showing among Fig. 1) by backup service processing device.Memory storage can be existing arbitrarily memory device or virtual storage device.
Backup service processing device is used to receive orders such as backup from backup client, recovery, receive the Backup Data and the backup data index that send from backup client during backup, during recovery according to the overall situation from the archive index management devices merge index call the Backup Data management devices extract institute's backed up data and send institute's backed up data and backup data index to backup client.Backup service processing device is used for the Backup Data from the backup client is sent to the Backup Data management devices, will send to the archive index management devices from the backup data index of backup client.
The archive index management devices receives from the backup data index of backup service processing device and is written into memory storage; Regularly or receive archive index collection in real time from memory storage, upgrade the archive index collection of level sectional type: the archive index collection is carried out segmentation according to predetermined value, archive index collection to each segmentation merges, generate and merge index, by merging the archive index that index produces last layer, formed the institutional framework of a level sectional type; For example, according to predetermined value M the archive index collection is carried out segmentation, then preceding M archive index is first section, be referred to as first archive index of the second layer, M+1 is referred to as second archive index of the second layer to second section of 2M archive index collection, when the second layer arrives M equally, set up the 3rd layer, by that analogy, form the archive index collection of level sectional type.Certainly, the M value can be set according to actual needs, and the limit value of each layer is also unnecessary identical, and for example, the ground floor limit value is elected M as, and the second layer can be elected N as, and M is not equal to N.The archive index management devices merges processing to the archive index collection subsequently, and the backup data index after will merging forms the overall situation and merges index and send to memory storage and backup service processing device.When data are recovered,, begin to read from the superiors for the archive index collection, successively downward, except that the superiors, other level is only handled the current indexed set that does not reach the segmentation condition, one of final formation merges index, visits Backup Data according to this merging index and recovers.
Notice that archive index collection herein can define based on fixed length as of the prior art, also can define based on elongated as following the application proposes.For the merging based on the archive index collection of fixed length, the one of ordinary skilled in the art is known, and the application repeats no more.For the merging based on elongated archive index collection, the application will 7,8 and 9 be discussed in more detail below in conjunction with the accompanying drawings.
The Backup Data management devices receives the Backup Data from backup service processing device, and is stored to memory storage, and the local address stored of Backup Data is notified to backup service processing device; Reception is from the recovery order of backup service processing device and the archive index after the merging, and for example the overall situation merges index, reads corresponding Backup Data, sends to backup service processing device.
Memory storage is used for store backup data index and Backup Data, and the local backup index is used to represent local storage of Backup Data and backup client stored relation, and the institutional framework of local backup index is following to be described in detail in conjunction with Fig. 2.
During backup, backup service processing device receives Backup Data and archive index, send Backup Data to Backup Data management devices (102), by the Backup Data management devices Backup Data is write memory storage (106), and the memory location of Backup Data announced to backup service processing device, backup service processing device sends to archive index management devices (101) after according to the memory location of Backup Data archive index being upgraded, by the archive index management devices archive index is write memory storage (107), and carry out the bookkeeping of archive index collection, upgrade level sectional type archive index collection.During recovery, backup service processing device is according to recovery request, call the merging index of the object time point that the archive index management devices generates and send to backup service processing device (104), and the archive index management devices regularly or in real time reads the archive index collection (108) that Backup Data generates the object time point from memory device, backup service processing device is according to merging index, successively index entry information is sent to Backup Data management devices (102), read Backup Data (105) by the Backup Data management devices from memory storage, send backup service processing device (103) to, send to backup client.
Fig. 2 illustrates Backup Data membership credentials according to an embodiment of the invention.As shown in Figure 2, by backup data set description document, archive index collection (i.e. backup point t among the figure
iIndexed set) and three examples of data warehouse constitute, wherein the data set description document writes down the information of the backup data set that backup tasks produced, the essential information, the backup point information that comprise backup tasks, information by this document description, can obtain Backup Data and concentrate and to comprise the data volume of how many backup point, each backup point, the file number of each backup point, the information such as deposit position of backup point index, this is the global description of whole backup data set.The archive index collection has been described the information of the Backup Data of a backup point generation, describes according to this, can obtain the deposit position of Backup Data in source object and memory storage; Data warehouse is deposited concrete Backup Data content.The backup data set that each backup tasks produces all adopts this method to organize.
Fig. 3 illustrates the structural drawing according to the archive index collection of the embodiment of the invention.Memory storage produces one group of archive index item at each BACKUP TIME point, is referred to as the archive index collection, represents the information header and the memory location of this each Backup Data of time point.As shown in Figure 3, this institutional framework comprises a plurality of archive index items of certain each Backup Data of time point, and each archive index item is corresponding to part or all of certain data warehouse in the memory storage, perhaps a plurality of data warehouses.This archive index item is defined as<Start, Length, DepotId, Offset 〉, wherein, each archive index item uses Start and Length to describe the one section continuous data block that is kept in the backup client, wherein Start represents the reference position of data block in backup object, and Length represents the length of data block, and Start and Length are general to adopt 4 bytes to describe, and also can adopt such as other data of 8 bytes and represent.Each archive index item use<DepotId, Offset〉deposit position of Backup Data on backup storage medium described, be illustrated in the deposit position in the memory storage in the present embodiment, wherein DepotId represents the numbering of data warehouse, Offset is illustrated in the deposit position in this storage repository, DepotId and Offset can adopt 4 bytes to describe, can navigate to the memory location of Backup Data by this descriptor at memory storage, equally, also can adopt 8 bytes or other byte to represent DepotId and Offset.Because each archive index item has the data length of expression data volume size,, that is to say that this institutional framework is with the elongated Backup Data of representing so the backup data quantity that each archive index item is represented can change.Be appreciated that in addition the archive index collection that also can use among Fig. 3 is based on fixed length table registration certificate.When using in system shown in Figure 1, for setting up and calling conveniently, this organization chart forms in memory storage and preserves.Certainly can understand, this institutional framework also can be set up in any one of other three devices and be preserved, and also can be therein sets up in device and preserves in another device therein and be called.In addition, this archive index collection not merely can be used for native system, can also be used for other the data backup system and the structure of the archive index of method
Fig. 4 illustrates the archive index table based on the level segmentation according to the embodiment of the invention.Behind some BACKUP TIME points, produce new backup data set and archive index collection, the archive index collection need be put into the archive index table, the segment threshold that adopts in the level sectional type archive index table shown in Fig. 4 is fixing m, be that every m backup point index produces a merging indexed set, as the index of last layer.Among Fig. 4, I
iExpress time point t
iThe archive index collection that produces, I
2, iExpress time point I
Im.., I
Im+i,.., I
(
i+ 1) m-1
Between the merging indexed set of archive index, this index is the 2nd layer a indexed set, I
N,I is the indexed set of n layer, and this indexed set is the indexed set I by n-1
N-1, im..., I
N-1, im+I.., I
N-1, (
i+ 1) m-1
The merging indexed set.When backup point index of new generation, put into the orlop of index level aggregated(particle) structure, if the number of backup point reaches m in the index segment at place, then merge the archive index that generates last layer, when last layer satisfies the merging condition, then merge and continue to generate more last layer index, carry out this process successively.Certainly, the m value can be set according to actual needs, and the limit value of each layer is also unnecessary identical, and for example, the ground floor limit value is elected m as, and the second layer can be elected n as, and m is not equal to n.The renewal of above archive index table is true-time operation, and is same, also can regularly will add the archive index collection and join in the archive index table.
Fig. 5 illustrates the treatment scheme synoptic diagram that produces behind the archive index collection backup point index table.Detailed process is as follows:
Step 501: order is as the index level number of times h=0 of pre-treatment, and order is as the archive index collection I of pre-treatment
C=I
k, I
kBe time point t
kThe archive index collection that produces;
Step 502: with archive index collection I
kBe put into the current index segment of h layer;
Step 503: whether whether indexed set reaches threshold value m in the current index segment of h layer, if reach threshold value m, then execution in step 504, otherwise execution in step 506;
Step 504: the indexed set in the current index segment of h layer is merged, generate new index and merge the indexed set I of collection as current reason
C
Step 505: when the archive index level of pre-treatment adds 1, execution in step 502 then;
Step 506: finish.
When recovering, need recover according to the data that recovery request reads fixed time point, at this moment the overall situation that just needs to generate the fixed time point merges index, generate and merge the archive index collection that index needs to merge successively from top to bottom each level, Fig. 6 illustrates the process flow diagram that merges index according to the overall situation of the generation fixed time point of the embodiment of the invention, and wherein H represents the hierachy number of concordance list, and K represents the number of indexed set in the H layer, A represents the number of indexed set in the last layer, m
iRepresent the number of index entry set in each segmentation of i layer, detailed process is as follows:
Step 601: at first correlated variables is carried out initialization, calculate the highest level H of archive index table to be processed, handle top indexed set earlier, A=0 represents that the number of indexed set in the H+1 layer is 0;
Step 602: by
Calculate the number of indexed set in the H layer;
Step 603: with the A*m of H layer
HIndividual putting into to K-1 indexed set gathered IS;
Step 604: make H=H-1, prepare to handle the indexed set of one deck down;
Step 605: whether judge H less than 0, if less than 0, just explanation when pre-treatment be lowermost layer, then execution in step 606, otherwise execution in step 603 is handled the indexed set of next level;
Step 606: all indexed sets among the IS are merged, obtain needed merging indexed set;
Step 607: carry out and finish.
Based on the merging of the archive index collection of fixed length, the one of ordinary skilled in the art is known, repeats no more herein.And for the merging based on elongated archive index collection, describe in detail below in conjunction with Fig. 7, Fig. 8 and Fig. 9.
Fig. 7 illustrates the relation between the archive index item according to an embodiment of the invention.Make IndexSet (t
i) and IndexSet (t
j) difference express time point t
iWith time point t
jThe archive index collection, t wherein
i<t
jIndex
m(t
i) (the expression of 0≤m<M) archive index collection IndexSet (t
i) in m archive index item, M represents IndexSet (t
i) in the number of the archive index item that comprised; Index
n(t
j) (the expression of 0≤n<N) archive index collection IndesSet (t
j) n index entry, N represents IndexSet (t
i) in the number of the archive index item that comprised, make DataBlock
m(t
i) expression archive index item Index
m(t
i) represented Backup Data, DataBlock
n(t
j) expression archive index item Index
n(t
j) represented Backup Data.
Make Index
m(t
i)=[a, b], a<=b, Index
n(t
j)=[A, B], A<=B, as shown in Figure 7, r=Index between the source region then
m(t
i) with respect to target interval R=Index
n(t
j) following six kinds of relations are arranged:
1, a left side is independent: (b<A), claim that then r is left independent with respect to target interval R between the source region is called for short left independent if;
2, a left side is overlapping: (a<A and A≤b and b≤B), claim that then r is overlapping with respect to a target interval R left side between the source region is called for short left overlapping if;
3, overlapping: (a>A and b<B), claim that then r is overlapping with respect to target interval R between the source region is called for short overlapping if;
4, right overlapping: (a 〉=A and a≤B and b>B), claim that then r is overlapping with respect to the target interval R right side between the source region is called for short right overlapping if;
5, right independent: (a>B), claim that then r is right independent with respect to target interval R between the source region is called for short right independent if;
6, cover: (a≤A and b 〉=B), claim that then r satisfies covering relation with respect to target interval R between the source region is called for short covering to if.
Be operational convenience, generally will be referred to as target interval, and archive index set that will older time point is referred to as between the source region than the archive index set of new time point.
Fig. 8 illustrates and judges two index entry Index according to an embodiment of the invention
m(t
i) and Index
n(t
j) between the relation logical flow chart, wherein, for Index
m(t
i) and Index
n(t
j) in character definition and Fig. 7 in identical, repeat no more herein.Concrete deterministic process is as described below:
Step 801: whether judge b less than A, if less than, then execution in step 802, otherwise, execution in step 803;
Step 802: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy left independence, execution in step 812;
Step 803: whether judge a greater than B, if greater than, then execution in step 804; Otherwise, execution in step 805;
Step 804: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy right independence, execution in step 812;
Step 805: whether judge a less than A, if less than, then execution in step 806, otherwise, execution in step 809;
Step 806: judge the relation of b and B, if b smaller or equal to B, then execution in step 807; Otherwise execution in step 808;
Step 807: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy left overlapping relation, execution in step 812;
Step 808: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy covering relation, execution in step 812;
Step 809: judge the relation of b and B, if b smaller or equal to B, then execution in step 810, otherwise execution in step 811;
Step 810: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy overlapping relation, execution in step 812;
Step 811: index entry Index is described
m(t
i) and Index
n(t
j) between satisfy right overlapping relation, execution in step 812;
Step 812: finish.
In realization, when the Backup Data of different editions is merged, can the Backup Data piece not moved, also can move the Backup Data piece.In the present embodiment, the Backup Data piece has been carried out merging moved, and be stored in new data warehouse.
Fig. 9 is that backup data index merges process flow diagram according to an embodiment of the invention.Concrete steps are as follows:
Step 901: judge index set IndexSet (t
i) and index set IndexSet (t
j) whether be empty, if be not empty entirely, then execution in step 902, if index set IndexSet is (t
i) be empty, then execution in step 903, if index set IndexSet is (t
j) be empty, then execution in step 904;
Step 902: from index set IndexSet (t
i) and index set IndexSet (t
j) in get an index entry Index respectively
m(t
i) and index set Index
n(t
j), execution in step 905 then;
Step 903: read index set IndexSet (t
j) in remaining all index entries, put into the set of new index, revise the location expression information in the index entry, carry out and finish;
Step 904: read index set IndexSet (t
i) in remaining all index entries, put into the set of new index, revise the location expression information in the index entry, carry out and finish;
Step 905: judge index entry Index
n(t
i) and index entry Index
m(t
i) between relation, if satisfy left independence, execution in step 906; If satisfy left overlapping relation, execution in step 909; If satisfy overlapping relation, execution in step 915; If satisfy covering relation, execution in step 916; If satisfy right overlapping relation, execution in step 919; If satisfy right independence, execution in step 920;
Step 906: revise index Index
m(t
i) in<DepotId, Offset〉information, index entry is put into new index set;
Step 907: judge index set IndexSet (t
i) whether also there is untreated index entry, if there is execution in step 908; Otherwise, execution in step 903;
Step 908: from index set IndexSet (t
i) obtain an index entry Index
m(t
i), execution in step 905;
Step 909: revise index entry Index
n(t
j) index range be [a, B], and revise the location expression information in the index entry;
Step 910: index set IndexSet (t
i) whether also there is untreated index entry, if exist, execution in step 911, otherwise, execution in step 903;
Step 911: from index set IndexSet (t
i) obtain an index entry Index
m(t
i);
Step 912: judge index entry Index
m(t
i) the upper bound whether greater than A, if greater than, then execution in step 913, otherwise execution in step 910;
Step 913: judge index set IndexSet (t
j) whether also there is untreated index entry, if having execution in step 914, otherwise execution in step 904;
Step 914: from index set IndexSet (t
j) obtain an index entry Index
n(t
j), execution in step 905 then;
Step 915: revise the location expression information in this index entry;
Step 916: revise index entry Index
n(t
j) index range be [a, B], and location revision descriptor is with Index
m(t
i) scope pointed is revised as [B, b];
Step 917: judge index set IndexSet (t
i) whether also there is untreated index entry, if having execution in step 918, otherwise execution in step 904;
Step 918: from index set IndexSet (t
j) obtain an index entry Index
n(t
j), execution in step 905 then;
Step 919: revise the location expression information of this index, with Index
m(t
i) scope pointed is revised as [B, b], execution in step 917 then;
Step 920: revise the location expression information of this index, execution in step 917 then.
Can delete backup data index set and Backup Data piece before merging afterwards.
The description of the foregoing description in conjunction with the drawings persons of ordinary skill in the art may appreciate that this system and method can realize with the method that embodiment describes, and also can realize in existing calculating treatmenting equipment.And as can be seen, the merging method of logical relation judgement, merging method and the Backup Data of the institutional framework of this backup data index and backup data index item can not rely on the described system of Fig. 1, can in existing standby system, make up the institutional framework of this backup data index, and realize the merging method of logical relation judgement, merging method and the Backup Data of backup data index item.
It should be noted that at last, above embodiment is only in order to describe technical scheme of the present invention rather than the present technique method is limited, the present invention can extend to other modification, variation, application and embodiment on using, and therefore thinks that all such modifications, variation, application, embodiment are in spirit of the present invention and teachings.