bpel for scientific workflows

25
BPEL for Scientific Workflows Shiyong Lu

Upload: eze

Post on 22-Jan-2016

49 views

Category:

Documents


0 download

DESCRIPTION

BPEL for Scientific Workflows. Shiyong Lu. What is BPEL. BPEL stands for Business Process Execution Language, a de facto specification language for business workflows mainly consisting of Web services. Is BPEL suitable/sufficient for scientific workflows?. An overview of BPEL. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: BPEL for Scientific Workflows

BPEL for Scientific Workflows

Shiyong Lu

Page 2: BPEL for Scientific Workflows

What is BPEL

• BPEL stands for Business Process Execution Language, a de facto specification language for business workflows mainly consisting of Web services.

• Is BPEL suitable/sufficient for scientific workflows?

Page 3: BPEL for Scientific Workflows

An overview of BPEL

Page 4: BPEL for Scientific Workflows

Invoke Activity

Page 5: BPEL for Scientific Workflows

Receive Activity

Page 6: BPEL for Scientific Workflows

Reply Activity

Page 7: BPEL for Scientific Workflows

Assign Activity

Page 8: BPEL for Scientific Workflows

Sequence Activity

Page 9: BPEL for Scientific Workflows

If Activity

Page 10: BPEL for Scientific Workflows

While Activity

Page 11: BPEL for Scientific Workflows

repeatUntil Activity

Page 12: BPEL for Scientific Workflows

forEach Activity

Page 13: BPEL for Scientific Workflows

Flow Activity

Page 14: BPEL for Scientific Workflows

Pick Activity

Page 15: BPEL for Scientific Workflows

Scope Activity

Page 16: BPEL for Scientific Workflows

BPEL is sufficient! (Akram et al)

Requirements for scientific workflows:

1. Modular design

2. Exception handling

3. Compensation mechanism

4. Adaptivity to environment

5. Flexibility to select services dynamically

6. Steering and monitoring

Page 17: BPEL for Scientific Workflows

because… (Akram et al)

1. Modular design: (Sequence, flows, scope)2. Exception handling (global, scoped, inline)3. Compensation mechanism (compensation

handler)4. Adaptivity (XML any data type)5. Flexibility to select services dynamically

(exception handler, compensation handler)6. Steering and monitoring (Pick, onMessage,

onAlarm)

Page 18: BPEL for Scientific Workflows

despite… (Akram et al)

Some limitations which are overcomable by WSIF, J2EE and WS-* specifications.

• Reusability of primitive and structured activities in BPEL is limited. It is not possible to re-execute an activity that is defined earlier by referring to it later;

• It is not possible to trigger an <onMessage> or<onAlarm> event within the workflow for the purposes of

dynamically modifying the workflow at runtime.3. The BPEL specification does not explicitly support userinteractions resulting in different levels of support for differentworkflow engines.

Page 19: BPEL for Scientific Workflows

BPEL or Taverna? (A comparison done by Tan et al.)

• They compare their usability in the full lifecycle of a scientific workflow, including service discovery, service composition, workflow execution, and workflow result analysis.

• They determine that BPEL offers a comprehensive set of primitives for modeling processes of all flavors, while Taverna provides a more compact set of primitives and a functional programming model that eases data flow modeling.

Page 20: BPEL for Scientific Workflows

The life cycle of Scientific Workflows

Page 21: BPEL for Scientific Workflows

The challenges of Scientific Workflows

• Resources are highly distributed. Scientific workflows usually use services owned by other organizations, like data storage, high-performance computing,

• Dataflow oriented. Data is considered to be the first-class citizen in scientific workflows, because scientific workflows are mostly pipelines of parallel data processing. In a data flow, tasks and links represent data processing and data transport, respectively; parallel execution of independent tasks is desired to be modeled for free -- tasks can execute once their input are ready.

Page 22: BPEL for Scientific Workflows

The challenges of Scientific Workflows (con’t)

• Large scale. Scientific workflows often contain many tasks, involve large data sets, and require intensive computation. The modeling tool should make it easy to model such complex workflows.

• Data analysis and provenance is an important step and the workflow execution can be in an iterative manner.

Page 23: BPEL for Scientific Workflows

Comparison on service discovery (BPEL vs Taverna)

• Services are often virtualizations of data storage, computation capability or other resources.

• Service endpoints are not naturally known to users, either because users are not familiar with the service itself, or because the service deployment may have changed in time.

• Taverna: a scavenger meta-service, Feta, and the MyGrid ontology, BPEL tools are still weak in service discovery.

Page 24: BPEL for Scientific Workflows

Comparison on workflow modeling (BPEL vs Taverna)

Page 25: BPEL for Scientific Workflows

References

• Asif Akram, David Meredith, Rob Allan: Evaluation of BPEL to Scientific Workflows. CCGRID 2006:269-274

• Tan et al. “A comparison of using Taverna and BPEL in building scientific workflows: the case of caGrid”, 2009. Concurrency and Computation: Practice and Experience

• Wei Tan, Paolo Missier, Ravi K. Madduri, Ian T. Foster: Building Scientific Workflow with Taverna and BPEL: A Comparative Study in caGrid. ICSOC Workshops 2008:118-129

• Aleksander Slominski, “Adapting BPEL to Scientific Workflows”, book chapter in book “Workflow for e-Science”, Eds: Ian Taylor, et al.

• Wassermann et al, “Sedna: A BPEL-Based Environment for Visual Scientific Worklow Modeling”, book chapter in book “Workflow for e-Science”, Eds, Ian Taylor, et al.