System for increasing utilization of storage media
AssigneeViolin Memory, Inc.
InventorErik de la Iglesia
Life of this patent
Estimating the term…
Abstract
A storage system creates an abstraction of flash Solid State Device (SSD) media allowing random write operations of arbitrary size by a user while performing large sequential write operations of a uniform size to an SSD array. This reduces the number of random write operations performed in the SSD array and as a result increases performance of the SSD array. A control element determines when blocks from different buffers should be combined together or discarded based on fragmentation and read activity. This optimization scheme increases memory capacity and improves memory utilization and performance.
Claims14
An apparatus, comprising:
- a storage media having a plurality of buffer regions configured to store copies of data stored in a storage array;
- a staging buffer configured to buffer the data for different write operations;
- a processor configured to aggregate together the data in the staging buffer from the different write operations and store the aggregated data into blocks of a buffer region of the plurality of buffer regions of the storage media;
- wherein the processor is further configured to discard data in blocks of the buffer region having a minimum read count when a number of buffer regions currently being used is below a first threshold number and discard data in the buffer regions according the a ranking of buffer regions when the number of buffer regions currently being used is above a threshold.
An apparatus, comprising:
- a storage media;
- a processor configured to aggregate together data from different write operations and store the aggregated data into one of multiple different buffer regions of the storage media;
- and
- an indirection table configured to map the aggregated data from the write operations to different block regions within a same one of the buffer regions, and
- the processor is further configured to map the aggregated data from the write operations to different block regions within a same one of the buffer regions and to track read count values associated with the different buffer regions and to discard data from the buffer regions according to the associated read count values.
A storage system, comprising:
- a storage media;
- a control element configured to:
- identify buffer regions within the storage media that store groups of data in contiguous address locations;
- and
- the storage media is configured to:
- operate as a tiering media for providing copies of the data contained in a storage array in response to read operations;
- remap the data from the blocks of different buffer regions within the storage media into a same one of the buffer regions;
- discard the data from the buffer regions according to utilization of the buffer regions;
- and
- replace the data discarded from the buffer regions in the storage media with other data.
Dependencies are inferred from the claim text.