Abstract:
A method and system for enabling low latency response and data availability of a cloud storage service are disclosed. A request to write data to the cloud storage system is received. At least two copies of the data are stored on separate ones of local storage components, where each one of the local storage components is associated with a respective fault domain from a set of fault domains, and a failure of the respective fault domain does not cause a failure of any other fault domain from the set of fault domains. Responsive to storing the at least two copies of the data on the local storage components, a reply is transmitted to the application confirming that the request to write data has been completed regardless of whether the data has been stored on a long term storage device.
Abstract:
Embodiments are generally directed to high capacity energy backed memory with off device storage. A memory device includes a circuit board; multiple memory chips that are installed on the circuit board; a controller to provide for backing up contents of the memory chips when a power loss condition is detected; a connection to a backup energy source; and a connection to a backup data storage that is separate from the memory device.
Abstract:
In some examples, a multi-node system may access physical storage divided into extents and further arranged into extent groups that may be allocated on demand as thin provisioned storage in response to write requests. Protection class instances are set with specified data protection capabilities. Each instance acts as a logical unit having a distinct addressable block storage space from the extent groups allocated thereto. The extents in an extent group to be allocated to a given protection class instance may vary depending on the protection class capabilities. Management information for the extents, extent groups, and protection classes may be stored in mirrored devices separate from the write data stored in the extents for providing redundant protection to the management information and for increasing the availability of write data in the event of a failure that may cause data loss at one or more locations in the system.
Abstract:
Various embodiments are generally directed to techniques for handling errors affecting the at least partially parallel performance of data access commands between nodes of a storage cluster system. An apparatus may include a processor component of a first node, an access component to perform a command received from a client device via a network to alter client device data stored in a first storage device coupled to the first node, a replication component to transmit a replica of the command to a second node via the network to enable performance of the replica by the second node at least partially in parallel, an error component to retry transmission of the replica based on a failure indicated by the second node and a status component to select a status indication to transmit to the client device based on the indication of failure and results of retrial of transmission of the replica.
Abstract:
The storage system includes storage devices which have plural storage blocks. A first node with a first processor memory is configured to store first information which manages states of the storage blocks, and a second node including a second processor and memory is configured to store second information which manages the states of the storage blocks are included in the storage system to handle file operations. When a failure occurs on the second node, the first processor is configured to change the state of one or more storage blocks, previously reserved by the second node to be used for storing data by the second node, to one or more garbage blocks and perform garbage resolution processing thereon before becoming available for data storage. This process allows for rapid recovery of the filesystem as the entirety of the filesystem metadata need not be examined.
Abstract:
While connected to cloud storage, a computing device writes data and metadata to the cloud storage, indicates success of the write to an application of the computing device, and, after indicating success to the application, writes the data and metadata to local storage of the computing device. The data and metadata may be written to different areas of the local storage. The computing device may also determine that it has recovered from a crash or has connected to the cloud storage after operating disconnected and reconcile the local storage with the cloud storage. The reconciliation may be based at least on a comparison of the metadata stored in the area of the local storage with metadata received from the cloud storage. The cloud storage may store each item of data contiguously with its metadata as an expanded block.
Abstract:
A storage system including a first boot drive configured to store an operating system, one or more data drives configured to store user data, the one or more data drives distinct from the first boot drive, and a controller configured to detect when a second boot drive is added to the storage system, and automatically configure the first boot drive and the second boot drive in a redundant array of independent disks ("RAID") configuration when the controller detects that the second boot drive is added to the storage system.