Decentralized Workflow Execution using a Chemical Metaphor
1Decentralized Approach for Executionof Composite Web Services using the Chemical Paradigm Hector Fernandez, Thierry Priol and Cedric Tedeschi AUTOCHEM (ANR-07-BLAN-0323)
2 Context • Service oriented computing • Service composition expressed as workflow – Workflow executionIntroduction • Centralized Workflow execution: • A single coordinator node. • The composite web service will be executed in this node. • Responsible for coordination of all data and control flow between the web services. ➔ Problems [Alonso et al., 1997][Chafle et al., 2004]: • Scientific issues: poor scalability, communication and performance bottlenecks. • Societal issues: privacy
4“Nature-inspired metaphors have been shown to be of high interest for service coordination.” [Viroli et al., 2009]
5 Chemical Programming Model • A program can be seen as a chemical solution:Chemical Programming Paradigm • Data: “floating” molecules in the solution. • Computation: chemical reactions between the molecules. • Implicit parallelism and autonomy of reactions until inertia. • Data structure: Multiset. • Containing all data molecules. • Reaction rules re-writing the multiset. • Pioneered by Gamma (General Abstract Model for Multiset Manipulation) [Banâtre et al., 1990].
6 High-Order Chemical Language (HOCL) • The High-Order Chemical Language, HOCL [Banâtre et al., 2006], extension of Gamma.Chemical Programming Paradigm • Reaction rules apply on reaction rules. • Every entity is a molecule in the multiset. • Autonomic behaviors. • Dynamic (runtime). • Example: • A reaction rules is written replace-one P by M if C where P is a pattern which matches the required molecule, C is the reaction condition and M the result of the reaction.
7Decentralized Composite Web Services Execution using a Chemical Paradigm
8 Architecture overviewDecentralized Composite Web Services Execution • Nodes communicating through a persistent and fault-tolerant shared address space. • Composite web service is executed in a fully decentralized manner. • Workflow is executed in parts corresponding with each web service • Data and control transfer through the shared address space.using a Chemical Paradigm • Loose coupling among web services. • Each node is co-responsible of the execution.
9 Building Block: Chemical Web ServiceDecentralized Compositeblock Services Execution The architecture is composed of: • Chemical web services (ChWSes), a chemical encapsulation of a web service. • Service invocation • Storage space (Contains part of multiset) • Chemical engine Building Web – HOCL interpreter (Chemical workflow engine)using a Chemical Paradigm
10 ArchitectureDecentralized Composite Web Services Execution • Multiset, dynamic and decentralized coordination mechanism. – Acts as a shared address space containing both control and data flows. – ChWSes communicate through the multiset. (reading and writing) – Physically distributed over ChWSes storage spaces. Architectureusing a Chemical Paradigm • • Multiset mirrors DSMs (Distributed Shared Memory) behavior.
11 Chemical Workflow DefinitionDecentralized Compositeblock Services Execution In a classical workflow definition • Executable languages like BPEL [OASIS, 2007], XPDL [WfMC, 2008] or YAWL [Van der Aalst et al., 2005]. • All data and control dependencies in the same file. • Made to be executed in a centralized way. Building Web In a chemical workflow definitionusing a Chemical Paradigm • Workflow definition using chemical expressions. • Distributes data and control dependencies to each ChWS. • Executes in parts a workflow in each ChWS. Multiset
12 Chemical Representations for WorkflowDecentralized Compositeblock Services Execution • Express all data and control dependencies (reaction rules and molecules). • We use the High-Order Chemical Language (HOCL) • The whole solution represents the multiset containing all information. • The solution itself is composed of as many sub-solutions as ChWSes. Building Webusing a Chemical Paradigm
13 Chemical rules for distributed executionDecentralized Composite Web Services Execution • Independent from any chemical workflow representation. • Local chemical engines use these chemical rules. • Two sets of chemical rules: • Control and data transfer among ChWSes (MR_transfer).using a Chemical Paradigm • Execution of the workflow step by step (MR_invoke).
36 Multi choice Synchronization merge Despatch policeEmergency request Transfer patient Despatch ambulance
37 Multi-choice control dependenciesSynchronization merge control dependenciesData dependence
38 Conclusion • Demand for more decentralized and dynamic interaction schemas. • Chemical model is well featured for decentralized workflow execution.Summary • Our proposal: High-level decentralized coordination mechanism. • Decentralized Architecture: – Chemical web services working as local engines. – Distributed Multiset – Data and control dependencies – Temporal composition • A High-order chemical language for composite web services: – Concepts for decentralized coordination. – Autonomic behavior
39 Future Work • Decentralized workflow coordination for composite web services (Chemical engines).Summary • Implementation of a prototype (on-going work). • Autonomic behaviour in decentralized workflow execution.