×

Systems and methods for providing nonlinear journaling

  • US 7,822,932 B2
  • Filed: 08/18/2006
  • Issued: 10/26/2010
  • Est. Priority Date: 08/18/2006
  • Status: Active Grant
First Claim
Patent Images

1. A method of journaling data in a storage unit of a distributed storage system to provide a shadow buffer in the event that the distributed system aborts a transaction, the method comprising:

  • receiving, via a computer processor, first data to be stored in a first journal, the first journal stored on a first storage unit;

    journaling said first data in the first journal on the first storage unit, said first data associated with a first global transaction that the distributed storage system has committed to write, said first data designated to be written to a storage location in a memory of said first storage unit, but said first data has not yet been written to said storage location;

    receiving second data to be stored in the first journal;

    journaling said second data in said first storage unit, said second data associated with a second global transaction that the distributed storage system has not yet committed to write, said second data designated to be written to said storage location in the memory of said first storage unit, said second data superseding said first data;

    receiving third data to be stored in a second journal, the second journal stored on a second storage unit, said second storage unit being a different storage unit than the first storage unit;

    journaling said third data in the second journal on the second storage unit, said third data associated with the second global transaction, said third data designated to be written to a storage location in a memory of said second storage unit; and

    preserving said first data for purposes of restoring said first data, in the event that the distributed storage system aborts said second global transaction;

    wherein said first data is preserved at least until one of the following conditions is met;

    the second global transaction commits the second data to being stored at the location on said first storage unit or the second global transaction aborts, wherein if the second global transaction aborts, the preserved first data is then designated to be written to said storage location in the memory of said first storage unit.

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