Efficient resource utilization in data centers

US9823948B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9823948-B2
Application numberUS-201514948426-A
CountryUS
Kind codeB2
Filing dateNov 23, 2015
Priority dateJan 31, 2014
Publication dateNov 21, 2017
Grant dateNov 21, 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.

A method includes identifying high-availability jobs and low-availability jobs that demand usage of resources of a distributed system. The method includes determining a first quota of the resources available to low-availability jobs as a quantity of the resources available during normal operations, and determining a second quota of the resources available to high-availability jobs as a quantity of the resources available during normal operations minus a quantity of the resources lost due to a tolerated event. The method includes executing the jobs on the distributed system and constraining a total usage of the resources by both the high-availability jobs and the low-availability jobs to the quantity of the resources available during normal operations.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: identifying high-availability jobs and low-availability jobs that demand usage of resources of a distributed system; determining a first quota of the resources available to low-availability jobs as a quantity of the resources available during normal operations; determining a second quota of the resources available to high-availability jobs as the quantity of the resources available during normal operations minus a quantity of the resources lost due to a tolerated event, the second quota of the resource available to high-availability jobs being determined as: wherein Q 2 is the second quota, R N is the quantity of the resource available during normal operations, R L is the quantity of the resource lost due to a tolerated event, and x is a resource multiplier corresponding to the tolerated event; executing the jobs on the resources of the distributed system; and constraining a total usage of the resources by both the high-availability jobs and the low-availability jobs to the quantity of the resources available during normal operations. 2. The method of claim 1 , wherein the resources comprise data processing devices, networking systems, power systems, or cooling systems. 3. The method of claim 2 , further comprising migrating or re-executing jobs assigned to resources lost due to the tolerated event to remaining resources. 4. The method of claim 1 , wherein the resources comprise non-transitory memory devices. 5. The method of claim 1 , further comprising determining the second quota of the resources available to high-availability jobs as: Q 2 =R N −R L −R I wherein Q 2 is the second quota, R N is the quantity of the resources available during normal operations, R L is the quantity of the resources lost due to a tolerated event, and R I is an increased quantity of the remaining resources needed due to the tolerated event. 6. The method of claim 1 , wherein the resource comprises non-transitory memory devices. 7. The method of claim 1 , further comprising limiting a sum of the first quota and the second quota to a maximum quota. 8. The method of claim 1 , further comprising: monitoring a usage of the resources by the high-availability jobs; and when a high-availability job exceeds a threshold usage, downgrading the high-availability job to a low-availability job. 9. The method of claim 1 , further comprising suspending or ending at least some of the low-availability jobs for the period of time before the tolerated event. 10. The method of claim 1 , further comprising determining the quantity of the resources lost due to a tolerated event based on an assignment of the jobs to particular resources and a system hierarchy of the distributed system, the system hierarchy comprising system domains, each having an active state or an inactive state. 11. A method comprising: identifying high-availability jobs and low-availability jobs that demand usage of resources of a distributed system; determining a first quota of the resources available to low-availability jobs as a quantity of the resources available during normal operations; determining a quantity of the resources lost due to a tolerated event based on an assignment of the jobs to particular resources and a system hierarchy of the distributed system, wherein the system hierarchy comprises system levels comprising: a first system level corresponding to host machines of data processing devices, non-transitory memory devices, or network interface controllers, each host machine having a system domain; a second system level corresponding to power deliverers, communication deliverers, or cooling deliverers of racks housing the host machines, each power deliverer, communication deliverer, or cooling deliverer of the rack having a system domain; and a third system level corresponding to power deliverers, communication deliverers, or cooling deliverers of cells having associated racks, each power deliverer, communication deliverer, or cooling deliverer of the cell having a system domain; and a fourth system level corresponding to a distribution center module of the cells, each distribution center module having a system domain; determining a second quota of the resources available to high-availability jobs as the quantity of the resources available during normal operations minus the quantity of the resources lost due to the tolerated event; executing the jobs on the resources of the distributed system; and constraining a total usage of the resources by both the high-availability jobs and the low-availability jobs to the quantity of the resources available during normal operations. 12. A system comprising: resources of a distributed system; and a computer processor in communication with the resources, the computer processor: identifying high-availability jobs and low-availability jobs that demand usage of the resources; determining a first quota of the resources available to low-availability jobs as a quantity of the resources available during normal operations; determining a second quota of the resources available to high-availability jobs as the quantity of the resources available during normal operations minus a quantity of the resources lost due to a tolerated event, the second quota of the resource available to high-availability jobs being determined as: wherein Q 2 is the second quota, R N is the quantity of the resource available during normal operations, R L is the quantity of the resource lost due to a tolerated event, and x is a resource multiplier corresponding to the tolerated event; executing the jobs on the resources of the distributed system; and constraining a total usage of the resources by both the high-availability jobs and the low-availability jobs to the quantity of the resources available during normal operations. 13. The system of claim 12 , wherein the resources comprise data processing devices, networking systems, power systems, or cooling systems. 14. The system of claim 13 , wherein the computer processor migrates or re-executes jobs assigned to resources lost due to the tolerated event to remaining resources. 15. The system of claim 12 , wherein the resources comprises non-transitory memory devices. 16. The system of claim 12 , wherein the computer processor determines the second quota of the resources available to high-availability jobs as: Q 2 =R N −R L −R I wherein Q 2 is the second quota, R N is the quantity of the resources available during normal operations, R L is the quantity of the resources lost due to a tolerated event, and R I is an increased quantity of the remaining resources needed due to the tolerated event. 17. The system of claim 12 , wherein the resources comprise non-transitory memory devices. 18. The system of claim 12 , wherein the computer processor limits a sum of the first quota and the second quota to a maximum quota. 19. The system of claim 12 , wherein the computer processor: monitors a usage of the resources by the high-availability jobs; and when a high-availability job exceeds a threshold usage, downgrades the high-availability job to a low-availability job. 20. The system of claim 12 , wherein the computer processor suspends or ends at least some of the low-availability jobs for the period of time before the tolerated event. 21. The system of claim 12 , wherein the computer processor determines the quantity of the resources lost due to a tolerated event based o

Assignees

Inventors

Classifications

  • G06F9/50Primary

    Allocation of resources, e.g. of the central processing unit [CPU] · CPC title

  • Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title

  • involving task migration · CPC title

  • G06F9/5011Primary

    the resources being hardware resources other than CPUs, Servers and Terminals · CPC title

  • Resource availability · 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 US9823948B2 cover?
A method includes identifying high-availability jobs and low-availability jobs that demand usage of resources of a distributed system. The method includes determining a first quota of the resources available to low-availability jobs as a quantity of the resources available during normal operations, and determining a second quota of the resources available to high-availability jobs as a quantity…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/50. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 21 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).