Data striping across storage nodes that are assigned to multiple logical arrays
First Claim
Patent Images
1. A storage cluster comprising:
- a plurality of storage nodes coupled together as the storage cluster;
the plurality of storage nodes configured to cooperate with each other to partition the storage cluster into two or more logical arrays and assign data to the two or more logical arrays, without presence of and reliance upon a central controller, wherein each logical array functions as a storage cluster; and
the plurality of storage nodes configured to cooperate with each other to establish data striping across the plurality of storage nodes for user data of each of the two or more logical arrays, with a plurality of the authorities controlling data striping of one of the two or more logical arrays, each authority controlling data according to an authority-specific range of data identifiers, and wherein the plurality of storage nodes are further configured to establish metadata and control, for both user data of a first logical array and user data of a second logical array, across the plurality of storage nodes.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage cluster is provided. The storage cluster includes a plurality of storage nodes coupled together as the storage cluster. The plurality of storage nodes is configured to assign data to two or more logical arrays and the plurality of storage nodes is configured to establish data striping across the plurality of storage nodes for user data of each of the two or more logical arrays.
338 Citations
17 Claims
-
1. A storage cluster comprising:
-
a plurality of storage nodes coupled together as the storage cluster; the plurality of storage nodes configured to cooperate with each other to partition the storage cluster into two or more logical arrays and assign data to the two or more logical arrays, without presence of and reliance upon a central controller, wherein each logical array functions as a storage cluster; and the plurality of storage nodes configured to cooperate with each other to establish data striping across the plurality of storage nodes for user data of each of the two or more logical arrays, with a plurality of the authorities controlling data striping of one of the two or more logical arrays, each authority controlling data according to an authority-specific range of data identifiers, and wherein the plurality of storage nodes are further configured to establish metadata and control, for both user data of a first logical array and user data of a second logical array, across the plurality of storage nodes. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A plurality of storage nodes, comprising:
-
one or more chassis; and a plurality of storage nodes in the one or more chassis, wherein the one or more chassis couples the plurality of storage nodes as a storage cluster, wherein; the plurality of storage nodes are configured to cooperate with each other to partition the plurality of storage nodes and establish a first logical array and a second logical array, without presence of and reliance upon a central controller, wherein the first logical array functions as a first storage cluster and the second logical array functions as a second storage cluster; and the plurality of storage nodes are configured to cooperate with each other to perform data striping, controlled by a plurality of authorities in the plurality of storage nodes, for user data of the first logical array and the second logical array across the plurality of storage nodes and data striping, each of the first and second pluralities of authorities controlling data according to an authority-specific range of data identifiers, and wherein the plurality of storage nodes are further configured to establish metadata and control, for both user data of the first logical array and user data of the second logical array, across the plurality of storage nodes. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A method for data striping across storage nodes in a storage cluster performed by the storage nodes cooperating with each other without presence of and reliance upon a central storage array controller, the method comprising:
-
creating at least a first logical array and a second logical array in a plurality of storage nodes of a storage cluster, wherein the first logical array acts as a first storage cluster and the second logical array acts as a second storage cluster; performing data striping, under control of a plurality of authorities in the plurality of storage nodes according to authority-specific ranges of data identifiers, for user data, of which each respective logical array has ownership, across the plurality of storage nodes, and wherein the plurality of storage nodes are further configured to establish metadata and control, for both user data of the first logical array and user data of the second logical array, across the plurality of storage nodes. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification