Storage device management in computing systems

US9785374B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9785374-B2
Application numberUS-201414496078-A
CountryUS
Kind codeB2
Filing dateSep 25, 2014
Priority dateSep 25, 2014
Publication dateOct 10, 2017
Grant dateOct 10, 2017

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.

Various techniques of managing storage devices in a computing system are described in this application. In one embodiment, a method includes receiving an input containing consumption data representing consumption of a storage device in one of the processing units and determining if the storage device in one of the processing units is consumed excessively. In response to determining that the storage device is consumed excessively, an indicator may be generated to indicate a potential program migration from the one of the processing units to another one of the processing units in the computing system.

First claim

Opening claim text (preview).

We claim: 1. A computing device having a processor and a memory containing instructions that when executed by the processor, cause the processor to perform a process comprising: receiving an input from a first processing unit of a computing system, the first processing unit executing one or more application programs with a processor, wherein the input containing data representing a number of operations previously performed by a storage device of the first processing unit; determining if the number of operations of the storage device of the first processing unit is excessive in relation to a target threshold; and in response to determining that the number of operations of the storage device of the first processing unit is excessive, migrating one or more of the application programs from the first processing unit to a second processing unit in the computing system, wherein the process performed by the processor further includes determining the target threshold based on an endurance of the storage device and a time that the storage device is in service. 2. The computing device of claim 1 wherein the one or more application programs includes one or more virtual machines, and wherein migrating one or more of the application programs includes migrating one or more of the virtual machines from the first processing unit to the second processing unit. 3. The computing device of claim 1 wherein the number of operations previously performed by the storage device includes an accumulated number of reads, writes, and/or erases previously committed to the storage device, and wherein determining if the number of operations to the storage device of the first processing unit is excessive includes determining if the number of reads, writes, and/or erases previously committed to the storage device is above the target threshold. 4. The computing device of claim 1 wherein: the number of operations previously performed by the storage device includes an accumulated number of writes previously committed to the storage device; and the process performed by the processor further includes: calculating a percentage of excess in the number of writes previously committed to the storage device based on an expected number of writes; and comparing the calculated percentage of excess to the target threshold. 5. The computing device of claim 1 wherein: the number of operations previously performed by the storage device includes an accumulated number of writes previously committed to the storage device; and the process performed by the processor further includes: calculating a percentage of excess in the number of writes previously committed to the storage device based on an expected number of writes; determining if the calculated percentage of excess is larger than the target threshold; and in response to determining that the percentage of excess is larger than the target threshold, indicating that the number of operations to the storage device of the first processing unit is excessive. 6. The computing device of claim 1 wherein: the number of operations previously performed by the storage device includes an accumulated number of writes previously committed to the storage device; and the process performed by the processor further includes: calculating a percentage of excess in the number of writes previously committed to the storage device based on an expected number of writes; determining if the calculated percentage of excess is larger than the target threshold; and in response to determining that the percentage of excess is not larger than the target threshold, performing at least one of indicating that the number of operations to the storage device of the first processing unit is not excessive; or marking the processing unit as suitable as a migrate target. 7. A method of managing storage devices in a computing system having a plurality of servers interconnected with one another via a computer network, the servers individually having a processor and one or more storage devices operatively coupled to the processor, the method comprising: receiving, from one of the servers via the computer network, an input containing consumption data representing a consumption status of a storage device coupled to a processor of one of the servers, wherein the storage device is accessed by the processor when executing instructions to host a virtual machine on the one of the servers; determining whether the storage device coupled to the one of the servers is consumed excessively based on an expected consumption rate of the storage device and the received consumption status of the storage device from the one of the servers, wherein the expected consumption rate is determined based on an endurance of the storage device and a time that the storage device is in service; and in response to determining that the storage device is consumed excessively, causing the virtual machine currently hosted on the one of the servers to migrate, via the computer network, from the one of the servers to be hosted by another one of the servers in the computing system. 8. The method of claim 7 wherein determining whether the storage device in the one of the processing units is consumed excessively includes: calculating a consumption variation based on the received consumption data and the expected consumption of the storage device; determining whether the calculated consumption variation associated with the storage device is above a threshold; and in response to determining that the calculated consumption variation is above the threshold, indicating that the storage device is consumed excessively. 9. The method of claim 8 wherein calculating the consumption variation of the storage device includes calculating at least one of a difference between the received consumption data and the expected consumption of the storage device or a percentage of excess consumption above the expected consumption of the storage device. 10. The method of claim 8 wherein calculating the consumption variation of the storage device includes calculating the expected consumption based on a life endurance of the storage device and a time in service of the storage device. 11. The method of claim 8 wherein calculating the consumption variation of the storage device includes: calculating an expected remaining endurance of the storage device by multiplying a life endurance of the storage device and a time in service of the storage device; and calculating a percentage of excess consumption based on the calculated remaining endurance and the data representing the consumption of the storage device. 12. The method of claim 7 wherein the computing system includes a data center. 13. The method of claim 7 , further comprising: in response to determining that the storage device is consumed excessively, selecting the another one of the servers of the computing system based on a consumption status of a storage device on the another server; and automatically migrating the virtual machine from the one of the servers to the selected another server via the computer network. 14. The method of claim 7 , further comprising: in response to determining that the storage device is consumed excessively, selecting the another one of the servers of the computing system based at least in part on a physical proximity of the another one of the servers to the one of the servers; and automatically migrating the virtual machine from the one of the servers to the selected another one of the servers via the computer network. 15. The method of claim 7 wherein: in response to determining that the storage device is consumed excessively, selecting a storage device coupled to

Assignees

Inventors

Classifications

  • involving task migration · CPC title

  • Accessing, addressing or allocating within memory systems or architectures (digital input from, or digital output to record carriers, e.g. to disk storage units, G06F3/06) · CPC title

  • in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · CPC title

  • based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title

  • Non-volatile semiconductor memory arrays · 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 US9785374B2 cover?
Various techniques of managing storage devices in a computing system are described in this application. In one embodiment, a method includes receiving an input containing consumption data representing consumption of a storage device in one of the processing units and determining if the storage device in one of the processing units is consumed excessively. In response to determining that the sto…
Who is the assignee on this patent?
Microsoft Corp, Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0647. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 10 2017 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).