The Grid Workflow Execution Service

Dynamic and Interactive Execution and Visualization of Distributed Workflows

The Grid Workflow Execution Service (GWES) is the workflow enactment engine originally implemented for the Fraunhofer Resource Grid, redesigned within the K-Wf Grid project, and enhanced for Enterprise Grids, Instant-Grid, MediGRID, and BauVOGrid. The GWES coordinates the composition and execution process of Grid workflows. It implements a highly dynamic workflow concept by means of the Grid Workflow Description Language (GWorkflowDL), which is based upon the theory of high-level Petri nets. It provides interfaces to the Web Portal and to a command line client for user interaction and to the low-level Grid Middleware for the invocation of application operations.

The main purpose of the Grid Workflow Execution Service and its client interfaces is to enable users to automatically execute workflows on distributed resources without being bothered with implementation-specific details, putting more attention to the functionality of the workflow itself. Therefore the Grid Workflow Execution service provides methods to initiate and analyze Grid workflows, and to coordinate and optimize the execution of these workflows on distributed and inhomogeneous resources regarding the control as well as the data flow. Abstract operations are automatically mapped onto matching software and hardware resources, triggering web service operations, remote executions of programs, or file transfers. The workflow service supports pure Web Services and Globus Toolkit 4, and it is easily extendible for further execution platforms, such as UNICORE, Condor, GRIA, and SUN Grid Engine, allowing reusing existing workflows on different Grid middleware.

Deployment

The Grid Workflow Execution Service is deployed as a standard Web Service, so it seamlessly integrates into common system architectures. There is a strict separation of the enactment machine and its client interfaces. The graphical user interface is realized by a set of Java Applets and Servlets which can be easily integrated in generic or application-specific web portals. In addition there exists a command line client program that implements the full set of workflow management features and which simplifies the integration into legacy frameworks.

Innovation

The main scientific achievements include the definition of a theoretically well founded Workflow Description Language, which is very simple but expressiveness at the same time, using the well-known concept of high-level Petri nets. With this approach we are able to model arbitrary algorithms, including parallel branches or loops. Transitions can possess conditions that we express using the XPath 1.0 syntax.

In order to make the workflows persistent, the execution service uses a native XML database for storing snapshots of the workflows including the workflow?s state, which is represented by the marking of the corresponding Petri net. The system provides a simple and robust checkpoint-restore functionality and the user may initiate each of these snapshots as a new workflow instance. Another scientific achievement is the overall concept of iteratively mapping abstract workflows onto concrete resources, taking into account the most current monitoring information. Each of the abstraction levels uses the same workflow description language, so it is possible to mix several levels of abstraction in one workflow.

Selected Publications

  • Marian Bubak, Steffen Unger (Eds.): K-Wf Grid - The Knowledge-based Workflow System for Grid Applications. Proceedings of CGW'06, Vol. II, CYFRONET, Cracow, 2007 (pdf 11MB)
  • Falk Neubauer, Andreas Hoheisel, Joachim Geiler: Workflow-based Grid Applications. In: Peter Sloot (Ed.) Future Generation Computer Systems, Volume 22, Number 1-2, pp. 6-15, Elsevier, 2006 (doi:10.1016/j.future.2005.08.002)
  • Andreas Hoheisel and Martin Alt: Petri Nets. In: Workflows for eScience, Ian J. Taylor, Dennis Gannon, Ewa Deelman, and Matthew S. Shields (Eds.), Springer, 2006
  • Martin Alt, Andreas Hoheisel, Hans-Werner Pohl, Sergei Gorlatch: Using High Level Petri-Nets for Describing and Analysing Hierarchical Grid Workflows. In: Proceedings of the CoreGRID Integration Workshop 2005, Pisa, 2005
  • Martin Alt, Andreas Hoheisel, Hans-Werner Pohl, Sergei Gorlatch: A Grid Workflow Language Using High-Level Petri Nets. In: Proceedings of the PPAM05, Poznan, 2005
  • Hoheisel, A.: User Tools and Languages for Graph-based Grid Workflows. In: Special Issue of Concurrency and Computation: Practice and Experience, (c) Wiley, 2005 (pdf 502kB, doi10.1002/cpe.1002)
  • Andreas Hoheisel, Uwe Der: An XML-based Framework for Loosely Coupled Applications on Grid Environments. P.M.A. Sloot et al. (Eds.): ICCS 2003. LNCS 2657, 245-254, (c) Springer-Verlag Berlin Heidelberg, 2003 (pdf 492kB)

License Issues

Please regard that the license agreement allows the free use only for the Licensee's own scientific or educational purposes. Any use beyond - especially but not limited for commercial purposes - and/or distribution to third parties requires our prior written consent. In these cases please contact andreas.hoheisel@first.fraunhofer.de or steffen.unger@first.fraunhofer.de.