The Grid Workflow Forum
[ start | index | login ]
start > GWES

GWES

Created by bassheide. Last edited by bassheide, 276 days ago. Viewed 2,932 times. #20
[diff] [history] [edit] [rdf]
GWES-logo_trans_0182x0090

Grid Workflow Execution Service

NEW: >>GWES Tutorial (pdf - in German only)


Up-to-date information about the Grid Workflow Execution Service is availabe at the >>GWES software development site


Objective

The Grid Workflow Execution Service (GWES) is the Grid workflow enactment engine of the K-Wf Grid system, which coordinates the creation and execution process of Grid workflows. It implements the highly dynamic workflow concept that we described before. It provides interfaces to the Web Portal for user interaction and to the Low-Level Grid Middleware for the invocation of application operations. The mapping of abstract to concrete workflow is mainly delegated to the system components WCT, AAB, and Scheduler.

Technology and Standards

The GWES will be implemented using the programming language Java. The GWES will have to parse and to modify GWorkflowDL documents. Therefore it will use a standard XML parser (JDOM or SAX). The GWES will be deployed either as a standard Web Service using tomcat or as a Globus Toolkit 4 Grid service.

The GWES will be based on the experience of the implementation and operation of the Grid Job Handler developed within the Fraunhofer Resource Grid by Fraunhofer FIRST in the years 2001 until 2004. The GWES will constitute a complete redesign of the main functionalities of the Grid Job Handler with some major extensions and modifications regarding:

  • Usage of the GWorkflowDL instead of the GJobDL
  • Support of several levels of abstraction
  • Delegation of the refinement and concretion process to the WCT, AAB, and the Scheduler
  • Support of user interaction during creation and execution of the workflow
  • WSRF-compliant
  • Build on top of Globus Toolkit 4

Internal Mechanisms

The GWES will possess the following internal mechanisms and features:

  • Analysis and verification of the workflow descriptions (e.g. endless loops, deadlocks, etc.).
  • Act as a workflow engine, cycling through the workflow graph, searching for activated transitions, and triggering related activities.
  • Optionally provide workflow checkpoint, restart, and rollback capabilities as long as the underlying application Web Service operations support transaction safety. The users may use the workflow rollback feature when creating or modifying workflows.
  • Detection of conflicts within the workflow and delegation of workflow building decisions to the user via the Grid Workflow User Interface (GWUI) in case of conflicts or annotations that request user decisions.
  • Invocation of the Workflow Composition Tool (WCT) if abstract workflow elements need to be mapped onto operations of Web Service classes.
  • Invocation of the Automatic Application Builder (AAB) if operations of Web Service classes need to be mapped onto lists of concrete Web Service operations.
  • Invocation of the Scheduler if a list of concrete Web Service operations needs to be mapped onto one instance of Web Service operation.
  • Reliable invocation of target Web Service operations including fault management.
  • Transfer of data from one Web Service to another as specified in the Grid workflow description.
  • Controlling the execution of the Web Service operations and throwing workflow-related events to the Event System.
Whereas for the envisioned pilot operations it will be enough to have one centralized instance of the GWES, in principle it is possible to have multiple instances deployed on different sites realizing a distributed workflow enactment system, where each instance controls a separate sub-workflow of a Grid workflow. This is possible because the GWES itself can be regarded as an arbitrary Web Service application that may be invoked within a Grid workflow.

References

no comments | post comment
gridworkflow.org | Copyright 2005-2008 Fraunhofer FIRST