Patent classifications
G06F2212/461
Access accelerator for active HBase database regions
In a method for improving performance of a database, create, in a memory, an instance of a segment of data corresponding to a segment of data in a database on a persistent file system. The segment of data in the database on the persistent file system is expected to experience a high plurality of reads and writes during a certain time period. Receive a request to modify the segment of data in the database on the persistent file system. Modify the instance of the segment of data in the memory.
CACHED VOLUMES AT STORAGE GATEWAYS
Methods and apparatus for supporting cached volumes at storage gateways are disclosed. A storage gateway appliance is configured to cache at least a portion of a storage object of a remote storage service at local storage devices. In response to a client's write request, directed to at least a portion of a data chunk of the storage object, the appliance stores a data modification indicated in the write request at a storage device, and asynchronously uploads the modification to the storage service. In response to a client's read request, directed to a different portion of the data chunk, the appliance downloads the requested data from the storage service to the storage device, and provides the requested data to the client.
METHOD, DEVICE, AND PROGRAM PRODUCT FOR REDUCING DELAY IN I/O PROCESSING DUE TO MIRRORING OF CACHE DATA
Techniques perform storage management. Such techniques involve: in response to receiving, at a first processor of a storage system, a write request from a host for writing user data, caching the user data in a first cache of the first processor, and generating cache metadata in the first cache, the cache metadata including information associated with writing the user data; sending the user data and the cache metadata to a second cache of a second processor, for the second processor to perform, in the second cache, data processing related to cache mirroring by the second processor; and sending, to the host, an indication of completion of the write request, without waiting for the second processor to complete the data processing. Such techniques can improve system performance such as reducing latency, and shortening length of the I/O handling path of write request.
Managing cache compression in data storage systems
A technique for managing cache in a data storage system is disclosed. Data storage system cache memory is arranged into multiple input/output (IO) cache macroblocks, where a first set of IO cache macroblocks are configured as compressed IO cache macroblocks, each compressed IO cache macroblock storing a plurality of variable sized compressed IO data blocks, and a second set of IO cache macroblocks are configured as non-compressed IO cache macroblocks, each non-compressed IO cache macroblock storing a plurality of fixed sized non-compressed IO data blocks. A write request is receive at the data storage system. If the IO data associated with the write request is determined to be compressible, the IO data is compressed in-line and written to an IO data block in a compressed IO cache macroblock, otherwise non-compressed IO data is written to an IO data block in a non-compressed IO cache macroblock.
DATA STORAGE SYSTEM WITH MULTIPLE DURABILITY LEVELS
A data storage system includes multiple head nodes and multiple data storage sleds mounted in a rack. For a particular volume or volume partition one of the head nodes is designated as a primary head node for the volume or volume partition. The primary head node is configured to store data for the volume in a data storage of the primary head node and cause the data to be replicated to a secondary head node. The primary head node is also configured to cause the data for the volume to be stored in a plurality of respective mass storage devices each in different ones of the plurality of data storage sleds of the data storage system.
Dynamic allocation of volatile memory to storage management components of a non-volatile storage device
Exemplary methods, apparatuses, and systems include firmware for the non-volatile storage device, during boot up, dynamically allocating volatile memory to a plurality of storage management components. The allocation includes detecting an indicator of a total amount of volatile memory to be allocated to the storage management components. The firmware maps the indicator to a first amount of volatile memory to allocate to a first set of one or more components and allocates the first amount of the volatile memory to the first set of components. The firmware allocates remaining volatile memory to a flash translation layer.
System and method for caching data in a virtual storage environment based on the clustering of related data blocks
Systems and methods are disclosed herein for caching data in a virtual storage environment. An exemplary method comprises monitoring, by a hardware processor, operations on a virtual storage device, identifying, by a hardware processor, transitions between blocks of the virtual storage device that have the operations performed thereon, determining, by a hardware processor, a relationship between each of the blocks based on the identified transitions, clustering the blocks into groups of related blocks based on the relationship and applying, by a hardware processor, one of a plurality of different caching policies to blocks in each of the groups based on clustering.
PAGE CACHE WRITE LOGGING AT BLOCK-BASED STORAGE
A block-based storage system may implement page cache write logging. Write requests for a data volume maintained at a storage node may be received at a storage node. A page cache for may be updated in accordance with the request. A log record describing the page cache update may be stored in a page cache write log maintained in a persistent storage device. Once the write request is performed in the page cache and recorded in a log record in the page cache write log, the write request may be acknowledged. Upon recovery from a system failure where data in the page cache is lost, log records in the page cache write log may be replayed to restore to the page cache a state of the page cache prior to the system failure.
Access request processing method and apparatus, and computer system
An access request processing method and apparatus, and a computer system is disclosed. The computer system includes a processor and a non-volatile memory (NVM). When receiving a write request, the processor determines an object cache page according to the write request. After determining that the NVM stores a log chain of the object cache page, the processor inserts, into the log chain of the object cache page, a second data node recording information about a second log data chunk. The log chain already includes a first data node recording information about the first log data chunk. The second log data chunk is at least partial to-be-written data of the write request. Then, the processor sets, in the first data node, data that is in the first log data chunk and that overlaps the second log data chunk to invalid data.
Media manager cache with integrated drift buffer
A method to cache memory requests while accounting for phase change memory cell drift is described. The method includes adding, in response to receiving a write memory request from a host system, an entry to a cache that includes user data of the write memory request, wherein the write memory request is directed to a set of phase change memory cells; adding, in response to receiving the write memory request, an entry in a first content-addressable memory (CAM), wherein the entry in the first CAM includes a reference to the entry in the cache that includes the user data of the write memory request; writing the user data of the write memory request to the set of phase change memory cells; and adding an entry to a second CAM, wherein the entry in the second CAM includes a reference to the entry in the cache that includes the user data.