G06F3/0608

Garbage data scrubbing method, and device

A garbage data scrubbing method includes obtaining an input/output (IO) busy/idle status of a terminal at a current moment, where the IO busy/idle status includes a busy state and an idle state. When the IO busy/idle status of the terminal at the current moment is the idle state, a discard message is delivered to a storage device, where the discard message includes an initial address and a size of to-be-scrubbed physical space in the storage device, and where the discard message is used to unbind a mapping relationship between a physical address of the to-be-scrubbed physical space and a corresponding logical address.

Heterogeneous erase blocks

A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.

Operational metric computation for workload type

In some examples, a system aggregates operational metric data of a plurality of storage volumes into aggregated operational metric data groups that correspond to different workload types of workloads for accessing data of a storage system. The system computes an operational metric for a first workload type of the different workload types, the operational metric relating to a resource of the storage system, where the computing of the operational metric for the first workload type comprises inputting aggregated operational metric data of a first aggregated operational metric data group of the aggregated operational metric data groups into a model trained at a system level of the storage system.

Method and System of Differential Compression
20230019207 · 2023-01-19 ·

A system and method for differential compression are disclosed. In the disclosure, input data blocks selected for compression are received. For each input data block: the input data block is divided into at least two segments. For each of the at least two segments, a similarity degree between the respective segment and each of the data blocks excluding the respective data block is computed. For each of the at least two segments, the data block which has a biggest similarity degree with the respective segment among the data blocks excluding the respective data block is selected as an optimal reference data block for the respective segment. The differential compression is applied to the input data block and optimal reference blocks in response to determine a differential compression is to be applied based on the similarity degree between the segments of the input data block and the corresponding optimal reference blocks.

Memory system controlling nonvolatile memory
11704021 · 2023-07-18 · ·

According to one embodiment, a controller of a memory system performs a first operation a plurality of times for each of a plurality of first blocks. The first operation includes a write operation for writing data in a first write mode for writing m-bit data per memory cell and a data erase operation. While a second block is not a defective block, the controller performs a second operation a plurality of times for the second block. The second operation includes a write operation for writing data in a second write mode for writing n-bit data per memory cell and a data erase operation. When the second block is a defective block, the controller selects a first block from the plurality of first blocks, and writes second write data to the selected first block in the second write mode.

Deduplicated storage disk space utilization

A plurality of different views of data associated with a storage domain stored on a deduplicated storage are traversed to determine data chunks belonging to each view of the plurality of different views of data associated with the storage domain. A request for a metric associated with disk space utilization of a group of one or more selected views of data included in the plurality of different views of data associated with the storage domain that are stored on the deduplicated storage is received. Data chunks belonging to the one or more selected views of data associated with the storage domain of the group but not other views of the plurality of different views of data associated with the storage domain that are stored on the deduplicated storage are identified. An incremental disk space utilization of the group is determined, including by determining a total size of the identified data chunks. The metric associated with disk space utilization is provided based on the determined incremental disk space utilization of the group.

Unified storage on block containers

An illustrative unified data storage method includes providing, by a data storage system, block containers that represent a linear address space of blocks; and using, by the data storage system, the block containers to store content for a plurality of different data storage services. In certain examples, the different data storage services include at least one of a file storage service, an object storage service, or a database service.

Method for accessing flash memory module and associated package
11704234 · 2023-07-18 · ·

The present invention provides a method for accessing a flash memory module is disclosed, wherein the flash memory module includes at least one flash memory chip, each flash memory chip includes a plurality of block, each block is implemented by a plurality of word lines, each word line corresponds to K pages, and each word line includes a plurality of memory cells supporting a plurality of states, and the method includes the steps of: receiving data from a host device; generating dummy data; and writing the data with the dummy data to a plurality of specific blocks, wherein for each of a portion of the word lines of the specific blocks, the dummy data is written into at least one of the K pages, and the data from the host device is written into the other page(s) of the K pages.

Processing out of order writes in a log structured file system for improved garbage collection

Improving performance of garbage collection (GC) processes in a deduplicated file system having a layered processing architecture that maintains a log structured file system storing data and metadata in an append-only log arranged as a monotonically increasing log data structure of a plurality of data blocks wherein a head of the log increases in chronological order and no allocated data block is overwritten. The storage layer reserves a set of data block IDs within the log specifically for the garbage collection process, and assigns data blocks from the reserved set to GC I/O processes requiring acknowledgment in a possible out-of-order manner relative to an order of data blocks in the log. It strictly imposes using in-order I/O acknowledgement for other non-GC processes using the storage layer, where these processes may be deduplication backup processes using a segment store layer at the same protocol level as the GC layer.

METHOD, SYSTEM, AND DEVICE FOR WRITING COMPRESSED DATA TO DISK, AND READABLE STORAGE MEDIUM
20230221865 · 2023-07-13 ·

A method, system, and device for writing compressed data to a disk, and a readable storage medium. The method includes: acquiring compressed data, and determining a length of the compressed data; storing the compressed data in a linked list, and adding the length of the compressed data to a linked list length, wherein the linked list length is a total length of all compressed data in the linked list; determining whether the linked list length exceeds a threshold value; and if YES, allocating an idle thread to merge all the compressed data in the linked list, and carrying out a write-to-disk operation on the merged compressed data.