Patent classifications
G06F2211/1057
System and method for improving read performance of a distributed parity RAID solution
An information handling system includes a plurality of storage disks arranged as a redundant array of independent disks and a controller. The controller communicates with each of the storage disks. The controller determines a total amount of storage space utilized to store parity information within the storage disks based on a smallest disk size of the storage disks and a number of storage disks in the redundant array of independent disks, calculates an amount of storage space utilized to store parity information on each of the disks based on the total amount of storage space utilized to store parity information and the number of storage disks, and allocates a parity region of sectors within each of the storage disks to store the parity information. The parity region is an inner most region of a disk.
Accelerated erasure coding system and method
An accelerated erasure coding system includes a processing core for executing computer instructions and accessing data from a main memory, and a non-volatile storage medium for storing the computer instructions. The processing core, storage medium, and computer instructions are configured to implement an erasure coding system, which includes: a data matrix for holding original data in the main memory; a check matrix for holding check data in the main memory; an encoding matrix for holding first factors in the main memory, the first factors being for encoding the original data into the check data; and a thread for executing on the processing core. The thread includes: a parallel multiplier for concurrently multiplying multiple entries of the data matrix by a single entry of the encoding matrix; and a first sequencer for ordering operations through the data matrix and the encoding matrix using the parallel multiplier to generate the check data.
Accelerated erasure coding system and method
An accelerated erasure coding system includes a processing core for executing computer instructions and accessing data from a main memory, and a non-volatile storage medium for storing the computer instructions. The processing core, storage medium, and computer instructions are configured to implement an erasure coding system, which includes: a data matrix for holding original data in the main memory; a check matrix for holding check data in the main memory; an encoding matrix for holding first factors in the main memory, the first factors being for encoding the original data into the check data; and a thread for executing on the processing core. The thread includes: a parallel multiplier for concurrently multiplying multiple entries of the data matrix by a single entry of the encoding matrix; and a first sequencer for ordering operations through the data matrix and the encoding matrix using the parallel multiplier to generate the check data.
Method, device and computer program product for recovering data
Techniques involve determining whether data read from a redundant array of independent disks (RAID) is corrupted, the RAID including two parity disks. The techniques further involve determining, based on the read data being corrupted, whether single-disk data recovery can recover the corrupted data. The techniques further involve recovering, based on the single-disk data recovery failing to recover the corrupted data, the corrupted data using dual-disk data recovery. Such techniques may present a recovery solution for silent data corruption of a RAID with two parity disks, such that corrupted data can be recovered in the case of either a single-disk failure or a dual-disk failure, thereby improving the storage system performance.
RAID STORAGE DEVICE, HOST, AND RAID SYSTEM
A redundant array of independent disks (RAID) storage device including; a memory device including first memory devices configured to store at least one of data chunks and corresponding parity (data chunks/parity) and a second memory device configured to serve as a spare memory region, and a RAID controller including a RAID internal memory configured to store a count table and configured to control performing of a rebuild operation in response to a command received from a host, wherein upon identification of a failed first memory device, the RAID controller accesses used regions of non-failed first memory devices based on the count table and rebuilds data of the failed first memory device using the second memory device.
ACCELERATED ERASURE CODING SYSTEM AND METHOD
An accelerated erasure coding system includes a processing core for executing computer instructions and accessing data from a main memory, and a non-volatile storage medium for storing the computer instructions. The processing core, storage medium, and computer instructions are configured to implement an erasure coding system, which includes: a data matrix for holding original data in the main memory; a check matrix for holding check data in the main memory; an encoding matrix for holding first factors in the main memory, the first factors being for encoding the original data into the check data; and a thread for executing on the processing core. The thread includes: a parallel multiplier for concurrently multiplying multiple entries of the data matrix by a single entry of the encoding matrix; and a first sequencer for ordering operations through the data matrix and the encoding matrix using the parallel multiplier to generate the check data.
Method and system for multi-dimensional RAID
A method for storing data. The method includes receiving data to write to persistent storage, calculating parity values for a grid using the data, where each of the parity values is associated with one selected from of the Row Q Parity Group, the Row P Parity Group, the Column Q Parity Group, the Column P Parity Group, and the Intersection Parity Group. The method further includes writing the data to a data grid in the persistent storage, where the data grid is part of the grid, and writing the parity values for the grid to a portion of the grid, where the portion of the grid comprises physical locations associated with a Row Q Parity Group, a Row P Parity Group, a Column Q Parity Group, a Column P Parity Group, and an Intersection Parity Group, wherein the portion of the grid is distinct from the data grid.
DISTRIBUTED ERASURE ENCODING IN SHARED FILE SYSTEM
Systems, methods, and circuitries are provided for supporting distributed erasure coding in a shared file system. In one example, a method is provided to be performed by an initiator device configured to read and write data in files stored in a plurality of storage nodes that are controlled by a file management system. The method includes generating a stripe by identifying data to be stored in a storage system; dividing the data into K data segments; and performing an erasure encoding operation on the K data segments to generate a parity segment, wherein the stripe includes the K data segments and the parity segment. The method includes requesting, from the file management system, respective memory allocations in the storage devices for storing respective segments of the stripe; and transmitting, to each of the plurality of storage nodes, a respective instruction to store a respective data or parity segment in the memory allocation on the respective storage device.
DISTRIBUTED MULTI-LEVEL PROTECTION IN A HYPER-CONVERGED INFRASTRUCTURE
A storage controller of a data storage subsystem including a plurality of storage devices in a redundant array of independent drives (RAID) configuration writes a first RAID stripe to the plurality of storage devices. Writing the first RAID stripe includes for each storage device of a subset of the plurality of storage devices, writing within a page of the storage device, user data, and checksums that validate the user data stored on storage devices of the subset of the plurality of storage devices and writing, within a page of a particular storage device of the plurality of storage devices inter-device redundancy data, intra-page error recovery data, and inter-page protection data.
METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR RECOVERING DATA
Techniques involve determining whether data read from a redundant array of independent disks (RAID) is corrupted, the RAID including two parity disks. The techniques further involve determining, based on the read data being corrupted, whether single-disk data recovery can recover the corrupted data. The techniques further involve recovering, based on the single-disk data recovery failing to recover the corrupted data, the corrupted data using dual-disk data recovery. Such techniques may present a recovery solution for silent data corruption of a RAID with two parity disks, such that corrupted data can be recovered in the case of either a single-disk failure or a dual-disk failure, thereby improving the storage system performance.