SELECTIVE COMPRESSION IN DATA STORAGE SYSTEMS
First Claim
1. A method for selectively compressing data in a data storage system, the method comprising:
- arranging data storage system cache memory into multiple input/output (IO) cache macroblocks, wherein 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;
determining IO activity level of IO data blocks stored in IO cache macroblocks;
creating a plurality of macroblock groups, wherein the macroblock groups correspond to a particular IO activity level;
arranging IO data blocks into a macroblock belonging to a macroblock category according to data block IO activity level;
compressing each macroblock group, wherein compressing includes selecting a compression algorithm based on the macroblock category; and
writing the macroblocks to corresponding macroblocks in persistent storage.
8 Assignments
0 Petitions
Accused Products
Abstract
A method for selectively compressing data in a data storage system is provided. Data storage system cache memory is arranged into multiple input/output (IO) cache macroblocks, wherein a first set of IO cache macroblocks are configured as compressed IO cache macroblocks 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 storing a plurality of fixed sized non-compressed IO data blocks. An IO activity level of IO data blocks stored in IO cache macroblocks is determined. Multiple macroblock groups are created which correspond to a particular IO activity level. IO data blocks are arranged into macroblocks belonging to a macroblock category according to data block IO activity level. Each macroblock group is compressed, wherein compressing includes selecting a compression algorithm based on the macroblock category. The macroblocks are written to corresponding macroblocks in persistent storage.
42 Citations
4 Claims
-
1. A method for selectively compressing data in a data storage system, the method comprising:
-
arranging data storage system cache memory into multiple input/output (IO) cache macroblocks, wherein 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; determining IO activity level of IO data blocks stored in IO cache macroblocks; creating a plurality of macroblock groups, wherein the macroblock groups correspond to a particular IO activity level; arranging IO data blocks into a macroblock belonging to a macroblock category according to data block IO activity level; compressing each macroblock group, wherein compressing includes selecting a compression algorithm based on the macroblock category; and writing the macroblocks to corresponding macroblocks in persistent storage. - View Dependent Claims (2, 3, 4)
-
Specification