×

Point in time database restore from storage snapshots

  • US 9,558,078 B2
  • Filed: 10/28/2014
  • Issued: 01/31/2017
  • Est. Priority Date: 10/28/2014
  • Status: Active Grant
First Claim
Patent Images

1. A system comprising:

  • a database, wherein the database comprises;

    data storage for storing data items;

    log storage for storing log records that comprise a list of operations performed on the data storage at discrete points in time; and

    a mapping structure representing state of the data in the database at any given point in time, the mapping structure comprising a set of pointers to storage locations for data as currently stored at the given point in time;

    one or more physical computer storage media comprising computer executable instructions;

    one or more processors, which when executing the computer executable instructions, cause the system to archive the database by providing point in time recovery of the database by restoring the database to a selected point in time between adjacent snapshots, by performing the following;

    taking a plurality of snapshots each comprising;

    a data portion comprising pointers to storage locations for data items existing in the database at each respective point in time;

    a log portion comprising a state of the log storage containing records that represent an enumeration of operations performed on the data storage at each respective point in time;

    andrestoring the database to a particular point in time between a first point in time and a second point in time that is adjacent to the first point in time, by performing the following;

    for a first snapshot corresponding to the first point in time, performing the following;

    applying the data portion comprising pointers to storage locations for data items existing in the database at the first point in time; and

    applying the log portion comprising a state of the log storage containing records that represent an enumeration of operations performed on the data storage at the first point in time; and

    for a second snapshot corresponding to the adjacent second point in time, applying a portion which comprises some but not all of the log portion of the second snapshot, wherein the applied portion comprises only those log records that represent an enumeration of operations performed on stored data up to the particular point in time between the first point in time and the second point in time.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×