Adaptively over-allocating storage space for compressed data
US-11048419-B2 · Jun 29, 2021 · US
US11429317B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11429317-B2 |
| Application number | US-201916576980-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 20, 2019 |
| Priority date | Oct 26, 2018 |
| Publication date | Aug 30, 2022 |
| Grant date | Aug 30, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques involve storing data. In particular, such techniques involve: obtaining first data to be stored; determining whether the first data is able to be compressed in a compression ratio exceeding a predetermined threshold; and storing, based on the determined result, the first data into a storage device. Accordingly, such techniques can execute corresponding processing for data in a predicted compression ratio, so as to store the data into a storage device. In this manner, such techniques can significantly cut down the overheads for processing data while minimizing a storage space required for storing data.
Opening claim text (preview).
We claim: 1. A method of storing data, comprising: obtaining first data to be stored; determining whether the first data is able to be compressed in a compression ratio exceeding a predetermined threshold; and storing, based on the determined result, the first data into a storage device, wherein the first data comprise a plurality of data blocks, and wherein storing the first data comprises: in response to determining that a part of the plurality of data blocks is able to be compressed in a compression ratio exceeding the predetermined threshold and another part of the plurality of data blocks is unable to be compressed in a compression ratio exceeding the predetermined threshold, for each of the plurality of data blocks, compressing the data block to create a compressed data block; determining a compression ratio of the compressed data block; in response to the compression ratio of the compressed data block exceeding the predetermined threshold, storing the compressed data block into the storage device; and in response to the compression ratio of the compressed data block being below the predetermined threshold, storing the data block into the storage device. 2. The method according to claim 1 , wherein obtaining the first data comprises: obtaining second data to be stored; partitioning the second data into a group of data blocks; and obtaining, from the group of data blocks, a plurality of consecutive data blocks as the first data. 3. The method according to claim 1 , wherein determining whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold comprises: determining, using a trained prediction model, whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold. 4. An apparatus for storing data, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions executed by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the apparatus to execute acts of: obtaining first data to be stored; determining whether the first data is able to be compressed in a compression ratio exceeding a predetermined threshold; and storing, based on the determined result, the first data into a storage device, wherein the first data comprise a plurality of data blocks, and wherein storing the first data comprises: in response to determining that a part of the plurality of data blocks is able to be compressed in a compression ratio exceeding the predetermined threshold and another part of the plurality of data blocks is unable to be compressed in a compression ratio exceeding the predetermined threshold, for each of the plurality of data blocks, compressing the data block to create a compressed data block; determining a compression ratio of the compressed data block; in response to the compression ratio of the compressed data block exceeding the predetermined threshold, storing the compressed data block into the storage device; and in response to the compression ratio of the compressed data block being below the predetermined threshold, storing the data block into the storage device. 5. The apparatus according to claim 4 , wherein obtaining the first data comprises: obtaining second data to be stored; partitioning the second data into a group of data blocks; and obtaining, from the group of data blocks, a plurality of consecutive data blocks as the first data. 6. The apparatus according to claim 4 , wherein determining whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold comprises: determining, using a trained prediction model, whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold. 7. A computer program product having a non-transitory computer readable medium which stores a set of instructions to store data; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of: obtaining first data to be stored; determining whether the first data is able to be compressed in a compression ratio exceeding a predetermined threshold; and storing, based on the determined result, the first data into a storage device, wherein the first data comprise a plurality of data blocks, and wherein storing the first data comprises: in response to determining that a part of the plurality of data blocks is able to be compressed in a compression ratio exceeding the predetermined threshold and another part of the plurality of data blocks is unable to be compressed in a compression ratio exceeding the predetermined threshold, for each of the plurality of data blocks, compressing the data block to create a compressed data block; determining a compression ratio of the compressed data block; in response to the compression ratio of the compressed data block exceeding the predetermined threshold, storing the compressed data block into the storage device; and in response to the compression ratio of the compressed data block being below the predetermined threshold, storing the data block into the storage device. 8. The computer program product according to claim 7 , wherein obtaining the first data comprises: obtaining second data to be stored; partitioning the second data into a group of data blocks; and obtaining, from the group of data blocks, a plurality of consecutive data blocks as the first data. 9. The computer program product according to claim 7 , wherein determining whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold comprises: determining, using a trained prediction model, whether the first data is able to be compressed in a compression ratio exceeding the predetermined threshold.
Compression (speech analysis-synthesis for redundancy reduction G10L19/00; for image communication H04N); Expansion; Suppression of unnecessary data, e.g. redundancy reduction · CPC title
Single storage device · CPC title
Management of blocks · CPC title
Saving storage space on storage systems · CPC title
Format or protocol conversion arrangements · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.