| CPC G06F 11/1469 (2013.01) [G06F 2201/84 (2013.01)] | 20 Claims |

|
1. A method for data recovery in a data protection system, the method comprising:
generating delta values d(n) representing an exclusive disjunction between successive values of data block contents of a content fragment of a dataset at a first time t(n) and a second time t(n−1), wherein n=1 to i, and wherein i is based on a predetermined data protection profile;
providing measures r(n) of a first number of operations of the data protection system in storing contents of a data block at the first time t(n);
storing, at preselected intervals, snapshots s(f(p)) of the contents of the content fragment at t(p), wherein p⊆n, and wherein f(p) is a function that is based on the predetermined data protection profile;
calculating, using the measures r(n), a cost to restore the dataset to a value at a selected point in time t(j) starting from a first snapshot s(f(pa)) and a second snapshot s(f(pb)), wherein the first snapshot s(f(pa)) and the second snapshot s(f(pb)) define a recovery window within which the selected point lies;
selecting a third snapshot s(f(pq)) that minimizes the cost to restore, wherein q=a or b; and
recovering the dataset to the value at the selected point using the third snapshot s(f(pq)) and delta values d(pq) to d(j).
|