Patent classifications
G06F11/2053
EXTRA-RESILIENT CACHE FOR RESILIENT STORAGE ARRAY
A data storage array is configured for m-way resiliency across a first plurality of storage nodes. The m-way resiliency causes the data storage array to direct each top-level write to at least m storage nodes within the first plurality, for committing data to a corresponding capacity region allocated on each storage node to which each write operation is directed. Based on the data storage array being configured for m-way resiliency, an extra-resilient cache is allocated across a second plurality of storage nodes comprising at least s storage nodes (where s>m), including allocating a corresponding cache region on each of the second plurality for use by the extra-resilient cache. Based on determining that a particular top-level write has not been acknowledged by at least n of the first plurality of storage nodes (where n≤m), the particular top-level write is redirected to the extra-resilient cache.
Resilient Mediation Between Storage Systems Replicating A Dataset
Resilient mediation between storage systems replicating a dataset, including: receiving, by a mediation service from one or more storage systems that synchronously replicate a dataset, a request to resolve which storage system continues to service a dataset after the request; and sending, from the mediation service to at least one of the storage systems, a positive mediation result, wherein: the storage systems that received the positive mediation result continue to process data storage requests directed to the dataset, and the storage systems that did not receive a positive mediation result from the mediation service do not continue to process data storage requests directed to the dataset.
DATA RECOVERY WITHIN A MEMORY SUB-SYSTEM
A command to transfer data in a portion of a memory component to a recovery portion of a different memory component is received from a host system, wherein the portion of the memory component is associated with a portion of the memory component that has failed, and the data in the portion of the memory component is recovered and transferred to the recovery portion of the different memory component without moving or processing the data through the host system responsive to receipt of the command.
Directing operations to synchronously replicated storage systems
Managing connectivity to synchronously replicated storage systems, including: identifying a plurality of storage systems across which a dataset is synchronously replicated; identifying a host that can issue I/O operations directed to the dataset; identifying a plurality of data communications paths between the host and the plurality of storage systems across which a dataset is synchronously replicated; identifying, from amongst the plurality of data communications paths between the host and the plurality of storage systems across which a dataset is synchronously replicated, one or more optimal paths; and issuing, to the host, an identification of the one or more optimal paths.
Managing Storage System Replication
Managing storage systems that are synchronously replicating a dataset, including: detecting a change in membership to the set of storage systems synchronously replicating the dataset; and applying one or more membership protocols to determine a new set of storage systems to synchronously replicate the dataset, wherein the one or more membership protocols include a quorum protocol, an external management protocol, or a racing protocol, and wherein one or more I/O operations directed to the dataset are applied to a new set of storage systems.
Continuing To Service A Dataset After Prevailing In Mediation
Continuing to service a dataset after prevailing in mediation, including: requesting, by a first storage system, mediation from a mediation service that is configured to resolve which storage system continues to service a dataset after the triggering event, wherein the dataset is synchronously replicated by a plurality of storage systems that includes the first storage system and a second storage system; and detaching the second storage system from a plurality of storage systems synchronously replicating the dataset.
REPLICATION USING SHARED CONTENT MAPPINGS
Synchronizing metadata among storage systems synchronously replicating a dataset, where synchronizing the metadata includes: receiving, at a first storage system of the storage systems, an I/O operation directed to the dataset; determining, in dependence upon the I/O operation, a metadata update describing a mapping of segments of content to a virtual address within a storage object, wherein the storage object includes the dataset; and synchronizing metadata on a second storage system of the storage systems by sending the metadata update to the second storage system to update a metadata representation on the second storage system in accordance with the metadata update.
Flexible Raid Layouts In A Storage System
A system, method, and product for flexible RAID layouts in a storage system, including: determining a reliability of an individual storage device of a plurality of storage devices, the individual storage device containing a plurality of portions of a Redundant Array of Independent Disks (RAID) stripe in a storage system, wherein the RAID stripe includes user data and inter-device parity data; detecting a change in the reliability of the individual storage device that contains the portion corresponding to the RAID stripe; and changing an amount of intra-device protection corresponding to the RAID stripe by decreasing, in the RAID stripe, an amount of space used to store the inter-device protection data.
Flexible RAID layouts in a storage system
A system, method, and product for flexible RAID layouts in a storage system, including: determining a reliability of an individual storage device of a plurality of storage devices, the individual storage device containing a plurality of portions of a Redundant Array of Independent Disks (RAID) stripe in a storage system, wherein the RAID stripe includes user data and inter-device parity data; detecting a change in the reliability of the individual storage device that contains the portion corresponding to the RAID stripe; and changing an amount of intra-device protection corresponding to the RAID stripe by decreasing, in the RAID stripe, an amount of space used to store the inter-device protection data.
Maintaining a synchronous replication relationship between two or more storage systems
Maintaining a synchronous replication relationship between two or more storage systems, including: receiving, by at least one of a plurality of storage systems across which a dataset will be synchronously replicated, timing information for at least one of the plurality of storage systems; and establishing, based on the timing information, a synchronous replication lease describing a period of time during which the synchronous replication relationship is valid, wherein a request to modify the dataset may only be acknowledged after a copy of the dataset has been modified on each of the storage systems.