G06F2211/104

Systems and methods for switching replication modes in a volume replication system

The disclosed computer-implemented method for switching replication modes in a volume replication system may include (i) in response to deciding to switch from a synchronous replication mode of a volume replication system to an asynchronous replication mode, changing, by a computing device, to the asynchronous replication mode, (ii) associating a new write request to write data to storage, (iii) determining, based on metadata of the existing write request, that the existing write request was issued in the synchronous replication mode, (iv) in response to determining that the existing write request was issued in the synchronous replication mode, processing the existing write request via the synchronous replication, and (v) processing the new write request via the asynchronous replication based on the metadata of the new write request. Various other methods, systems, and computer-readable media are also disclosed.

Background verification processing in a storage network

A method for execution by one or more processing modules of a storage network (SN) begins with the one or more processing modules scanning a storage node of the SN at a predetermined interval to determine whether an erasure encoded data slice (EEDS) of a set of erasure encoded data slices (EEDSs) is corrupt, where the set of erasure encoded data slices (EEDSs) is generated from object data using an erasure error encoding dispersal function. The method continues with the one or more processing modules determining that an EEDS is corrupt and in response, rebuilding the EEDS in place in the storage node.

METHOD, DEVICE, AND COMPUTER PROGRAM PRODUCT FOR MANAGING STORAGE SYSTEM
20200341911 · 2020-10-29 ·

Techniques involve managing a storage system. In accordance with the techniques, a plurality of copies of metadata of the storage system are read from a plurality of storage devices in a resource pool of the storage system. The resource pool includes a first number of storage devices, and the metadata describes configuration information of the storage system. A second number of copies are selected from the plurality of copies based on version information in the plurality of copies, where the second number of copies comprises the metadata in the same version. It is determined whether a relation between the first number and the second number satisfies a predetermined condition. The second number of copies are identified as trusted metadata based on determining the relation satisfies the predetermined condition. With the foregoing example implementation, the metadata in the storage system may be managed with higher reliability.

Combined secure mac and device correction using encrypted parity with multi-key domains

In one example a computer implemented method comprises generating an error correction code for a memory line, the memory line comprising a first plurality of data blocks, wherein the error correction code comprises a first plurality of parity bits and a second plurality of parity bits, applying a domain-specific function to the second plurality of parity bits to generate a modified block of parity bits, generating a metadata block corresponding to the memory line, wherein the metadata block comprises the error correction code for the memory line and at least a portion of the modified block of parity bits, encoding the first plurality of data blocks and the metadata block to generate a first encoded data set, and providing the encoded data set and the encoded metadata block for storage on a memory module. Other examples may be described.

Data and metadata storage in storage devices

In an example, a storage device includes a plurality of pages, a main page table structure, and an auxiliary page table structure. The main page table structure includes a first data mapping between a logical address of first data and a first physical address pointing to a first data page. Further, the auxiliary page table structure includes a first metadata mapping between a logical address of first metadata and a second physical address pointing to a first metadata page.

PHYSICAL PAGE, LOGICAL PAGE, AND CODEWORD CORRESPONDENCE
20200272538 · 2020-08-27 ·

The present disclosure includes apparatuses and methods for physical page, logical page, and codeword correspondence. A number of methods include error coding a number of logical pages of data as a number of codewords and writing the number of codewords to a number of physical pages of memory. The number of logical pages of data can be different than the number of physical pages of memory.

RAID-Based Globally Resource-shared Data Storage System
20200250036 · 2020-08-06 ·

The data storage system is a RAID-based data storage system in which resources are globally shared. This storage system includes the first number of disks, and the RAID mechanism is used to store data on each disk. The blocks on different disks form stripes, and at least one of the blocks on the stripe stores the parity information, wherein the width of the stripe is less than the first number. The data layout of the data storage system satisfies the following characteristics: any two physical blocks in the stripe are distributed on different disks; the data blocks distributed on each disk are the same, and the distributed parity blocks are also the same; other data in the stripe associated with any piece of disk data is evenly distributed across all the remaining disks. Normal data layout and degraded data layout can be implemented by orthogonal Latin squares. This system can remove the limitation that the number of disks in the normal data storage system is equal to the stripe width, and break the resource isolation between the disk groups. And in the event of a disk failure, this invention can achieve a complete equalization of the reconstructed read load.

Methods and systems for storing information that facilitates the reconstruction of at least some of the contents of a storage unit on a storage system

The failure of a storage unit in a storage array of a storage system may render the storage unit unresponsive to any requests. Any writes to the storage system that occur during the failure of the storage unit will not be reflected on the failed unit, rendering some of the failed unit's data stale. Assuming the failed unit's data is not corrupted but is just stale, a partial rebuild may be performed on the failed unit, selectively reconstructing only data that is needed to replace the stale data. Described herein are techniques for storing information that identifies the data that needs to be rebuilt. When the storage unit fails, the segment identifier associated with the last data segment written to the storage system may be stored. Upon the storage unit recovering, the storage system can rebuild only those data segments whose identifier is greater than the stored segment identifier.

Physical page, logical page, and codeword correspondence

The present disclosure includes apparatuses and methods for physical page, logical page, and codeword correspondence. A number of methods include error coding a number of logical pages of data as a number of codewords and writing the number of codewords to a number of physical pages of memory. The number of logical pages of data can be different than the number of physical pages of memory.

DETECTING SINGLE EVENT UPSETS AND STUCK-AT FAULTS IN RAM-BASED DATA PATH CONTROLLERS
20200133766 · 2020-04-30 ·

In one embodiment, a method includes receiving data comprising a plurality of data elements; creating a binary sequence comprising a plurality of bonus bits using a first binary sequence generator; using a first exclusive-or module to provide a XOR calculation using bits of each data element of the data with a bonus bit from the binary sequence; passing each data element along with its corresponding parity bit to an input of a data path; receiving each data element along with its corresponding parity bit at an output of the data path; creating the binary sequence using a second binary sequence generator; using a second XOR module to XOR together bits of each data element along with its corresponding parity bit and a bonus bit from the binary sequence to produce a result; and analyzing the result to determine whether an error has occurred to the data in the data path.