Systems and methods for predicting compressibility of data
First Claim
1. A method for predicting a compressibility of a block of data, comprising:
- extracting byte intervals from the block of data, each of the byte intervals consisting of a preselected number of bytes;
performing a hash function to map the byte intervals into a plurality of bins, the plurality of bins comprising one bin for each possible value of the byte intervals;
incrementing a hit count each time more than one of the byte intervals is mapped into a single bin of the plurality of bins; and
determining whether to compress the block of data based on a comparison of a ratio of the hit count to a total number of the byte intervals and a preselected threshold,wherein the performing the hash function to map the byte intervals into the plurality of bins comprises performing the hash function using less than a total number of bits in the preselected number of bytes.
5 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for predicting the compressibility of data in a flash storage device are provided. One such method involves extracting byte intervals from the block of data, each of the byte intervals consisting of a preselected number of bytes, performing a hash function to map the byte intervals into a plurality of bins, the plurality of bins comprising one bin for each possible value of the byte intervals, incrementing a hit count each time more than one of the byte intervals is mapped into a single bin of the plurality of bins, and determining whether to compress the block of data based on a comparison of a ratio of the hit count to a total number of the byte intervals and a preselected threshold. This method may be implemented in hardware to ensure fast and efficient execution.
8 Citations
16 Claims
-
1. A method for predicting a compressibility of a block of data, comprising:
-
extracting byte intervals from the block of data, each of the byte intervals consisting of a preselected number of bytes; performing a hash function to map the byte intervals into a plurality of bins, the plurality of bins comprising one bin for each possible value of the byte intervals; incrementing a hit count each time more than one of the byte intervals is mapped into a single bin of the plurality of bins; and determining whether to compress the block of data based on a comparison of a ratio of the hit count to a total number of the byte intervals and a preselected threshold, wherein the performing the hash function to map the byte intervals into the plurality of bins comprises performing the hash function using less than a total number of bits in the preselected number of bytes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for predicting a compressibility of a block of data, comprising:
-
an extractor configured to extract byte intervals from the block of data, each of the byte intervals consisting of a preselected number of bytes; a hash configured to map the byte intervals into a plurality of bins using less than a total number of bits in the preselected number of bytes, the plurality of bins comprising one bin for each possible value of the byte intervals; a counter configured to increment a hit count each time more than one of the byte intervals is mapped into a single bin of the plurality of bins; and a compression determiner configured to determine whether to compress the block of data based on a comparison of a ratio of the hit count to a total number of the byte intervals and a preselected threshold. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification