Mechanism for persisting messages in a storage system
First Claim
1. A storage system, comprising:
- a plurality of storage nodes;
the plurality of storage nodes configurable to distribute redundant copies of a message and write the redundant copies of the message to NVRAM (non-volatile random-access memory);
the plurality of storage nodes configurable to write the redundant copies of the message from the NVRAM to flash memory; and
the plurality of storage nodes configurable to open the redundant copies of the message, responsive to restoration of power after power loss, and cooperate to determine an action to carry to completion, and wherein each of the plurality of storage nodes is configurable to have a plurality of authorities with each authority in memory in the storage system, supported by a controller or processor in the storage system and controlling how and where data is written in the storage system according to a range of data identifiers for that authority, and controlling how and where data is written in the storage system according to the redundant copies of messages between sending authorities and receiving authorities.
0 Assignments
0 Petitions
Accused Products
Abstract
A plurality of storage nodes is provided. Each of the plurality of storage nodes includes nonvolatile solid-state memory for user data storage. The plurality of storage nodes is configured to distribute the user data and metadata associated with the user data throughout the plurality of storage nodes such that the plurality of storage nodes maintain the ability to read the user data, using erasure coding, despite a loss of two of the plurality of storage nodes. The plurality of storage nodes is configured to initiate an action based on the redundant copies of the metadata, responsive to achieving a level of redundancy for the redundant copies of the metadata. A method for accessing user data in a plurality of storage nodes having nonvolatile solid-state memory is also provided.
-
Citations
20 Claims
-
1. A storage system, comprising:
-
a plurality of storage nodes; the plurality of storage nodes configurable to distribute redundant copies of a message and write the redundant copies of the message to NVRAM (non-volatile random-access memory); the plurality of storage nodes configurable to write the redundant copies of the message from the NVRAM to flash memory; and the plurality of storage nodes configurable to open the redundant copies of the message, responsive to restoration of power after power loss, and cooperate to determine an action to carry to completion, and wherein each of the plurality of storage nodes is configurable to have a plurality of authorities with each authority in memory in the storage system, supported by a controller or processor in the storage system and controlling how and where data is written in the storage system according to a range of data identifiers for that authority, and controlling how and where data is written in the storage system according to the redundant copies of messages between sending authorities and receiving authorities. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A storage cluster, comprising:
-
a plurality of storage nodes, configurable to write data stripes across the plurality of storage nodes; each of at least a subset of the plurality of storage nodes configurable to write a redundant copy of a message to NVRAM (non-volatile random-access memory) having an energy reserve; each of the at least a subset of the plurality of storage nodes configurable to write the redundant copy of the message from the NVRAM to flash memory; and the plurality of storage nodes configurable to access the redundant copies of the message and determine an action to carry to completion based on the redundant copies of the message, responsive to restart after the loss of power, and wherein each of the plurality of storage nodes is configurable to have a plurality of authorities with each authority in memory in the storage cluster, supported by a controller or processor in the storage cluster and controlling how and where data is written in the storage cluster according to a range of data identifiers for that authority, and controlling how and where data is written in the storage system according to such redundant copies of messages between sending authorities and receiving authorities. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for persisting messages in a storage system, executed by the storage system, comprising:
-
distributing redundant copies of a message across a plurality of storage nodes in a storage cluster; writing the redundant copies of the message to NVRAM (non-volatile random-access memory); writing the redundant copies of the message from the NVRAM to flash memory, responsive to loss of power; accessing the redundant copies of the message, responsive to restart after the loss of power; and determining an action to carry to completion, based on the redundant copies of the message, and wherein each of the plurality of storage nodes is configurable to have a plurality of authorities with each authority in memory in the storage cluster, supported by a controller or processor in the storage cluster and controlling how and where data is written in the storage cluster according to a range of data identifiers for that authority, and controlling how and where data is written in the storage system according to such redundant copies of messages between sending authorities and receiving authorities. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification