Automated message-based job flow resource management in container-supported many task computing

US11144293B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11144293-B2
Application numberUS-202017139364-A
CountryUS
Kind codeB2
Filing dateDec 31, 2020
Priority dateFeb 5, 2016
Publication dateOct 12, 2021
Grant dateOct 12, 2021

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.

An apparatus includes at least one processor to retrieve a job flow definition defining a job flow as a set of tasks and dependencies thereamong, store a job performance request message to perform the job flow within a job queue, and in response to the storage of the job performance request message, execute instructions of a performance routine within a storage container to: based on the dependencies, derive an order of performance of the set of tasks that specifies a first task to perform; store, within a task queue, a first task routine execution request message requesting execution of a first task routine; and provide, to a resource allocation routine, an indication of a need for a first task container in which to execute the first task routine to perform the first task, wherein execution of the resource allocation routine causes dynamic allocation of containers based on availability of resources.

First claim

Opening claim text (preview).

The invention claimed is: 1. An apparatus comprising at least one processor and a storage to store instructions that, when executed by the at least one processor, cause the at least one processor to perform operations comprising: receive, at the at least one processor and from a requesting device via a network, a request to perform a job flow, wherein: the job flow is defined in a job flow definition that specifies a set of tasks to be performed via execution of a corresponding set of task routines during a performance of the job flow, and that specifies data dependencies among the set of tasks; the job flow definition is stored among multiple job flow definitions within at least one federated area; the set of task routines is stored among multiple task routines within the at least one federated area; and the at least one federated area is maintained within at least one storage device; retrieve the job flow definition from among the multiple job flow definitions in the at least one federated area; store, within a job queue, a job performance request message comprising the job flow definition; within a first performance container, execute instructions of a first instance of a performance routine to cause the at least one processor to, in response to the storage of the job performance request message within the job queue, perform operations comprising: based on the data dependencies among the set of tasks, derive an order of performance of the set of tasks that specifies at least a first task of the set of tasks to be performed; store, within a task queue, a first task routine execution request message comprising an identifier associated with the first task; provide, to a resource allocation routine executed by the at least one processor, an indication of a need for provision of a first task container in which to execute a first task routine of the set of task routines to perform the first task, wherein execution of the resource allocation routine causes the at least one processor to dynamically allocate multiple containers based on availability of at least one of processing resources and storage resources; and in response to at least storage of an execution completion message within the task queue, store a job completion message indicative of completion of the job flow within the job queue; and in response to storage of the job completion message within the job queue, perform operations comprising: provide, to the resource allocation routine, an indication of cessation of the need for provision of the first task container; and transmit an indication of completion of the job flow to the requesting device via the network. 2. The apparatus of claim 1 , wherein the at least one processor is caused to perform operations comprising: within the first task container, in response to the storage of the first task routine execution request message within the task queue, perform operations comprising: use the identifier associated with the first task to retrieve a first task routine of the set of task routines from the at least one federated area; and commence execution, within the first task container, of instructions of the first task routine to commence performance of the first task. 3. The apparatus of claim 2 , wherein the at least one processor is caused to perform operations comprising: within the first task container, following completion of the execution of the instructions of the first task routine, store, within the task queue, the execution completion message indicative of completion of execution of the first task routine. 4. The apparatus of claim 3 , wherein, in executing the resource allocation routine, the at least one processor is caused to perform operations comprising: in response to the provision of the indication of the need for the provision of the first task routine, refrain from uninstantiating any task containers until after the provision of the indication of cessation of the need for provision of the first task container. 5. The apparatus of claim 1 , wherein: the dynamic allocation of multiple containers comprises dynamic allocation of multiple pods based on the availability of at least one of processing resources and storage resources; the first performance container and a first messaging container are instantiated within a first performance pod of the multiple pods; within the first messaging container, instructions of a first instance of a messaging routine are executed by the at least one processor to cause the at least one processor to provide the first instance of the performance routine with access to the job queue and the task queue; the first task container and a second messaging container are instantiated within a first task pod of the multiple pods; and within the second messaging container, instructions of a second instance of the messaging routine are executed by the at least one processor to cause the at least one processor to provide the first task routine with access to the task queue. 6. The apparatus of claim 5 , wherein: the multiple pods comprise multiple types of task pods; the provision of the indication of the need for the provision of the first task container comprises providing, to the resource allocation routine, an indication of a need for provision of the first task pod; and the indication of the need for the provision of the first task pod comprises an indication of the type of task pod of the first task pod. 7. The apparatus of claim 6 , wherein provision, to the resource allocation routine, of the indication of the need for the provision of the first task container comprises the at least one processor performing operations comprising: within the first performance container of the first performance pod, store, within a scaling queue, a scale up message indicative of the need for provision of the first task pod; and within a scaling container of the multiple containers within a scaling pod of the multiple pods, and in response to the storage of the scale up message within the scaling queue, perform operations comprising: combine the indication of the need for provision of the first task pod with an indication of a need for at least one other pod received from a second performance container within a second performance pod to generate a combined indication of needs for provision of a set of pods; and provide the combined indication to the resource allocation routine. 8. The apparatus of claim 1 , wherein: the order of performance of the set of tasks specifies a second task of the set of tasks to be performed after the first task based on an indication of a dependency of the second task on the first task; and the at least one processor is caused to perform operations comprising: within the first task container, following completion of the execution of the first task routine, store, within the task queue, the execution completion message indicative of completion of execution of the first task routine; and within the first performance container, in response to at least storage of the execution completion message within the task queue, and prior to storage of the job completion message within the job queue, perform operations comprising: store, within the task queue, a second task routine execution request message comprising an identifier associated with the second task; and provide, to the resource allocation routine, an indication of a need for provision of a second task container in which to execute a second task routine of the set of task routines to perform the second task. 9. The apparatus of claim 8 , wherein the at least one processor is caused to perform operations comprising: within the second task container, in response to the storage of t

Assignees

Inventors

Classifications

  • based on fuzzy logic, fuzzy membership or fuzzy inference, e.g. adaptive neuro-fuzzy inference systems [ANFIS] · CPC title

  • Recurrent networks, e.g. Hopfield networks · CPC title

  • Activation functions · CPC title

  • Combinations of networks · CPC title

  • considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups) · 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 US11144293B2 cover?
An apparatus includes at least one processor to retrieve a job flow definition defining a job flow as a set of tasks and dependencies thereamong, store a job performance request message to perform the job flow within a job queue, and in response to the storage of the job performance request message, execute instructions of a performance routine within a storage container to: based on the depend…
Who is the assignee on this patent?
Sas Inst Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/10. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Oct 12 2021 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).