Presentation is loading. Please wait.

Presentation is loading. Please wait.

Orchestration of an OGSI-enabled scientific application using the Business Process Execution Language Ben Butchart Wolfgang Emmerich University College.

Similar presentations


Presentation on theme: "Orchestration of an OGSI-enabled scientific application using the Business Process Execution Language Ben Butchart Wolfgang Emmerich University College."— Presentation transcript:

1 Orchestration of an OGSI-enabled scientific application using the Business Process Execution Language Ben Butchart Wolfgang Emmerich University College London b.butchart@cs.ucl.ac.uk w.emmerich@cs.ucl.ac.uk Grids and Applied Language Theory (GAL2003)

2 Overview How we became interested in workflow Why we chose BPEL A BPEL appetizer Shortcomings of existing BPEL implementations Shortcomings of BPEL language itself Overcoming some problems Comparison with GSFL Conclusion and future work Discussion

3 The Beginning… A messy but beautiful data flow diagram

4 Control logic of the Polymorph prediction application (not distributed)

5 Control logic of the distributed polymorph prediction application

6 So why BPEL ? WSFL and XLANG deprecated Microsoft, IBM, BEA triumvirate powerful market force Submitted to OASIS for standardization First implementations already available for evaluation (IBM BPWS4J, Collaxa) Do not want to diverge from standard Web Services technology set

7 Instantiating SOAP message AA AB 0

8 BPEL Example <receive name="receive" partner=“user" portType="p:PolyPort" operation="runPoly" container="request“ createInstance="yes"/>

9 BPEL Example <from container="request" part="spacegroups“ query="./spacegroupLabel[position()=1]" /> <to container="molpakrequest" part="crystal" query="./ns2:symmetry/@id" /> <invoke name="invoke1" partner="provider" portType="mpak:MolpakPort" operation="runMolpak" inputContainer="molpakrequest" outputContainer="molpakresponse"/> …

10 BPEL Features Loop and control logic XPath query assignment Recursive Composition Synchronous and asynchronous communication Concurrent execution Correlated messages Event handling Fault handling

11 Shortcomings of BPEL implementations Binding to a URL expected at deployment time Early implementations could not cope with OGSI extensions to WSDL Or properly handle imports Dynamic creation of new process instances to improve scalability Steering – change process during execution

12 Shortcomings of BPEL language Need placeholder objects to support some assignments Data aggregation - No way to temporarily collate results Cannot specify mechanism for binding (WSDL, UDDI, OGSAFactory) Limited lifecycle interface (just receive, pick terminate) Verbose Does not support peer communication

13 The scalability problem After Krishnam, Wagstrom, Laszewski GSFL: A Workflow Framework for Grid Services Workflow Engine Compute Service Compute Service Compute Service Compute Service Compute Service Compute Service

14 <invoke name="invoke1" partner="provider" portType="mpak:MolpakPort" operation="runMolpak" inputContainer="molpakrequest" outputContainer="molpakresponse "/> getBindingURL(PortType) BPEL Parser Abstract Binding WSDL Binding UDDI Binding OGSA Registry OGSA Factory Binding OGSA Registry UDDI Registry Molpak service Create instance <soap:address location= "http://tapas.cs.ucl.ac.uk: 8080/ogsa/services/"/> Late binding

15 Scalability Workflow Engine Compute Service Compute Service Compute Service Workflow Engine Compute Service Compute Service & Workflow Engine Compute Service compute1 compute2 compute3

16 How we solve the problems late binding: extra URL binding mechanisms scalability: recursive composition scalability: group binaries into single WS port type scalability: dynamic deployment and delegation steering: use BPEL event handling functionality aggregation: use a dedicated web service verbose: use GUI/XSLT

17 Other Web Service Workflow Languages WSFL and XLANG – now superseded by BPEL GSFL – extension to WSFL to support Grid requirements SWFL – another extension to WSFL Scufl (taverna) / Freefluo

18 Comparison with GSFL recursive composition correlated messages separates data flow peer data flow modelling binding mechanism configurable WS standard cross vendor support fault handling and compensation concurrent control flow message part assignment Xpath assignment implementations available recursive composition correlated messages separates data flow peer data flow modelling binding mechanism configurable WS standard cross vendor support fault handling and compensation concurrent control flow message part assignment Xpath assignment implementations available GSFLBPEL

19 Conclusion Can use BPEL for modelling grid applications – no real need for extensions But we need an implementation that is Grid enabled Might not need full implementation We should stick with WS technology set if at all possible

20 Integration with Scheduler (Sun Grid Engine) 2.getBindingURL (PortType) Trader Binding SGE 3. Run a proxy job (jobID, traderURL) molpak service isntance OGSA Registry Trader SGE Wrapper 4. Run a proxy job (jobID, traderURL) Dummy Process (blocks) 5. runDummy.sh (jobID,traderURL) BPEL Engine 1.getBindingURL (PortType) 9.invocation completed 6. SGEchooseMe (jobID,myURL) 10.kill 7. search for instance 8.invoke service compute node

21 Late binding: deployment descriptor <parameter name="className" value="poly.PolyProvider“


Download ppt "Orchestration of an OGSI-enabled scientific application using the Business Process Execution Language Ben Butchart Wolfgang Emmerich University College."

Similar presentations


Ads by Google