G06F11/1489

Storage system configured to guarantee sufficient capacity for a distributed raid rebuild process
11169880 · 2021-11-09 · ·

A storage system comprises a plurality of storage devices, and is configured to establish a redundant array of independent disks (RAID) arrangement comprising a plurality of stripes, with each of the plurality of stripes comprising a plurality of blocks, the blocks being distributed across multiple ones of the storage devices. In conjunction with establishment of the RAID arrangement, the storage system is further configured, for each of the plurality of stripes, to designate multiple ones of the storage devices as respective spare devices for that stripe, and for each of the storage devices, to determine numbers of the stripes for which that storage device is designated as a spare device for respective ones of the other storage devices in each of multiple spare levels and for each of multiple failure combinations. A particular number of spare blocks is reserved for each of the storage devices using the determined numbers.

Using bitmaps to validate data
11782799 · 2023-10-10 · ·

An incremental backup is made of a source volume on a production host to on premise secondary storage. The incremental backup includes a bitmap specifying locations of blocks that have changed since a last backup of the source volume, and data of the changed blocks. First checksums are calculated from data of the changed blocks. The incremental backup, including the changed blocks and the bitmap, are moved to cloud storage. The changed blocks are merged, at the cloud storage, with the last backup of the source volume to generate a synthetic full backup of the source volume. The bitmap is consulted to identify locations of the changed blocks. Second checksums are calculated from data written to the locations on the synthetic full backup. The first and second checksums are compared. If the first and second checksums do not match, an indication is generated that the synthetic full backup is corrupt.

Methods for data writing and for data recovery, electronic devices, and program products

Techniques for data recovery involve: reading target data corresponding to a first logical block from a first data block of a stripe of a RAID system, the target data being a compressed version of data in the first logical block; in accordance with a determination that an error occurs in the target data, reading data from a plurality of second data blocks of the stripe and first parity information from a first parity block of the stripe; comparing respective checksums of the data read from the plurality of second data blocks with a first predetermined checksum and a checksum of the first parity information with a second predetermined checksum; and determining recoverability of the target data based on a result of the comparison. Accordingly, it is possible to simplify the data recovery process, reduce the calculation and time costs in the data recovery, and improve the data recovery efficiency.

STORAGE SPACE OPTIMIZATION IN A SYSTEM WITH VARYING DATA REDUNDANCY SCHEMES

A technique is configured to provide various data protection schemes, such as replication and erasure coding, for data blocks of volumes served by storage nodes of a cluster configured to perform deduplication of the data blocks. Additionally, the technique is configured to ensure that each deduplicated data block complies with data redundancy guarantees of the data protection schemes, while improving storage space of the storage nodes. In order to satisfy the data integrity guarantees while improving available storage space, the storage nodes perform periodic garbage collection for data blocks to optimize storage in accordance with currently applicable data protection schemes.

Raid data storage device and data storage system including the same

A data storage system includes a host configured to provide a read request; a plurality of storage devices constituting a redundant array of independent disks (RAID); and a RAID controller configured to a plurality of read commands in response to the read request, the read commands being provided to the plurality of storage devices according to a RAID setting, wherein one data storage device of the plurality of data storage devices includes a nonvolatile memory device; an error handling information storage circuit to store error handling information; and an error detection and correction circuit configured to detect an error in data output from the nonvolatile memory device according to a read command and to selectively correct the error according to the error handling information.

Available storage space in a system with varying data redundancy schemes

A technique is configured to provide various data protection schemes, such as replication and erasure coding, for data blocks of volumes served by storage nodes of a cluster configured to perform deduplication of the data blocks. Additionally, the technique is configured to ensure that each deduplicated data block complies with data redundancy guarantees of the data protection schemes, while improving storage space of the storage nodes. In order to satisfy the data integrity guarantees while improving available storage space, the storage nodes perform periodic garbage collection for data blocks to optimize storage in accordance with currently applicable data protection schemes.

Method for detecting and recovery from soft errors in a computing device

A method for detecting and recovery from a soft error in a computing device is provided. In examples discussed herein, the method can be performed to detect soft errors that may occur during execution of a predefined critical instruction(s) and/or has been propagated in the computing device prior to the execution of the predefined critical instruction(s). Specifically, a software compiler may be used to embed an error detector block(s) after the predefined critical instruction(s). In this regard, the error detector block(s) can be executed after the predefined critical instruction(s) to detect the soft error. Accordingly, it may be possible to invoke a diagnosis routine to determine severity of the detected soft error and take appropriate action against the detected soft error. As such, it may be possible to protect the execution of the predefined critical instruction(s) concurrent to eliminating vulnerable voting intervals and reducing soft error detection overhead.

Memory controller performing recovery operation, operating method of the same, and memory system including the same

A memory system for performing a recovery operation is provided. A memory system includes a memory device including a plurality of memory cells constituting a plurality of sub-sets, and a memory controller for controlling the memory device. The memory controller controls the memory device to manage a read count indicating a number of read operations performed by the memory device for each of the plurality of sub-sets, and to perform a recovery operation on a sub-set, among the plurality of sub-sets, based on the read count corresponding to the read count. Each of a plurality of sub-sets includes a plurality of pages. Each of the plurality of pages is a unit in which a read operation is performed in the plurality of memory cells.

Method for operating a microcontroller and microcontroller by executing a process again when the process has not been executed successfully

A method for operating a microcontroller, which includes a processor and a peripheral circuit on a common chip, the method including initiating a process in the peripheral circuit, in the peripheral circuit generating recovery data, executing the process, checking whether the process has been executed successfully and, in the event that the check reveals that the process has not been executed successfully, generating recovered data from the recovery data, and executing the process again.

Operation methods of memory system and host, and computing system

A method of operating a memory system including a memory device, including reading data from the memory device based on a first physical address received from a host according to a read request received from the host; detecting a read error of the read data; correcting the read data based on the detecting; transmitting the corrected data to the host; asynchronously transmitting to the host an error occurrence signal for the read error; generating information about the read error; transmitting the information about the read error to the host; and rewriting the corrected data based on a second physical address received from the host according to a write request of the host.