×

Systems and methods for providing nonlinear journaling

  • US 7,899,800 B2
  • Filed: 08/18/2006
  • Issued: 03/01/2011
  • Est. Priority Date: 08/18/2006
  • Status: Active Grant
First Claim
Patent Images

1. A nonlinear method of journaling data being written to a first storage unit, wherein said first storage unit is part of a system comprising a plurality of storage units that execute transactions global to the system, comprising:

  • storing a plurality of groups of data in a journal located in persistent storage, the data groups associated with data to be written to the first storage unit, wherein a first data group associated with a first global transaction is stored prior to a second data group associated with a second global transaction being stored, and the second data group is stored prior to a third data group associated with a third global transaction being stored, wherein the second global transaction is distributed among two or more storage units, such that the second global transaction is associated with a request to write data to the first storage unit and a request to write different data to at least one other storage unit;

    storing information about the location and status of each of said plurality of groups of data, wherein the information about the status of a group of data includes a transaction state of the associated global transaction;

    providing a data structure linking the stored groups of data and the information about each of said groups of data, wherein the first data group is linked to the second data group, and the second data group is linked to the third data group; and

    providing for the unlinking of any data group and its corresponding stored information, without regards to the order in which the data group was stored in the journal, wherein providing for the unlinking comprises;

    determining that the transaction state of the second global transaction indicates that the second global transaction is done, and further determining that all data writes associated with the second global transaction and the first storage unit have been written to the first storage unit;

    linking the first data group to the third data group; and

    unlinking the second data group.

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