190 likes | 301 Views
On Using BPEL Extensibility to Implement OGSI and WSRF Grid Workflows. Aleksander Slomiski. Presented by Onyeka Ezenwoye CIS 6612 - Advanced Topics in Software Engineering. Outline. Agenda Background BPEL Overview BPEL/OGSI BPEL/WSRF Other Issues Conclusion. Agenda. Background.
E N D
On Using BPEL Extensibility to Implement OGSI and WSRF Grid Workflows Aleksander Slomiski Presented by Onyeka Ezenwoye CIS 6612 - Advanced Topics in Software Engineering
Outline Agenda Background BPEL Overview BPEL/OGSI BPEL/WSRF Other Issues Conclusion Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Grid: A dynamicmulti-institutional network of computers that come together to share resources for the purpose of coordinatedproblem solving. resource Agenda Background application BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion institutional boundary • Achieved through: • Open general-purpose protocols • Standard interfaces
Outline Web Services: A Web service is an application that is accessible over the internet. Enterprise A Enterprise C … … … … App 1 App 1 App 1 App 1 App N App N App N App N .NET etc. CORBA Java RMI Internet Firewall Firewall Firewall Firewall Enterprise B Enterprise D Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion • Core Technologies: • XML (eXtensible Markup Language) • SOAP (Simple Object Access Protocol) • WSDL (Web Service Description Language)
Outline WSDL <definition namespace = “http/… “> <message>+ defines data elements of operations <part>+ components of the message </message> <portType> defines the web service interface <operation>+ operations that can be performed <input> <output> <fault>* </portType> <binding> comms. protocols for operations </binding> <service> a list of binding and ports to the bindings </service> </definition> Service Broker WSDL Subscribe Publish Service Consumer Service Provider Bind Client Service Reply Legend program boundary request flow module boundary reply flow Service Description Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Open Grid Service Infrastructure (OGSI) - 2001 Grid service interface standard Methods allow access to Grid service As well as Grid service state (SDE) Optional factory interface Naming and referencing of Grid services Extends WSDL 1.1 (GWSDL) OGSI Registry Grid Service Reference (GSR) Grid Service Handle (GSH) Publish GSR Service Consumer Service Provider Bind Client Grid Service Reply Legend program boundary request flow module boundary reply flow Grid Service Reference Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion • OGSI Grid service locator: • Multiple GHSs + GSRs + interface description
Outline Web Service Resource Framework (WSRF) - 2004 Distinguish between service and stateful resource Model stateful resource as a Web service Modular (users decide which specification to use) OGSI to WSRF* Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion * www.globus.org/wsrf
Outline Workflow: A description of the sequence of interaction between a set of activities that are performed together to achieve a common goal. Step 1 Step 3 Step 2 Step 4 Activity Condition / interaction Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues • Rapid composition • Automation • Management Conclusion
Outline BPEL: An XML based workflow language for composing aggregate Web services. result phrase Google Spell-checker WS Amazon Store WS Agenda <portType name="GooglePortType"> <operation name="doSpellingSuggestion"> <input message="type:String"/> <output message="type:String"/> </operation> </portType> Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion result query <portType name=“AmazonPortType"> <operation name="ItemSearch"> <input message="type:ComplexType"/> <output message="type:Array"/> </operation> </portType>
Outline Google-Amazon BPEL process BPEL Engine interprets XML-grammar Exposed as a Web service Described by WSDL (version 1.1) phrase Google Spell-checker WS result assignment activity query result Amazon Store WS Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion <portType name=“Google-AmazonPortType"> <operation name=“GoogleAmazonSearch"> <input message="type:String"/> <output message="type:Array"/> </operation> </portType>
Outline Partners <partnerLinks> <partnerLink myRole="googleAmazon" … partnerLinkType="lns:googleAmazonLinkType"/> <partnerLink partnerRole =“Google" … partnerLinkType="lns: GoogleLinkType "/> <partnerLink name=“Amazon“ … partnerLinkType="lns:AmazonLinkType"/> </partnerLinks> Google Amazon Partners Agenda receive Background BPEL invoke BPEL / OGSI invoke BPEL / WSRF reply Google-Amazon Other Issues Activities <process> … <flow> <receive name="receive" partnerLink=“googleAmazon" …> … </receive> <invoke name="invokeGoogle" partnerLink =“google“ …> … </invoke> <invoke name="invokeAmazon" partnerLink="amazon" …> … </invoke> <reply name="reply" partnerLink=“googleAmazon" …> … </reply> </flow> </process> Conclusion
Outline Google-Amazon BPEL process Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion Screenshot from ActiveWebflowTM Professional
Outline Fault Handling Two constructs for handling faults; <catch> and <catchAll>. Event Handling Timeout n 5 3 1 process 5 1 BPEL Engine Agenda <message name=“requestMessage"> <part name="firstName" type="xsd:string"/> <part name=“lastName" type="xsd:string"/> <part name=“custID" type="xsd:int"/> </message> Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion Message Correlation
Outline BPEL And OGSI Integration* • Leveraging BPEL abstractions • BPEL Partner is known by interface (PortType) • Very powerful integration mechanism! • Understands natively GSH/Locator as service reference • Handle automatically GSH to GSR conversion • Supports Explicit and Implicit Lifecycle • GPEL workflow engine is also OGSI Factory * Aleksander Slomiski Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Issues in OGSI Integration * • GSH/GSR and WS-Addressing • Endpoint Reference (EPR) is not GSH or GSR … • BPEL and OGSI Factory • BPEL Engine acts as factory • BPEL has already implicit creation model • BPEL Engine that is NOT OGSI Factory • Will not fit into common OGSI usage pattern • OGSI Factory is optional … * Aleksander Slomiski Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline WSRF Support * • WS-Addressing (WSA) • Workflow Instance identification • WSA is already used by BPEL … • No need to do conversions • WS-Resource properties • Similar to OGSI SDEs • WS-Notification • Monitoring workflow state * Aleksander Slomiski Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Integration with Today Grid * • GridFTP, GSI Security, Condor, … • Add set of pseudo partners (services) • No need to extend BPEL syntax! • They represent built-in functionality (handy!) • Can be implemented as real Web Services • Will make easy to write workflow that is: • Working on Grid (CoG services) • Manipulating components (XCAT) • Large data transfers (GridFTP, RFT service) • Similarly could have OGSI partners • Natively understands GSH/GSR/locator • Maintains soft state etc. * Aleksander Slomiski Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Additional Issues* • Workflow Monitoring • How much state exposed as XML is needed? • Fault Tolerance • Selection of alternative services • Dealing with “unexpected” exceptions • Supporting Large Data and Streaming • Suitable metaphor (in BPEL)? * Aleksander Slomiski Agenda Background BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion
Outline Questions? Service Port Type Factory Port Type OGSI Grid Service WSDL Port Type BPEL Process Agenda Background Smart Proxy BPEL BPEL / OGSI BPEL / WSRF Other Issues Conclusion