ENABLING PLACEMENT CONTROL FOR CONSISTENT HASHING-BASED OBJECT STORES
First Claim
1. A method for controlling object placement, comprising:
- receiving a first request to store a first object in an object store which includes a plurality of nodes, wherein the object store determines a placement of the first object in one of the plurality based on an object namespace including a numerical namespace and a lexicographical namespace, wherein each node is assigned a corresponding subspace of the object namespace for storing objects, and wherein the first object includes a numerical namespace value and a lexicographical namespace value;
generating a second object, wherein the second object is a replica of the first object;
storing the first object in a first node of the plurality of nodes based on the lexicographical namespace value; and
storing the second object in a second node of the plurality of nodes based on the numerical namespace value.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are disclosed herein for controlling object placement in object storage. A placement component of a storage application receives a request to store a first object in an object store having multiple nodes. The object store determines a placement of the first object to one of the nodes based on an object namespace including a numerical namespace and a lexicographical namespace. Each node is assigned a corresponding subspace of the object namespace for storing objects. The first object includes a numerical namespace value and a lexicographical namespace value. A second object (a replica of the first object) is generated. The first object is stored to a first node based on the lexicographical namespace value. The second object is stored to a second node based on the numerical namespace value.
-
Citations
20 Claims
-
1. A method for controlling object placement, comprising:
-
receiving a first request to store a first object in an object store which includes a plurality of nodes, wherein the object store determines a placement of the first object in one of the plurality based on an object namespace including a numerical namespace and a lexicographical namespace, wherein each node is assigned a corresponding subspace of the object namespace for storing objects, and wherein the first object includes a numerical namespace value and a lexicographical namespace value; generating a second object, wherein the second object is a replica of the first object; storing the first object in a first node of the plurality of nodes based on the lexicographical namespace value; and storing the second object in a second node of the plurality of nodes based on the numerical namespace value. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product, comprising:
a computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code configured to perform an operation for controlling object placement, comprising; receiving a first request to store a first object in an object store which includes a plurality of nodes, wherein the object store determines a placement of the first object in one of the plurality based on an object namespace including a numerical namespace and a lexicographical namespace, wherein each node is assigned a corresponding subspace of the object namespace for storing objects, and wherein the first object includes a numerical namespace value and a lexicographical namespace value, generating a second object, wherein the second object is a replica of the first object, storing the first object in a first node of the plurality of nodes based on the lexicographical namespace value, and storing the second object in a second node of the plurality of nodes based on the numerical namespace value. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
15. A system, comprising:
-
a processor; and a memory storing a program, which, when executed on the processor, performs an operation for controlling object placement, the operation comprising; receiving a first request to store a first object in an object store which includes a plurality of nodes, wherein the object store determines a placement of the first object in one of the plurality based on an object namespace including a numerical namespace and a lexicographical namespace, wherein each node is assigned a corresponding subspace of the object namespace for storing objects, and wherein the first object includes a numerical namespace value and a lexicographical namespace value, generating a second object, wherein the second object is a replica of the first object, storing the first object in a first node of the plurality of nodes based on the lexicographical namespace value, and storing the second object in a second node of the plurality of nodes based on the numerical namespace value. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification