Optimized resource management for map/reduce computing

US9367359B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9367359-B2
Application numberUS-82824510-A
CountryUS
Kind codeB2
Filing dateJun 30, 2010
Priority dateJun 30, 2010
Publication dateJun 14, 2016
Grant dateJun 14, 2016

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.

Embodiments of the present invention include a method for resource optimization of map/reduce computing in a computing cluster. The method can include receiving a computational problem for processing in a map/reduce module, subdividing the computational problem into a set of sub-problems and mapping a selection of the sub-problems in the set to respective nodes in a computing cluster, for example a cloud computing cluster, computing for a subset of the nodes in the computing cluster a required resource capacity of the subset of the nodes to process a mapped one of the sub-problems and an existing capacity of the subset of the nodes, and augmenting the existing capacity to an augmented capacity when the required resource capacity exceeds the existing capacity, and when a cost of augmenting the existing capacity to the augmented capacity does not exceed a penalty for breaching a service level agreement (SLA) for the subset of the nodes.

First claim

Opening claim text (preview).

We claim: 1. A map/reduce data processing system comprising: a computer with at least one processor and a memory communicatively coupled to a computing cluster of nodes over a computer communications network and hosting execution of a map/reduce module; a service level agreement (SLA) stored in a fixed storage coupled to the computer; and, optimized resource management logic coupled to the map/reduce module, the optimized resource management logic comprising program code enabled to compute for a subset of nodes in the computing cluster of nodes a required resource capacity of the subset of nodes to process a mapped sub-problem of a computational problem submitted to the map/reduce module and also an existing capacity of the subset of nodes, to determine whether the required resource capacity of the subset of nodes exceeds the existing capacity of the subset of nodes, upon determining that the required resource capacity of the subset of the nodes exceeds the existing capacity of the subset of the nodes, both determine a cost of augmenting the existing capacity to an augmented capacity to elevate the subset of the nodes to the required resource capacity and also determine a penalty for breaching the SLA, and to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity upon both determining that the required resource capacity exceeds the existing capacity and also upon determining that the cost of augmenting the existing capacity to the augmented capacity to elevate the subset of the nodes to the required resource capacity does not exceed the penalty for breaching the SLA. 2. The system of claim 1 , wherein the computing cluster of nodes is a cloud computing cluster of nodes. 3. The system of claim 1 , wherein the subset of nodes is a server in the computing cluster of nodes. 4. A computer program product for optimized resource management of map/reduce computing in a computing cluster, the computer program product comprising: a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising: computer readable program code for receiving a computational problem for processing in a map/reduce module executing in a memory by at least one processor of a computer; computer readable program code for subdividing the computational problem into a set of sub-problems and mapping a selection of the sub-problems in the set of sub-problems to respective nodes in the computing cluster; computer readable program code for computing for a subset of the nodes in the computing cluster a required resource capacity of the subset of the nodes to process a mapped one of the sub-problems and also an existing capacity of the subset of the nodes; computer readable program code for determining whether the required resource capacity of the subset of the nodes exceeds the existing capacity of the subset of the nodes; computer readable program code for, upon determining that the required resource capacity of the subset of the nodes exceeds the existing capacity of the subset of the nodes, both determining a cost of augmenting the existing capacity to an augmented capacity to elevate the subset of the nodes to the required resource capacity and also determining a penalty for breaching a service level agreement (SLA) for the computing cluster; and, computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity upon both determining that the required resource capacity exceeds the existing capacity, and also upon determining that the cost of augmenting the existing capacity to the augmented capacity to elevate the subset of the nodes to the required resource capacity does not exceed a penalty for breaching the SLA for the computing cluster. 5. The computer program product of claim 4 , wherein the computing cluster is a cloud computing cluster. 6. The computer program product of claim 4 , wherein the computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises computer readable program code for provisioning additional servers in the computing cluster for the subset of the nodes. 7. The computer program product of claim 4 , wherein the computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises computer readable program code for provisioning additional memory in the subset of the nodes. 8. The computer program product of claim 4 , wherein the computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises computer readable program code for provisioning additional processors in the subset of the nodes. 9. The computer program product of claim 5 , wherein the computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises computer readable program code for augmenting the existing capacity of the subset of the nodes to the augmented capacity when the required resource capacity exceeds by a first threshold value of the existing capacity, and also when the cost of augmenting the existing capacity to the augmented capacity does not exceed beyond a second threshold value of a penalty for breaching a service level agreement (SLA) for the cloud computing cluster. 10. The system of claim 1 , wherein the program code enabled to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises program code to provision additional servers in the computing cluster of nodes for the subset of the nodes. 11. The system of claim 1 , wherein the program code enabled to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises program code to provision additional memory in the subset of the nodes. 12. The system of claim 1 , wherein the program code enabled to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises program code to provision additional processors in the subset of the nodes. 13. The system of claim 2 , wherein the program code enabled to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises program code to augment the existing capacity of the subset of the nodes to the augmented capacity when the required resource capacity exceeds by a first threshold value of the existing capacity, and also when the cost of augmenting the existing capacity to the augmented capacity does not exceed beyond a second threshold value of a penalty for breaching a service level agreement (SLA) for the cloud computing cluster. 14. The system of claim 1 , wherein the program code enabled to augment the existing capacity of the subset of nodes to the augmented capacity to elevate the subset of the nodes to the required resource capacity comprises program code to provision additional ban

Assignees

Inventors

Classifications

  • characterised by the conditions triggering a change of settings · CPC title

  • G06F9/5066Primary

    Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs (mappping at compile time, see G06F8/451) · CPC title

  • Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities (flow or congestion control using dynamic resource allocation, e.g. in-call renegotiation, H04L47/76) · 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 US9367359B2 cover?
Embodiments of the present invention include a method for resource optimization of map/reduce computing in a computing cluster. The method can include receiving a computational problem for processing in a map/reduce module, subdividing the computational problem into a set of sub-problems and mapping a selection of the sub-problems in the set to respective nodes in a computing cluster, for examp…
Who is the assignee on this patent?
Doyle Ronald P, Kaminsky David L, IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/5066. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 14 2016 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).