摘要 |
According to the present invention methods and an infrastructure are provided for performing repetitive data protection and a corresponding restore of data for block oriented data objects comprising several indexed segments. For implementing the invention, timestamps t<SUB>k </SUB>are set by a time k; and only the first data modification of a segment is recorded, after a timestamp t<SUB>k </SUB>has been set, by storing the old data contents of said segment together with the segment index i an said timestamp t<SUB>k </SUB>as undo-log block in a journal, first, before overwriting said segment with the modified new data. The main idea of the invention is that the undo-log blocks of the segments are distributed to N journals j<SUB>n</SUB>, wherein N>1 and n=0, . . . , N-1, such that a) at time t<SUB>n+(m.N) </SUB>(0<=n<N) at most m+1 undo-log blocks corresponding to the same segment are recorded in the journal j<SUB>0</SUB>, b) during the time interval [t<SUB>k+(m.N)</SUB>, t<SUB>(m+1).N) </SUB>no duplicates are recorded in the union of journals j<SUB>0</SUB>, . . . j<SUB>k</SUB>, (0<=k<N), and c) an undo-log block is written to journal j<SUB>n+(m.N) </SUB>(0<n<N) if and only if the corresponding segment was modified in time interval [t<SUB>(n-1)+(m.N)</SUB>, t<SUB>n+(m.N)</SUB>) for the last time before the current modification; wherein m=0, 1, . . . ∞ and wherein the timestamps t<SUB>(m.N) </SUB>represent consecutive reset points. Then, only journals j<SUB>0</SUB>, . . . , j<SUB>k </SUB>are needed for a point in time restore of time r<SUB>k+(m.N) </SUB>and all changes that were written after t<SUB>(m+1).N </SUB>located in journal j<SUB>0</SUB>. Thus, the present invention allows to reduce the amount of data that needs to be read from the journals in order to recover the system to a given point in time. |