G06F3/0611

STORAGE VOLUME CREATION USING PERFORMANCE VOLUMES AND CAPACITY VOLUMES
20230236768 · 2023-07-27 ·

Methods, apparatus, and processor-readable storage media are provided herein for storage volume creation using performance volumes and capacity volumes. An example computer-implemented method includes configuring a storage system with at least first and second storage tiers each comprising a plurality of storage devices; creating a virtual storage volume having a first portion corresponding to at least a portion of the plurality of storage devices of the first storage tier and a second portion corresponding to at least a portion of the plurality of storage devices of the second storage tier; and processing input-output requests from one or more host devices associated with the virtual storage volume, wherein the processing comprises moving data between the first portion and the second portion of the virtual storage volume so that each of the input-output requests is processed using the first portion of the virtual storage volume.

Customizable progressive data-tiering service

A tiering service enables a client to custom specify service level agreements for data items to be tiered and automatically promotes and demotes the data items amongst a warm tier, a plurality of intermediate tiers, and a cold tier to ensure the service level agreement commitments are met. In some embodiments, a client specifies segmentation criteria for defining multiple segments of data items included in a data scope or table and assigns latency targets to the segments in order to define the service level agreement. Also, in some embodiments, a plurality of intermediate tiers are implemented on common underlying hardware by varying metadata management to implement intermediate tiers that have progressively increasing latencies.

Systems and methods for accelerating memory transfers and computation efficiency using a computation-informed partitioning of an on-chip data buffer and implementing computation-aware data transfer operations to the on-chip data buffer

Systems and methods for implementing accelerated memory transfers in an integrated circuit includes configuring a region of memory of an on-chip data buffer based on a neural network computation graph, wherein configuring the region of memory includes: partitioning the region of memory of the on-chip data buffer to include a first distinct sub-region of memory and a second distinct sub-region of memory; initializing a plurality of distinct memory transfer operations from the off-chip main memory to the on-chip data buffer; executing a first set of memory transfer operations that includes writing a first set of computational components to the first distinct sub-region of memory, and while executing, using the integrated circuit, a leading computation based on the first set of computational components, executing a second set of memory transfer operations to the second distinct sub-region of memory for an impending computation.

Adaptive, proactive raid rebuild

A data storage system includes a plurality of storage devices organized as a redundant array of inexpensive disks (RAID) storage array and a RAID controller. The RAID controller monitors the plurality of storage devices in the RAID storage array. The RAID controller also detects that a host read request of a host has a latency exceeding a latency threshold. Based on the monitoring, the RAID controller determines whether a proactive rebuild of a data requested by the host read request in absence of a data error would likely be beneficial to performance. Based on determining that a proactive rebuild of the data requested by the host read request would likely be beneficial to performance, the RAID controller initiates the proactive rebuild of the data and sends the requested data to the host.

METHODS AND DEVICES FOR FILE READ LATENCY REDUCTION
20230024420 · 2023-01-26 · ·

Methods and devices are provided in which a controller of a storage device receives a read command including at least a file pointer of a file, from an application at a host device. The controller retrieves a physical block address (PBA) list associated with file data from a table maintained at the controller using the file pointer. The controller reads data from a memory using the PBA list, and provides the file data to the application at the host device.

Method, electronic device, and computer program product for processing data

A data processing method includes receiving a message related to performance of a storage device, the message including an indicator value regarding the performance in a first time period, and a timestamp associated with the first time period. A status record of the storage device, including the number of received indicator values in a second time period including the first time period, is determined based on the timestamp, wherein the number of the received indicator values is less than a threshold number and can be updated based on the indicator value. The performance in the second time period can be determined based on the indicator value and the received indicator values in response to determining that the updated number of the received indicator values reaches the threshold number. Thus, the performance of the storage device can be quickly and accurately determined, and the consumption of computing resources is reduced.

TRANSFERRING DATA TO BACKUP DATA REPOSITORIES
20230023084 · 2023-01-26 ·

Disclosed herein are system, method, and computer program product embodiments for managing data storage devices. In some embodiments, a server receives a request to store data in a first storage device. The server determines the storage space remaining in the first data storage device based on historical data associated with the first data storage device. The server further determines that the first data storage device will exceed its storage capacity based on a size of the data and the storage space remaining in the first data storage device. The server transfers a set of data stored in the first data storage device to a second storage device. Transferring the set of data causes the storage space remaining in the first storage device to be greater than or equal to the size of the data. The server stores the data in the first data storage device.

BLOCKCHAIN-ENABLED STORAGE ARRAY
20230022330 · 2023-01-26 · ·

The present disclosure relates to establishing a tightly coupled integration between a decentralized blockchain network and a centralized storage array. In embodiments, a first set of storage operations on a snapshot of a storage array are performed. Further, data blocks generated from the snapshot are broadcast to at least one computing network for the at least one computing network's nodes to perform a second set of storage operations.

REDUCING WRITE DELAYS WHILE TAKING SNAPSHOTS
20230022243 · 2023-01-26 · ·

Snapshots are processed without holding all write operations while the snapshots are being activated. Rather than holding all write operations until snapshots are activated, write operations may be allowed to proceed. Snapshot write processing may be temporarily suspended while the snapshots are being activated, including snapshot metadata being updated, while write operations received while the snapshots are being activated are logged. After snapshots have been activated for all logical LSUs for which snapshots were instructed to be activated, the logging of write operations may be stopped, and the logged write entries processed to determine whether any of the logged write operations require updating snapshot information of any logical storage elements (LSEs) of the LSUs. While the logged write operations are being processed, any write operations received from a host for an LSE having a logged write operation may be held until the held operation, or all held operations are processed.

CACHE MEMORY ARCHITECTURE AND MANAGEMENT

Aspects of the present disclosure relate to data cache management. In embodiments, a storage array's memory is provisioned with cache memory, wherein the cache memory includes one or more sets of distinctly sized cache slots. Additionally, a logical storage volume (LSV) is established with at least one logical block address (LBA) group. Further, at least one of the LSV's LBA groups is associated with two or more distinctly sized cache slots based on an input/output (IO) workload received by the storage array.