Patent classifications
G06F11/2053
Dynamically processing data in a vast data ingestion system
A method begins with a first group of computing devices of a plurality of computing devices of a storage network receiving data objects having a first data type identifier of a plurality of data type identifiers, where the plurality of data type identifiers correspond to a plurality of data types associated with the data objects. The method continues with the first group of computing devices interpreting the data objects having the first data type identifier to sort, based on sorting criteria the data objects into a first processing category and a second processing category. The method continues with the first group of computing devices error encoding the data objects in the second processing category based on short term storage error encoding parameters to produce pluralities of sets of encoded data slices and sending the pluralities of sets of encoded data slices to storage and execution units for storage therein.
Fabricless allocation of cache slots of local shared caches with cache slot recycling in a fabric environment
Worker threads allocate at least some recycled cache slots of a local portion of a shared memory to the compute node to which the memory portion is local. More specifically, the recycled cache slots are allocated prior to receipt of the IO that the recycled cache slot will be used to service. The allocated recycled cache slots are added to primary queues of each compute node. If a primary queue is full then the worker thread adds the recycled cache slot, unallocated, to a secondary queue. Cache slots in the secondary queue can be claimed by any compute node associated with the shared memory. Cache slots in the primary queue can be used by the local compute node without sending test and set messages via the fabric that interconnects the compute nodes, thereby improving IO latency.
Using host connectivity states to avoid queuing I/O requests
Using host connectivity states to avoid queuing I/O requests: identifying a fault in data communications between a first storage system and a second storage system among a plurality of storage systems across which a dataset is synchronously replicated; updating, upon identifying the fault, an access state of a data communications path between first storage system and a host from an active state to a transitional state with respect to the dataset; and indicating, to the host, a first access state change.
Performance-Based Prioritization For Storage Systems Replicating A Dataset
Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.
Prioritizing highly performant storage systems for servicing a synchronously replicated dataset
Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.
Dynamic protection data in a storage system
A system and method for adaptive RAID geometries. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array is configured to determine a first RAID layout for use in storing data, and write a first RAID stripe to the device group according to the first RAID layout. In response to detecting a first condition, the controller is configured to determine a second RAID layout which is different from the first RAID layout, and write a second RAID stripe to the device group according to the second layout, whereby the device group concurrently stores data according to both the first RAID layout and the second RAID layout.
Prioritizing Highly Performant Storage Systems For Servicing A Synchronously Replicated Dataset
Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.
Managing Storage Systems That Are Synchronously Replicating A Dataset
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.
Recovery for storage systems synchronously replicating a dataset
Recovery for storage systems synchronously replicating a dataset, including: receiving, by at least one storage system among the plurality of storage systems synchronously replicating the dataset, a request to modify the dataset; generating recovery information indicating whether the request to modify the dataset has been applied on all storage systems in the plurality of storage systems synchronously replicating the dataset; and responsive to a system fault, applying a recovery action in dependence upon the recovery information indicating whether the request to modify the dataset has been applied on all storage systems in the plurality of storage systems synchronously replicating the dataset.
Mediation for synchronous replication
Determining active membership among storage systems synchronously replicating a dataset, where determining active membership includes: detecting, by a particular storage system of the storage systems, a communication fault with one or more of the storage systems, where the particular storage system is configured to request mediation from a mediation target; determining that at least one of the one or more storage systems is configured to request mediation from the mediation target responsive to the communication fault; and responsive to determining that one or more of the storage systems is configured to request mediation from the mediation target, determining whether to request mediation from the mediation target.