Consistency without ordering dependency
First Claim
1. A system comprising:
- at least one processor;
memory; and
at least one program module comprising particular instructions via which the system is configured, based on execution by the at least one processor of at least a portion of the particular instructions, to;
copy each of a plurality of objects that are involved in a transaction, where the objects are copied from first locations on a data store at which the objects are stored;
create a write plan that defines an association between the copied objects; and
request that the copied objects and the write plan be written, according to the write plan, to the data store at second locations that are different than the first locations on the data store, where the copied objects and the write plan written at the second locations on the data store do not overwrite any portion of the corresponding objects stored at the first locations on the data store.
2 Assignments
0 Petitions
Accused Products
Abstract
Aspects of the subject matter described herein relate to maintaining consistency in a storage system. In aspects, one or more objects may be updated in the context of a transaction. In conjunction with updating the objects, logical copies of the objects may be obtained and modified. A request to write the updated logical copies is sent to a storage controller. The logical copies do not overwrite the original copies. In conjunction with sending the request, a data structure is provided for the storage controller to store on the disk. The data structure indicates the one or more objects that were supposed to be written to disk and may include verification data to indicate the content that was supposed to be written to disk. During recovery, this data structure may be used to determine whether all of the object(s) were correctly written to disk.
41 Citations
20 Claims
-
1. A system comprising:
-
at least one processor; memory; and at least one program module comprising particular instructions via which the system is configured, based on execution by the at least one processor of at least a portion of the particular instructions, to; copy each of a plurality of objects that are involved in a transaction, where the objects are copied from first locations on a data store at which the objects are stored; create a write plan that defines an association between the copied objects; and request that the copied objects and the write plan be written, according to the write plan, to the data store at second locations that are different than the first locations on the data store, where the copied objects and the write plan written at the second locations on the data store do not overwrite any portion of the corresponding objects stored at the first locations on the data store. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method performed on a computing device that includes at least one processor and memory, the method comprising:
-
copying, by the computing device, each of a plurality of objects that are involved in a transaction, where the objects are copied from first locations on a data store at which the objects are stored; creating, by the computing device, a write plan that defines an association between the copied objects; and requesting, by the computing device, that the copied objects and the write plan be written, according to the write plan, to the data store at second locations that are different than the first locations on the data store, where the copied objects and the write plan written at the second locations on the data store do not overwrite any portion of the corresponding objects stored at the first locations on the data store. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. At least one computer-readable medium comprising:
memory that comprises at least one program module comprising particular instructions that, based on execution of at least a portion of the particular instructions by a computing device, configure the computing device to; copy each of a plurality of objects that are involved in a transaction, where the objects are copied from first locations on a data store at which the objects are stored; create a write plan that defines an association between the copied objects; and request that the copied objects and the write plan be written, according to the write plan, to the data store at second locations that are different than the first locations on the data store, where the copied objects and the write plan written at the second locations on the data store do not overwrite any portion of the corresponding objects stored at the first locations on the data store. - View Dependent Claims (16, 17, 18, 19, 20)
Specification