Dynamic data compression selection

US10320415B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10320415-B2
Application numberUS-201816144303-A
CountryUS
Kind codeB2
Filing dateSep 27, 2018
Priority dateMar 6, 2015
Publication dateJun 11, 2019
Grant dateJun 11, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Aspects of dynamic data compression selection are presented. In an example method, as uncompressed data chunks of a data stream are compressed, at least one performance factor affecting selection of one of multiple compression algorithms for the uncompressed data chunks of the data stream may be determined. Each of the multiple compression algorithms may facilitate a different expected compression ratio. One of the multiple compression algorithms may be selected separately for each uncompressed data chunk of the data stream based on the at least one performance factor. Each uncompressed data chunk may be compressed using the selected one of the multiple compression algorithms for the uncompressed data chunk.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for data compression, the method comprising: receiving uncompressed source data at a data compression system from a data storage device, the uncompressed source data comprising a set of data chunks; and streaming source data to a data target by, for each data chunk of at least some of the set of data chunks: identifying a compression algorithm to use to compress the data chunk based on at least one performance factor, the compression algorithm being of a plurality of compression algorithms; compressing the data chunk using the compression algorithm, wherein different compression algorithms are used to compress at least two of the set of data chunks; and routing the compressed data chunk to the data target. 2. The method of claim 1 , wherein each of at least two of the different compression algorithms are associated with different expected compression ratios. 3. The method of claim 1 , wherein at least one of the different compression algorithms includes a lossless data compression algorithm. 4. The method of claim 1 , wherein streaming the source data includes transmitting a data file, data file folder, data container or data structure over a period of time. 5. The method of claim 1 , wherein the identification of the compression algorithm is performed intermittently during the streaming of the source data, and wherein the at least some of the set of data chunks includes an incomplete subset of the set of data chunks, and wherein the method further comprises, for each other data chunk of at least some other of the set of data chunks: compressing the data chunk using a previously selected compression algorithm that was identified for use to compress another data chunk of the set of data chunks; and routing the compressed data chunk to the data target. 6. The method of claim 1 , wherein the performance factor includes a compression ratio of at least one previously compressed data chunk of the set of data chunks, a current network throughput associated with the streaming source data and/or a current processor utilization of the data source. 7. The method of claim 1 , wherein the performance factor includes: a depth, fullness or emptiness of a buffer within the data source a depth, fullness or emptiness of a queue within the data source; and/or an amount, number or percentage of a resource that is available within the data source. 8. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform actions including: receiving uncompressed source data at a data compression system from a data storage device, the uncompressed source data comprising a set of data chunks; and streaming source data to a data target by, for each data chunk of at least some of the set of data chunks: identifying a compression algorithm to use to compress the data chunk based on at least one performance factor, the compression algorithm being of a plurality of compression algorithms; compressing the data chunk using the compression algorithm, wherein different compression algorithms are used to compress at least two of the set of data chunks; and routing the compressed data chunk to the data target. 9. The computer-program product of claim 8 , wherein each of at least two of the different compression algorithms are associated with different expected compression ratios. 10. The computer-program product of claim 8 , wherein at least one of the different compression algorithms includes a lossless data compression algorithm. 11. The computer-program product of claim 8 , wherein streaming the source data includes transmitting a data file, data file folder, data container or data structure over a period of time. 12. The computer-program product of claim 8 , wherein the identification of the compression algorithm is performed intermittently during the streaming of the source data, and wherein the at least some of the set of data chunks includes an incomplete subset of the set of data chunks, and wherein the actions further include, for each other data chunk of at least some other of the set of data chunks: compressing the data chunk using a previously selected compression algorithm that was identified for use to compress another data chunk of the set of data chunks; and routing the compressed data chunk to the data target. 13. The computer-program product of claim 8 , wherein the performance factor includes a compression ratio of at least one previously compressed data chunk of the set of data chunks, a current network throughput associated with the streaming source data and/or a current processor utilization of the data source. 14. The computer-program product of claim 8 , wherein the performance factor includes: a depth, fullness or emptiness of a buffer within the data source a depth, fullness or emptiness of a queue within the data source; and/or an amount, number or percentage of a resource that is available within the data source. 15. A system for data compression including: one or more data processors; and a non-transitory computer readable storage medium containing instructions which when executed on the one or more data processors, cause the one or more data processors to perform actions including: receiving uncompressed source data at a data compression system from a data storage device, the uncompressed source data comprising a set of data chunks; and streaming source data to a data target by, for each data chunk of at least some of the set of data chunks: identifying a compression algorithm to use to compress the data chunk based on at least one performance factor, the compression algorithm being of a plurality of compression algorithms; compressing the data chunk using the compression algorithm, wherein different compression algorithms are used to compress at least two of the set of data chunks; and routing the compressed data chunk to the data target. 16. The system of claim 15 , wherein each of at least two of the different compression algorithms are associated with different expected compression ratios. 17. The system of claim 15 , wherein at least one of the different compression algorithms includes a lossless data compression algorithm. 18. The system of claim 15 , wherein streaming the source data includes transmitting a data file, data file folder, data container or data structure over a period of time. 19. The system of claim 15 , wherein the identification of the compression algorithm is performed intermittently during the streaming of the source data, and wherein the at least some of the set of data chunks includes an incomplete subset of the set of data chunks, and wherein the actions further include, for each other data chunk of at least some other of the set of data chunks: compressing the data chunk using a previously selected compression algorithm that was identified for use to compress another data chunk of the set of data chunks; and routing the compressed data chunk to the data target. 20. The system of claim 15 , wherein the performance factor includes a compression ratio of at least one previously compressed data chunk of the set of data chunks, a current network throughput associated with the streaming source data and/or a current processor utilization of the data source.

Assignees

Inventors

Classifications

  • Compression (speech analysis-synthesis for redundancy reduction G10L19/00; for image communication H04N); Expansion; Suppression of unnecessary data, e.g. redundancy reduction · CPC title

  • H03M7/6094Primary

    according to reasons other than compression rate or data type · CPC title

  • Encoder aspects · CPC title

  • Selection strategies · CPC title

  • Selection between different types of compressors · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10320415B2 cover?
Aspects of dynamic data compression selection are presented. In an example method, as uncompressed data chunks of a data stream are compressed, at least one performance factor affecting selection of one of multiple compression algorithms for the uncompressed data chunks of the data stream may be determined. Each of the multiple compression algorithms may facilitate a different expected compress…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification H03M7/6094. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 11 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).