Snapshots to train prediction models and improve workflow execution

US10909503B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10909503-B1
Application numberUS-201615364449-A
CountryUS
Kind codeB1
Filing dateNov 30, 2016
Priority dateNov 8, 2016
Publication dateFeb 2, 2021
Grant dateFeb 2, 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.

Methods and apparatus are provided for taking snapshots to train prediction models and improve workflow execution. An exemplary method for managing execution of a workflow comprising one or more sub-workflows comprises parsing and interpreting a definition of the workflow and the one or more sub-workflows; flattening the workflow and the sub-workflows into a directed acyclic graph where nodes represent activities and edges represent partial-order constraints; collecting provenance data about executions of the workflow according to the directed acyclic graph; taking snapshots of the collected provenance data as a representation of a state of the workflow execution; calculating one or more quality metrics regarding the execution of the workflow; associating the snapshots to the quality metrics; training one or more prediction models of the quality metrics based on the snapshots of the workflow executions; and processing the prediction models during a real-time execution of the workflow to adjust the execution of the workflow. The snapshots are triggered using graph-based and/or time-based triggering techniques.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for managing execution of a given workflow comprising one or more sub-workflows, comprising: parsing and interpreting a definition of said given workflow and said one or more sub-workflows, wherein said given workflow is one of a plurality of workflows that share at least a portion of resources employed by the given workflow; flattening said given workflow and said one or more sub-workflows into a directed acyclic graph where nodes represent activities of the given workflow and edges represent partial-order constraints; collecting provenance data about one or more executions of said given workflow according to said directed acyclic graph, wherein said collected provenance data comprises a resource allocation of said given workflow comprising an assignment of resources to the activities, input parameters of the activities of the given workflow, output parameters of the activities of the given workflow, telemetry metrics indicating the use of one or more computational resources during the execution of one or more of said activities of the activities of the given workflow and data regarding an execution of additional workflows in the plurality of workflows, wherein the data for the additional workflows comprises one or more features of the additional workflows and an indication of one or more activities of the additional workflows; taking one or more snapshots of the collected provenance data as a representation of a state of one or more prior executions of the given workflow, wherein the one or more snapshots comprise a selection of features from said input and output parameters, and said telemetry metrics indicating the use of the one or more computational resources at the time of the snapshot; calculating, using at least a portion of the collected provenance data, one or more quality metrics regarding one or more prior executions of the plurality of workflows; associating said one or more snapshots to said one or more quality metrics; training one or more prediction models of said quality metrics using machine learning techniques based on said one or more snapshots of a plurality of said prior executions of the plurality of workflows; and processing said one or more prediction models during a real-time execution of said given workflow to adjust the execution of said given workflow of the plurality of workflows, by updating the input parameters of said activities of the given workflow and the resource allocation of said given workflow, taking into account one or more of said quality metrics for the plurality of workflows predicted by said one or more prediction models, wherein the method is performed by at least one processing device comprising a processor coupled to a memory. 2. The method of claim 1 , wherein said step of taking one or more snapshots is triggered when a given execution crosses one or more elements of said directed acyclic graph that are marked with a predefined flag. 3. The method of claim 1 , wherein said step of taking one or more snapshots is triggered at a specified time interval during a given execution. 4. The method of claim 1 , wherein the one or more prediction models are updated substantially continuously as more provenance data about new executions are collected. 5. The method of claim 1 , wherein the one or more snapshots included in the step of training one or more prediction models comprise one or more snapshots taken during the one or more executions of said given workflow and one or more additional snapshots generated after a completion of the workflow executions. 6. The method of claim 1 , wherein said collected provenance data comprises one or more provenance data resulting from historical executions of the workflow. 7. A computer program product for managing execution of a given workflow comprising one or more sub-workflows, comprising a non-transitory machine-readable storage medium having encoded therein executable code of one or more software programs, wherein the one or more software programs when executed by at least one processing device perform the following steps: parsing and interpreting a definition of said given workflow and said one or more sub-workflows, wherein said given workflow is one of a plurality of workflows that share at least a portion of resources employed by the given workflow; flattening said given workflow and said one or more sub-workflows into a directed acyclic graph where nodes represent activities of the given workflow and edges represent partial-order constraints; collecting provenance data about one or more executions of said given workflow according to said directed acyclic graph, wherein said collected provenance data comprises a resource allocation of said given workflow comprising an assignment of resources to the activities, input parameters of the activities of the given workflow, output parameters of the activities of the given workflow, telemetry metrics indicating the use of one or more computational resources during the execution of one or more of said activities of the activities of the given workflow and data regarding an execution of additional workflows in the plurality of workflows, wherein the data for the additional workflows comprises one or more features of the additional workflows and an indication of one or more activities of the additional workflows; taking one or more snapshots of the collected provenance data as a representation of a state of one or more prior executions of the given workflow, wherein the one or more snapshots comprise a selection of features from said input and output parameters, and said telemetry metrics indicating the use of the one or more computational resources at the time of the snapshot; calculating, using at least a portion of the collected provenance data, one or more quality metrics regarding one or more prior executions of the plurality of workflows; associating said one or more snapshots to said one or more quality metrics; training one or more prediction models of said quality metrics using machine learning techniques based on said one or more snapshots of a plurality of said prior executions of the plurality of workflows; and processing said one or more prediction models during a real-time execution of said given workflow to adjust the execution of said given workflow of the plurality of workflows, by updating the input parameters of said activities of the given workflow and the resource allocation of said given workflow, taking into account one or more of said quality metrics for the plurality of workflows predicted by said one or more prediction models. 8. The computer program product of claim 7 , wherein said step of taking one or more snapshots is triggered by one or more of when a given execution crosses one or more elements of said directed acyclic graph that are marked with a predefined flag and at a specified time interval during a given execution. 9. The computer program product of claim 7 , wherein the one or more prediction models are updated substantially continuously as more provenance data about new executions are collected. 10. The computer program product of claim 7 , wherein the one or more snapshots included in the step of training one or more prediction models comprise one or more snapshots taken during the one or more executions of said given workflow and one or more additional snapshots generated after a completion of the workflow executions. 11. The computer program product of claim 7 , wherein said collected provenance data comprises one or more provenance data resulting from historical executions of the workflow. 12. A system for managing execution of a given workflow comprising one or more sub

Assignees

Inventors

Classifications

  • Machine learning · CPC title

  • G06Q10/103Primary

    Workflow collaboration or project management · CPC title

  • Inference or reasoning models · CPC title

  • Design optimisation, verification or simulation (optimisation, verification or simulation of circuit designs G06F30/30) · 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 US10909503B1 cover?
Methods and apparatus are provided for taking snapshots to train prediction models and improve workflow execution. An exemplary method for managing execution of a workflow comprising one or more sub-workflows comprises parsing and interpreting a definition of the workflow and the one or more sub-workflows; flattening the workflow and the sub-workflows into a directed acyclic graph where nodes r…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06Q10/103. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 02 2021 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).