System and method for logical deletion of stored data objects
First Claim
1. A system, comprising:
- a data store that stores a plurality of objects, wherein at least some of the plurality of objects comprise a same object name and different version identifiers, and wherein the objects with the same name and the different version identifiers are stored in a bucket;
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 directed to an object from the data store, wherein the request specifies an object name for the object; and
in response to receiving the request directed to the object;
determining whether the request specifies a particular object version identifier for the object having the specified object name;
in response to determining the request specifies a particular object version identifier for the object, performing the request for the object having the specified object name and the specified particular object version identifier; and
in response to determining the request does not specify a particular object version identifier for the object, performing the request for an object version with the specified object name having a latest object version identifier.
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.
-
Citations
20 Claims
-
1. A system, comprising:
-
a data store that stores a plurality of objects, wherein at least some of the plurality of objects comprise a same object name and different version identifiers, and wherein the objects with the same name and the different version identifiers are stored in a bucket; 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 directed to an object from the data store, wherein the request specifies an object name for the object; and in response to receiving the request directed to the object; determining whether the request specifies a particular object version identifier for the object having the specified object name; in response to determining the request specifies a particular object version identifier for the object, performing the request for the object having the specified object name and the specified particular object version identifier; and in response to determining the request does not specify a particular object version identifier for the object, performing the request for an object version with the specified object name having a latest object version identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more non-transitory, computer-readable storage media storing program instructions that when executed on or across one or more processors cause the one or more processors to perform:
-
receiving a request directed to an object from a data store, wherein the data store stores multiple versions of objects for at least some objects stored in the data store, wherein the request specifies an object name but does not specify a version identifier; determining an object version of the object having the specified object name with a latest object version identifier; and performing the request for the object version of the object with the specified object name having the latest object version identifier. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method, comprising:
-
receiving a request directed to an object from a data store, wherein the data store stores multiple versions of objects for at least some objects with a same object name, wherein the request specifies an object name for the object, but does not specify a version identifier; determining an object version of the object having the specified object name with a latest object version identifier; and performing the request for an object version of the object with the specified object name having the latest object version identifier. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification