Intelligent data compression

US10013170B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10013170-B1
Application numberUS-201615086747-A
CountryUS
Kind codeB1
Filing dateMar 31, 2016
Priority dateMar 31, 2016
Publication dateJul 3, 2018
Grant dateJul 3, 2018

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.

Determining whether to compress data of a virtual storage unit based at least in part on: an I/O activity value of a virtual storage unit; a compressibility value of the virtual storage unit; and/or a capacity utilization of the storage system or a component thereof. For example, decision logic may be configured based on one or more of such parameters such that virtual storage units with relatively high I/O activities are rarely or never compressed, e.g., to avoid the disproportionately high increases in CPU and bandwidth resource consumption and I/O latency this could create. Decision logic may be configured such that, in general, the likelihood that a virtual storage unit will be compressed increases as: the I/O activity of the virtual storage unit decreases; the system capacity utilization increases; and/or as the compressibility value of the virtual storage unit increases.

First claim

Opening claim text (preview).

What is claimed is: 1. For a system comprising one or more physical data storage media and a plurality of virtual storage units, each virtual storage unit associated with one or more physical address ranges of the one or more physical storage media, a method comprising, for first data associated with a first of the plurality of virtual storage units, an act of: determining whether to compress the first data based at least in part on an I/O activity value of the first virtual storage unit; if it is determined to compress the first data, initiating compression of the first data; and determining whether to update a compressibility value in response to determining whether to compress the first data, wherein the compressibility value is associated with a compressibility level that is based upon an achievable compressibility value. 2. The method of claim 1 , wherein the act of determining whether to compress the first data is based at least in part on a compressibility value of the first virtual storage unit. 3. The method of claim 1 , further comprising an act of: determining whether to update a compressibility value of the first virtual storage unit; and if it is determined to update the compressibility value of the first virtual storage unit, updating the compressibility value. 4. The method of claim 1 , wherein the act of determining whether to compress the first data is based at least in part on a storage capacity utilization of the storage media or a subcomponent thereof. 5. The method of claim 1 , wherein the act of determining whether to compress the first data is performed in response to receiving a write I/O request for the first data. 6. The method of claim 1 , further comprising, prior to performing the act of determining whether to compress the first data, acts of: receiving an initial write I/O request for the first virtual storage unit, to write second data to a first one or more physical address ranges associated with the first virtual storage unit; and determining a compressibility value of the first virtual storage unit based on a compressibility of the second data, irrespective of a storage capacity utilization of the storage media or a subcomponent thereof. 7. The method of claim 1 , further comprising: determining that the compressibility value has not been determined for the first data for at least a threshold amount of time; and in response to determining that the compressibility value has not been determined for at least the threshold amount of time, determining a compressibility value for the first data. 8. A system comprising: one or more physical data storage media and a plurality of virtual storage units, each virtual storage unit associated with one or more physical address ranges of the one or more physical storage media; first logic operative to, for first data associated with a first of the plurality of virtual storage units, determining whether to compress the first data based at least in part on an I/O activity value of the first virtual storage unit; second logic to initiate compression of the first data if it is determined to compress the first data; and fifth logic operative to determining whether to update a compressibility value in response to determining whether to compress the first data, wherein the compressibility value is associated with a compressibility level that is based upon an achievable compressibility value. 9. The system of claim 8 , wherein the first logic is operative to determine whether to compress the first data based at least in part on a compressibility value of the first virtual storage unit. 10. The system of claim 8 , further comprising: third logic to determine whether to update a compressibility value of the first virtual storage unit; and fourth logic to update the compressibility value of the first virtual storage unit if it is determined to update the compressibility value. 11. The system of claim 8 , wherein the first logic is operative to determine whether to compress the first data based at least in part on a storage capacity utilization of the storage media or a subcomponent thereof. 12. The system of claim 8 , wherein the first logic is operative to determine whether to compress the first data in response to receiving a write I/O request for the first data. 13. The system of claim 8 , wherein the first logic is operative, for an initial write I/O request for the first virtual storage unit specifying to write second data to a first one or more physical address ranges associated with the first virtual storage unit, to determine a compressibility value of the first virtual storage unit based on a compressibility of the second data, irrespective of a storage capacity utilization of the storage media or a subcomponent thereof. 14. The system of claim 8 , further comprising: third logic to determine that the compressibility value has not been determined for the first data for at least a threshold amount of time; and fourth logic to determine the compressibility value for the first data in response to determining that the compressibility value has not been determined for at least the threshold amount of time. 15. A non-transitory computer-readable medium encoded with computer-executable instructions that, as a result of being executed by a computer, control the computer to perform, for a system comprising one or more physical data storage media and a plurality of virtual storage units, each virtual storage unit associated with one or more physical address ranges of the one or more physical storage media, a method comprising, for first data associated with a first of the plurality of virtual storage units, an act of: determining whether to compress the first data based at least in part on an I/O activity value of the first virtual storage unit; if it is determined to compress the first data, initiating compression of the first data; and determining whether to update a compressibility value in response to determining whether to compress the first data, wherein the compressibility value is associated with a compressibility level that is based upon an achievable compressibility value. 16. The computer-readable medium of claim 15 , wherein the act of determining whether to compress the first data is based at least in part on a compressibility value of the first virtual storage unit. 17. The computer-readable medium of claim 15 , wherein the method further comprises an act of: determining whether to update a compressibility value of the first virtual storage unit; and if it is determined to update the compressibility value of the first virtual storage unit, updating the compressibility value. 18. The computer-readable medium of claim 15 , wherein the act of determining whether to compress the first data is based at least in part on a storage capacity utilization of the storage media or a subcomponent thereof. 19. The computer-readable medium of claim 15 , wherein the act of determining whether to compress the first data is performed in response to receiving a write I/O request for the first data. 20. The computer-readable medium of claim 15 , wherein the method further comprises, prior to performing the act of determining whether to compress the first data, acts of: receiving an initial write I/O request for the first virtual storage unit, to write second data to a first one or more physical address ranges associated with the first virtual storage unit; and determining a compressibility value of the first virtual storage unit based on a

Assignees

Inventors

Classifications

  • Format or protocol conversion arrangements · CPC title

  • G06F3/0608Primary

    Saving storage space on storage systems · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Plurality of storage devices · CPC title

  • at area level, e.g. provisioning of virtual or logical volumes · 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 US10013170B1 cover?
Determining whether to compress data of a virtual storage unit based at least in part on: an I/O activity value of a virtual storage unit; a compressibility value of the virtual storage unit; and/or a capacity utilization of the storage system or a component thereof. For example, decision logic may be configured based on one or more of such parameters such that virtual storage units with relati…
Who is the assignee on this patent?
Emc Corp, Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0608. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 03 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).