Data reduction techniques in a flash-based key/value cluster storage
AssigneeEMC IP Holding Company LLC
InventorsDavid Meiri, Anton Kucherov, Vladimir Shveidel
Life of this patent
Estimating the term…
Abstract
In one aspect, a method includes splitting empty RAID stripes into sub-stripes and storing pages into the sub-stripes based on a compressibility score. In another aspect, a method includes reading pages from 1-stripes, storing compressed data in a temporary location, reading multiple stripes, determining compressibility score for each stripe and filling stripes based on the compressibility score. In a further aspect, a method includes scanning a dirty queue in a system cache, compressing pages ready for destaging, combining compressed pages in to one aggregated page, writing one aggregated page to one stripe and storing pages with same compressibility score in a stripe.
Claims16
A method comprising:
- splitting empty RAID stripes into sub-stripes;
- storing pages into the sub-stripes based on a compressibility score;
- reading pages from 1-stripes;
- writing to a free location in a S-stripe compressed pages, wherein S>0;
- testing each page for compressibility;
- giving each page a compressibility score, S;
- and
- finding S*N pages with the same compressibility score,
- wherein each 1-stripe comprises N pages of data and K pages of parity, where K>1 and N>1 and N equals the number of disks minus K,
- wherein each S-stripe comprises includes S*N+S*K sub-pages, and
- wherein storing pages into the sub-stripes based on a compressibility score comprises storing pages with the same compressibility score in the same sub-stripe.
An apparatus, comprising:
- electronic hardware circuitry configured to:
- split empty RAID stripes into sub-stripes;
- store pages into the sub-stripes based on a compressibility score;
- read pages from 1-stripes;
- and
- write to a free location in a S-stripe compressed pages, wherein S>0;
- test each page for compressibility;
- give each page a compressibility score, S;
- and
- find S*N pages with the same compressibility score,
- wherein each 1-stripe comprises N pages of data and K pages of parity, where K>1 and N>1 and N equals the number of disks minus K,
- wherein each S-stripe comprises includes S*N+S*K sub-pages, and
- wherein storing pages into the sub-stripes based on a compressibility score comprises storing pages with the same compressibility score in the same sub-stripe.
An article comprising:
- a non-transitory computer-readable medium that stores computer-executable instructions, the instructions causing a machine to:
- split empty RAID stripes into sub-stripes;
- store pages into the sub-stripes based on a compressibility score;
- read pages from 1-stripes;
- write to a free location in a S-stripe compressed pages, wherein S>0;
- test each page for compressibility;
- give each page a compressibility score, S;
- and
- find S*N pages with the same compressibility score,
- wherein each 1-stripe comprises N pages of data and K pages of parity, where K>1 and N>1 and N equals the number of disks minus K,
- wherein each S-stripe comprises includes S*N+S*K sub-pages, and
- wherein storing pages into the sub-stripes based on a compressibility score comprises storing pages with the same compressibility score in the same sub-stripe.
Dependencies are inferred from the claim text.