SYSTEM AND METHOD FOR LOGICAL DELETION OF STORED DATA OBJECTS
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for providing object versioning in a storage system may support the logical deletion of stored objects. In response to a delete operation specifying both a user key and a version identifier, the storage system may permanently delete the specified version of an object having the specified key. In response to a delete operation specifying a user key, but not a version identifier, the storage system may create a delete marker object that does not contain object data, and may generate a new version identifier for the delete marker. The delete marker may be stored as the latest object version of the user key, and may be addressable in the storage system using a composite key comprising the user key and the new version identifier. Subsequent attempts to retrieve the user key without specifying a version identifier may return an error, although the object was not actually deleted.
6 Citations
35 Claims
-
1-18. -18. (canceled)
-
19. A system, comprising:
-
a data store that stores a plurality of objects, wherein each of the plurality of objects comprises a user key and a version identifier, and wherein at least some of the plurality of objects further comprise object data; one or more processors; a memory coupled to the one or more processors and storing program instructions that when executed by the one or more processors cause the one or more processors to perform; receiving a request to retrieve an object from the data store, wherein the request specifies a user key and targets a particular object version; and in response to receiving the request to retrieve an object; determining whether the particular object version is a delete marker object comprising the specified user key, wherein the presence of a delete marker object comprising the specified user key in the data store indicates a prior logical deletion of the specified user key from the data store; and in response to determining that the particular object version is a delete marker object comprising the specified user key; returning an error indication; and refraining from returning object data contained in any of the plurality of objects stored in the data store. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A non-transitory, computer-readable storage medium storing program instructions that when executed on one or more computers cause the one or more computers to perform:
-
receiving a request to perform an operation to list user keys of objects stored in a data store on one or more of the one or more computers, wherein the data store stores a plurality of objects, wherein each of the plurality of objects comprises a user key and a version identifier, and wherein the presence of a delete marker object comprising a particular user key in the data store indicates a prior logical deletion of the particular user key from the data store; and in response to receiving the request to perform an operation to list user keys; returning a list of user keys contained in object versions stored in the data store, wherein the list does not include user keys contained in one or more delete marker objects in the data store that are the latest object versions containing those user keys. - View Dependent Claims (30, 31, 32, 33, 34, 35)
-
Specification