Auotmated storage tiering based on storage pool state and service level objectives

US9916097B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9916097-B1
Application numberUS-201514752018-A
CountryUS
Kind codeB1
Filing dateJun 26, 2015
Priority dateJun 26, 2015
Publication dateMar 13, 2018
Grant dateMar 13, 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.

Promotion and demotion of extents for each storage pool is determined based on a storage pool state defined by demanded activity and demanded capacity. Promotion and demotion of extents for each storage group is determined based on whether the storage group is performing at SLO, above SLO or below SLO. Events are identified and stored in local records using hash tables. The locally stored events are used to update a database of historical extent activity. A moving average of extent activity is used to calculate the demanded activity.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising: a data storage system comprising: a plurality of non-transitory data storage devices each having a performance capability, where ones of the storage devices having a common performance capability are grouped together in a storage pool at a storage tier and the data storage system includes multiple storage tiers; at least one storage director which presents logical storage devices to an application, the logical storage devices being backed by the non-transitory storage devices; and a data movement engine configured, for each storage pool, to: assign one state of a plurality of states to the storage pool based on demanded activity and demanded capacity, the plurality of states including a healthy state in which demanded activity and demanded capacity are acceptable for the storage pool, a first degraded state in which demanded activity is unacceptable for the storage pool, and a second degraded state in which demanded capacity is unacceptable for the storage pool; where the storage pool is in the first degraded state, promote extents from that storage pool to a different storage pool of a tier with greater performance capability in order to cause that storage pool in the first degraded state to be in the healthy state; and where the storage pool is in the second degraded state, demote extents from that storage pool to a storage pool of a tier with lesser performance capability in order to cause that storage pool in the second degraded state to be in the healthy state. 2. The apparatus of claim 1 wherein ones of the logical storage devices are grouped together in a storage group, each storage group being associated with a service level objective, and the data storage system including multiple storage groups, and wherein the data movement engine is further configured to classify each of the storage groups as performing at their respective service level objective, below their respective service level objective or above their respective service level objective. 3. The apparatus of claim 2 wherein the data movement engine is further configured to promote extents from storage groups classified as performing below their respective service level objective. 4. The apparatus of claim 2 wherein the data movement engine is further configured to demote extents from storage groups classified as performing above their respective service level objective. 5. The apparatus of claim 1 comprising a plurality of storage directors, each having a local event record of events identified by that storage director. 6. The apparatus of claim 5 wherein each local event record comprises at least one hash table with at least one event counter associated with each active extent. 7. The apparatus of claim 6 further comprising a global event record in which the counters of the local event records are summed for each active extent. 8. The apparatus of claim 7 further comprising a database of historical activity of extents, the database being updated based on the global event record. 9. The apparatus of claim 8 wherein the data movement engine calculates at least one moving average of historical activity for each extent based on the database. 10. The apparatus of claim 9 wherein the at least one moving average is used to determine the demanded activity. 11. A method comprising: in a data storage system comprising a plurality of non-transitory data storage devices each having a performance capability, where ones of the storage devices having a common performance capability are grouped together in a storage pool at a storage tier and the data storage system includes multiple storage tiers, and at least one storage director which presents logical storage devices to an application, the logical storage devices being backed by the non-transitory storage devices: for each storage pool: assigning one state of a plurality of states to the storage pool based on demanded activity and demanded capacity, the plurality of states including a healthy state in which demanded activity and demanded capacity are acceptable for the storage pool, a first degraded state in which demanded activity is unacceptable for the storage pool, and a second degraded state in which demanded capacity is unacceptable for the storage pool; where the storage pool is in the first degraded state, promoting extents from that storage pool to a different storage pool of a tier with greater performance capability in order to cause that storage pool in the first degraded state to be in the healthy state; and where the storage pool is in the second degraded state, demoting extents from that storage pool to a storage pool of a tier with lesser performance capability in order to cause that storage pool in the second degraded state to be in the healthy state. 12. The method of claim 11 wherein ones of the logical storage devices are grouped together in a storage group, each storage group being associated with a service level objective, and the data storage system including multiple storage groups, further comprising classifying each of the storage groups as performing at their respective service level objective, below their respective service level objective or above their respective service level objective. 13. The method of claim 12 further comprising promoting extents from storage groups classified as performing below their respective service level objective. 14. The method of claim 12 further comprising demoting extents from storage groups classified as performing above their respective service level objective. 15. The method of claim 11 further comprising maintaining a local event record associated with each storage director, each local event record comprising a record of events identified by that storage director. 16. The method of claim 15 further comprising maintaining each local event record as at least one hash table with at least one event counter associated with each active extent. 17. The method of claim 16 further comprising maintaining a global event record in which the counters of the local event records are summed for each active extent. 18. The method of claim 17 further comprising maintaining a database of historical activity of extents, the database being updated based on the global event record. 19. The method of claim 18 further comprising calculating at least one moving average of historical activity for each extent based on the database. 20. The method of claim 19 further comprising determining the demanded activity based on the at least one moving average.

Assignees

Inventors

Classifications

  • by changing the state or mode of one or more devices · CPC title

  • Monitoring storage devices or systems · CPC title

  • Disk arrays, e.g. RAID, JBOD · CPC title

  • G06F3/061Primary

    Improving I/O performance · CPC title

  • Lifecycle management · 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 US9916097B1 cover?
Promotion and demotion of extents for each storage pool is determined based on a storage pool state defined by demanded activity and demanded capacity. Promotion and demotion of extents for each storage group is determined based on whether the storage group is performing at SLO, above SLO or below SLO. Events are identified and stored in local records using hash tables. The locally stored event…
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/061. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 13 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).