Cluster extension in distributed systems using tree method
First Claim
1. A method for managing data storage servers, comprising:
- establishing a cluster of back-end servers organized into nodes, every node in the cluster having a node identifier that is unique in the cluster, every back-end server in any node mirroring every other back-end server in the same node;
establishing a predefined set of ultimate identifiers for nodes that could be created in the cluster; and
storing every new data object on the cluster on a particular node, the particular node having a particular node identifier that identifies a subset of the set of ultimate identifiers, and providing for the object a universal identifier that combines (i) an object identifier that is unique on the particular node and (ii) a server identifier, where the server identifier is one of the ultimate identifiers in the subset, and where the node identifiers for nodes existing in the cluster at any one time identify non-overlapping subsets of the set of ultimate identifiers.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, for managing a cluster of servers organized into nodes. A method of one aspect includes establishing a cluster; establishing a set of ultimate identifiers for nodes resulting from splitting in the cluster; and storing every new data object on a node that has a node identifier that identifies a subset of the set of ultimate identifiers, and providing for the object a universal identifier that combines (i) an object identifier that is unique on the node and (ii) a server identifier that is one of the ultimate identifiers in the subset. A method of another aspect includes generating for a new data object a universal identifier that has a node identifier part that uniquely identifies a node, a reserve part generated at least in part as a pseudo-random value, and an object identifier part that uniquely identifies the object in the node.
-
Citations
34 Claims
-
1. A method for managing data storage servers, comprising:
-
establishing a cluster of back-end servers organized into nodes, every node in the cluster having a node identifier that is unique in the cluster, every back-end server in any node mirroring every other back-end server in the same node;
establishing a predefined set of ultimate identifiers for nodes that could be created in the cluster; and
storing every new data object on the cluster on a particular node, the particular node having a particular node identifier that identifies a subset of the set of ultimate identifiers, and providing for the object a universal identifier that combines (i) an object identifier that is unique on the particular node and (ii) a server identifier, where the server identifier is one of the ultimate identifiers in the subset, and where the node identifiers for nodes existing in the cluster at any one time identify non-overlapping subsets of the set of ultimate identifiers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer program product, tangibly embodied on an information carrier, for managing data storage servers, the product being operable to cause data processing apparatus to perform operations comprising:
-
establishing a cluster of back-end servers organized into nodes, every node in the cluster having a node identifier that is unique in the cluster, every back-end server in any node mirroring every other back-end server in the same node;
establishing a predefined set of ultimate identifiers for nodes that could be created in the cluster; and
storing every new data object on the cluster on a particular node, the particular node having a particular node identifier that identifies a subset of the set of ultimate identifiers, and providing for the object a universal identifier that combines (i) an object identifier that is unique on the particular node and (ii) a server identifier, where the server identifier is one of the ultimate identifiers in the subset, and where the node identifiers for nodes existing in the cluster at any one time identify non-overlapping subsets of the set of ultimate identifiers. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A system for managing data storage, comprising:
-
means for establishing a cluster of back-end servers organized into nodes, every node in the cluster having a node identifier that is unique in the cluster, every back-end server in any node mirroring every other back-end server in the same node;
means for establishing a predefined set of ultimate identifiers for nodes that could be created in the cluster; and
means for storing every new data object on the cluster on a particular node, the particular node having a particular node identifier that identifies a subset of the set of ultimate identifiers, and providing for the object a universal identifier that combines (i) an object identifier that is unique on the particular node and (ii) a server identifier, where the server identifier is one of the ultimate identifiers in the subset, and where the node identifiers for nodes existing in the cluster at any one time identify non-overlapping subsets of the set of ultimate identifiers. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34-51. -51. (canceled)
Specification