CACHE DATA PLACEMENT FOR COMPRESSION IN DATA STORAGE SYSTEMS
First Claim
1. A method for managing data storage in a data storage system, the method comprising:
- writing data blocks to a data storage system cache, pluralities of the data blocks being organized into cache macroblocks, the IO cache macroblocks having a fixed size;
processing access requests for the data blocks, wherein processing includes generating block access statics;
identifying, via access statics, data blocks stored in the cache macroblocks having block a access times that overlap; and
rearranging data blocks identified as having overlapping access times into one or more overlap cache macroblocks.
8 Assignments
0 Petitions
Accused Products
Abstract
A technique for managing data storage in a data storage system is disclosed. Data blocks are written to a data storage system cache, pluralities of the data blocks being organized into cache macro blocks, the IO cache macro blocks having a fixed size. Access requests for the data blocks are processed, wherein processing includes generating block access statics. Using access statics, data blocks stored in the cache macroblocks having block a access times that overlap are identified. Data blocks identified as having overlapping access times are rearranged into one or more overlap cache macroblocks. 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 macro blocks, each compressed IO cache macro block 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.
25 Citations
14 Claims
-
1. A method for managing data storage in a data storage system, the method comprising:
-
writing data blocks to a data storage system cache, pluralities of the data blocks being organized into cache macroblocks, the IO cache macroblocks having a fixed size; processing access requests for the data blocks, wherein processing includes generating block access statics; identifying, via access statics, data blocks stored in the cache macroblocks having block a access times that overlap; and rearranging data blocks identified as having overlapping access times into one or more overlap cache macroblocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14)
-
-
8. A system for managing data storage in a data storage system, the system comprising a special purpose storage processor and memory configured to:
-
write data blocks to a data storage system cache, pluralities of the data blocks being organized into cache macroblocks, the IO cache macroblocks having a fixed size; process access requests for the data blocks, wherein processing includes generating block access statics; identify, via access statics, data blocks stored in the cache macroblocks having block a access times that overlap; and rearrange data blocks identified as having overlapping access times into one or more overlap cache macroblocks.
-
Specification