SlideShare uma empresa Scribd logo
1 de 35
Experience with Adapting a WS-BPEL Runtime for eScience Workflows Thilina Gunarathne, Chathura Herath, Eran Chinthaka, Suresh Marru Pervasive Technology Institute  Indiana University
Introduction Scientist communities are solving deeper larger problems spanning across domains Share & combine multiple applications in flexible yet planned order Orchestrate together using workflows Most of the scientific workflow systems use custom formats Interoperability challenge
WS-BPEL Business Process Execution Language for Web Services (WS-BPEL) De-facto standard for specifying web service based business processes and service compositions Basic activities Invoke, Receive, Assign.. Structured activities Sequence, Flow, ForEach,..
LEAD: an NSF funded large Information Technology Research Project
Linked Environments for Atmospheric Discovery LEAD –  researched to better understand the atmosphere, educate more effectively about it, and forecast more accurately by adapting technologies as the weather occurs.  improved mesoscale forecasts ingested more local observations to enhance the initial conditions. Used in NOAA Storm Prediction Center Hazardous Weather Testbed Spring Experiments. Used in National Collegiate  Forecast Competition Used by USDA for crop planning Used as Educational Tools
Storms Forming Forecast Model Streaming Observations Data Mining Instrument Steering Refine forecast grid LEAD Dynamic Adaptive Infrastructure
LEAD Architecture
GPEL Grid Process Execution Language BPEL4WS based home grown research workflow engine Supports a subset of BPEL4WS 1.1  One of the very early adaptations of BPEL efforts Specifically designed for eScience Usage Long running workflow support Decoupled client
Goals
Challenges
Propagation of Workflow Context Information Lead Context Header (LCH) Unique identifiers End point references Configurations information Security information Lead mandates propagation of LCH with application specific SOAP messages Workflow runtime need to propagate the LCH received in input message to every service invocation message
Propagation of Workflow Context Information Implemented using auto-generated WS-BPEL logic Define LCH in the WSDL of the workflow, by binding a message part to a SOAP header block Allows us to access LCH as a variable inside WS-BPEL process
Asynchronous Invocation Prohibitive to invoke LEAD services in a synchronous blocking manner Long running tasks  => long running web service invocations Multi hops No standard compliant unambiguous mechanism for asynchronous req/resp web service operation invocations in WS-BPEL No integrated support for WS-Addressing
Asynchronous Invocation Two popular mechanisms Implement as dual one way messages Requires reply address information to be propagated using a proprietary mechanisms Requires services to be modified Make invoke inherently asynchronous Non-portability of the WS-BPEL process behavior Proposal for WS-Addressing based WS-BPEL extension
Notification & Monitoring Two types of monitoring Workflow engine state monitoring Service invocation state monitoring Generating Notifications from BPEL Engine Out of scope of WS-BPEL specification Almost all the popular WS-BPEL runtimes provide plug-in mechanisms for notification generation LEAD workflow tracking library based Apache ODE notification handler
Notification & Monitoring – Assigning Service Identifiers Fine grained monitoring Necessitates unique identifiers for  each service invocation XBayagenerated identifiers Node-id Workflow time step Rely on WS-BPEL logic to copy the identifiers to LCH of service invocation messages
Workflow Instance Creation In GPEL, separate workflow instance creation and execution steps Workflow engine creates the identifiers In WS-BPEL, workflow instances are created implicitly when messages are received <receive> activities marked with “createinstance=true” Workflow client creates the Workflow-Instance-ID Different from Apache ODE internal process instance id Correlation between two ids in the first notification
Variable Initializing WS-BPEL requires complex variables to be initialized before using or copying in to them Xbaya workflow composer automatically adds WS-BPEL logic for initialization steps using its domain knowledge Some engines initialize variables automatically But cannot be done accurately for all the cases without the domain knowledge
Workflow Deployment No standard way of packaging and deploying WS-BPEL processes Xbaya workflow composer is designed to support many workflow engines Engine specific decoupled workflow proxy services Generic workflow description from XBaya to the proxy service Currently XBaya contains few ODE specific changes, which will be removed soon.
Workflow Client BPEL  1.1 BPEL  2.0 SCUFL Abstract DAG Model Composition and Monitoring Python Dynamic Enactor/ Interpreter Jython Based Enactor GPEL  Engine Apache  ODE Engine Taverna Python Runtime Message Bus
New Use Cases
Stream Mining
<for-each> for parametric studies Exploring a parameter space to identify or optimize a solution
Workflow instance recovery Multi-level fault tolerance support in LEAD No need to use WS-BPEL exception handling WS-BPEL error recovery Vs Scientific workflows Only infrastructure failures are handled at the working engine level Hasthi monitoring infrastructure Performs corrective actions in the event of an infrastructure failure Recovery of infrastructure components Resurrects workflow instances by replaying input messages
Performance & Reliability Evaluate the workflow system with regards to LEAD performance and scalability requirements Scalable back end service TPS >4000 Same configuration as LEAD production ODE
Simple Service Invocation Workflow
<for-each>  workflow
Performance Comments Parallel speedup results More than factor of 4 speedup when 5 way parallelism is used with a long running service Notification overhead is smaller in complex workflows
Experience Currently deployed in the LEAD production & development stacks More than 1000 workflow deployments Available open source in OGCE – Xbaya & the scientific workflow extensions Minimal changes to ODEas most of the requirements were implemented using auto generated WS-BPEL logic.
Questions
Acknowledgement AleksanderSlominski and Satoshi Shirasuna for the foundation they laid. Prof. Dennis Gannon & Prof. Beth Plale for the mentoring SrinathPerera and LavanyaRamakrishnan for their direct and indirect constibutions. NSF funding for LEAD project and the NSF funding for OGCE
Thanks
Service Monitoring via Events 1 2 3 4 5 6 The service output is a stream of events I am running your request I have started to move your input files. I have all the files I am running your application. The application is finished I am moving the output to you file space I am done. These are automatically generated by the service using a distributed event system(WS-Eventing / WS-Notification) Topic based pub-sub system witha well known “channel”. Application Service Instance Notification Channel Subscribe Topic=x x x publisher listener

Mais conteúdo relacionado

Mais procurados

Apache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army KnifeApache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army KnifeDataWorks Summit
 
Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Edwin Beekman
 
Sdn and open flow tutorial 4
Sdn and open flow tutorial 4Sdn and open flow tutorial 4
Sdn and open flow tutorial 4UmaMahesh Sistu
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Haidee McMahon
 
Disaster Recovery and High Availability with Kafka, SRM and MM2
Disaster Recovery and High Availability with Kafka, SRM and MM2Disaster Recovery and High Availability with Kafka, SRM and MM2
Disaster Recovery and High Availability with Kafka, SRM and MM2Abdelkrim Hadjidj
 
Expanding your impact with programmability in the data center
Expanding your impact with programmability in the data centerExpanding your impact with programmability in the data center
Expanding your impact with programmability in the data centerCisco Canada
 
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache Knox
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache KnoxFortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache Knox
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache KnoxDataWorks Summit
 
QCon London 2015 - Wrangling Data at the IOT Rodeo
QCon London 2015 - Wrangling Data at the IOT RodeoQCon London 2015 - Wrangling Data at the IOT Rodeo
QCon London 2015 - Wrangling Data at the IOT RodeoDamien Dallimore
 
Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres EDB
 
An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)Anthony Baker
 
Presentation linux on power
Presentation   linux on powerPresentation   linux on power
Presentation linux on powersolarisyougood
 
IBM Spectrum Scale Secure- Secure Data in Motion and Rest
IBM Spectrum Scale Secure- Secure Data in Motion and RestIBM Spectrum Scale Secure- Secure Data in Motion and Rest
IBM Spectrum Scale Secure- Secure Data in Motion and RestSandeep Patil
 
Migrating Analytics to the Cloud at Fannie Mae
Migrating Analytics to the Cloud at Fannie MaeMigrating Analytics to the Cloud at Fannie Mae
Migrating Analytics to the Cloud at Fannie MaeDataWorks Summit
 
Mastering OpenStack - Episode 03 - Simple Architectures
Mastering OpenStack - Episode 03 - Simple ArchitecturesMastering OpenStack - Episode 03 - Simple Architectures
Mastering OpenStack - Episode 03 - Simple ArchitecturesRoozbeh Shafiee
 
Mastering OpenStack - Episode 11 - Scaling Out
Mastering OpenStack - Episode 11 - Scaling OutMastering OpenStack - Episode 11 - Scaling Out
Mastering OpenStack - Episode 11 - Scaling OutRoozbeh Shafiee
 
The DBA 3.0 Upgrade
The DBA 3.0 UpgradeThe DBA 3.0 Upgrade
The DBA 3.0 UpgradeSean Scott
 

Mais procurados (20)

Apache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army KnifeApache Knox - Hadoop Security Swiss Army Knife
Apache Knox - Hadoop Security Swiss Army Knife
 
Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015
 
Sdn and open flow tutorial 4
Sdn and open flow tutorial 4Sdn and open flow tutorial 4
Sdn and open flow tutorial 4
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
 
Disaster Recovery and High Availability with Kafka, SRM and MM2
Disaster Recovery and High Availability with Kafka, SRM and MM2Disaster Recovery and High Availability with Kafka, SRM and MM2
Disaster Recovery and High Availability with Kafka, SRM and MM2
 
Expanding your impact with programmability in the data center
Expanding your impact with programmability in the data centerExpanding your impact with programmability in the data center
Expanding your impact with programmability in the data center
 
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache Knox
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache KnoxFortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache Knox
Fortifying Multi-Cluster Hybrid Cloud Data Lakes using Apache Knox
 
QCon London 2015 - Wrangling Data at the IOT Rodeo
QCon London 2015 - Wrangling Data at the IOT RodeoQCon London 2015 - Wrangling Data at the IOT Rodeo
QCon London 2015 - Wrangling Data at the IOT Rodeo
 
Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres Beginner's Guide to High Availability for Postgres
Beginner's Guide to High Availability for Postgres
 
An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)An Introduction to Apache Geode (incubating)
An Introduction to Apache Geode (incubating)
 
Network Virtualization
Network VirtualizationNetwork Virtualization
Network Virtualization
 
Kafka/SMM Crash Course
Kafka/SMM Crash CourseKafka/SMM Crash Course
Kafka/SMM Crash Course
 
Presentation linux on power
Presentation   linux on powerPresentation   linux on power
Presentation linux on power
 
IBM Spectrum Scale Secure- Secure Data in Motion and Rest
IBM Spectrum Scale Secure- Secure Data in Motion and RestIBM Spectrum Scale Secure- Secure Data in Motion and Rest
IBM Spectrum Scale Secure- Secure Data in Motion and Rest
 
Migrating Analytics to the Cloud at Fannie Mae
Migrating Analytics to the Cloud at Fannie MaeMigrating Analytics to the Cloud at Fannie Mae
Migrating Analytics to the Cloud at Fannie Mae
 
DPDK & Cloud Native
DPDK & Cloud NativeDPDK & Cloud Native
DPDK & Cloud Native
 
RTI Connext 5.2.0
RTI Connext 5.2.0RTI Connext 5.2.0
RTI Connext 5.2.0
 
Mastering OpenStack - Episode 03 - Simple Architectures
Mastering OpenStack - Episode 03 - Simple ArchitecturesMastering OpenStack - Episode 03 - Simple Architectures
Mastering OpenStack - Episode 03 - Simple Architectures
 
Mastering OpenStack - Episode 11 - Scaling Out
Mastering OpenStack - Episode 11 - Scaling OutMastering OpenStack - Episode 11 - Scaling Out
Mastering OpenStack - Episode 11 - Scaling Out
 
The DBA 3.0 Upgrade
The DBA 3.0 UpgradeThe DBA 3.0 Upgrade
The DBA 3.0 Upgrade
 

Semelhante a Experience with adapting a WS-BPEL runtime for eScience workflows

Ogce Workflow Suite
Ogce Workflow SuiteOgce Workflow Suite
Ogce Workflow Suitesmarru
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterTammo van Lessen
 
Three SOA Case Studies
Three SOA Case StudiesThree SOA Case Studies
Three SOA Case StudiesPaul Fremantle
 
Oracle SOA Suite in use – a practical experience report
Oracle SOA Suite in use – a practical experience reportOracle SOA Suite in use – a practical experience report
Oracle SOA Suite in use – a practical experience reportGuido Schmutz
 
Library Web Services for Discovery and Delivery of Scientific Information
Library Web Services for Discovery and Delivery of Scientific InformationLibrary Web Services for Discovery and Delivery of Scientific Information
Library Web Services for Discovery and Delivery of Scientific InformationRichard Akerman
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellenceveehikle
 
Webinar: Deploying the Combined Virtual and Physical Infrastructure
Webinar: Deploying the Combined Virtual and Physical InfrastructureWebinar: Deploying the Combined Virtual and Physical Infrastructure
Webinar: Deploying the Combined Virtual and Physical InfrastructurePepperweed Consulting
 
Microservices: Breaking Apart the Monolith
Microservices:  Breaking Apart the Monolith Microservices:  Breaking Apart the Monolith
Microservices: Breaking Apart the Monolith Iron.io
 
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...IEEEFINALYEARSTUDENTPROJECTS
 
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...IEEEFINALYEARSTUDENTPROJECT
 
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...IEEEBEBTECHSTUDENTSPROJECTS
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonVMware Tanzu
 
Stream analytics
Stream analyticsStream analytics
Stream analyticsrebeccatho
 

Semelhante a Experience with adapting a WS-BPEL runtime for eScience workflows (20)

CV_Pranay
CV_PranayCV_Pranay
CV_Pranay
 
Ogce Workflow Suite
Ogce Workflow SuiteOgce Workflow Suite
Ogce Workflow Suite
 
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-OrchesterWeb Service Composition mit WS-BPEL und dem Open-Source-Orchester
Web Service Composition mit WS-BPEL und dem Open-Source-Orchester
 
Enterprise Deployments & SOA
Enterprise Deployments & SOAEnterprise Deployments & SOA
Enterprise Deployments & SOA
 
Three SOA Case Studies
Three SOA Case StudiesThree SOA Case Studies
Three SOA Case Studies
 
Oracle SOA Suite in use – a practical experience report
Oracle SOA Suite in use – a practical experience reportOracle SOA Suite in use – a practical experience report
Oracle SOA Suite in use – a practical experience report
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Soa & Bpel
Soa & BpelSoa & Bpel
Soa & Bpel
 
Library Web Services for Discovery and Delivery of Scientific Information
Library Web Services for Discovery and Delivery of Scientific InformationLibrary Web Services for Discovery and Delivery of Scientific Information
Library Web Services for Discovery and Delivery of Scientific Information
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 
Webinar: Deploying the Combined Virtual and Physical Infrastructure
Webinar: Deploying the Combined Virtual and Physical InfrastructureWebinar: Deploying the Combined Virtual and Physical Infrastructure
Webinar: Deploying the Combined Virtual and Physical Infrastructure
 
Microservices: Breaking Apart the Monolith
Microservices:  Breaking Apart the Monolith Microservices:  Breaking Apart the Monolith
Microservices: Breaking Apart the Monolith
 
Soa bpel-123
Soa bpel-123Soa bpel-123
Soa bpel-123
 
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...
IEEE 2014 JAVA SERVICE COMPUTING PROJECTS Decentralized enactment of bpel pro...
 
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
 
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
2014 IEEE JAVA SERVICE COMPUTING PROJECT Decentralized enactment of bpel proc...
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - Boston
 
Harish
HarishHarish
Harish
 
Stream analytics
Stream analyticsStream analytics
Stream analytics
 
Pavani_Rao
Pavani_RaoPavani_Rao
Pavani_Rao
 

Último

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 

Último (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 

Experience with adapting a WS-BPEL runtime for eScience workflows

  • 1. Experience with Adapting a WS-BPEL Runtime for eScience Workflows Thilina Gunarathne, Chathura Herath, Eran Chinthaka, Suresh Marru Pervasive Technology Institute Indiana University
  • 2. Introduction Scientist communities are solving deeper larger problems spanning across domains Share & combine multiple applications in flexible yet planned order Orchestrate together using workflows Most of the scientific workflow systems use custom formats Interoperability challenge
  • 3. WS-BPEL Business Process Execution Language for Web Services (WS-BPEL) De-facto standard for specifying web service based business processes and service compositions Basic activities Invoke, Receive, Assign.. Structured activities Sequence, Flow, ForEach,..
  • 4. LEAD: an NSF funded large Information Technology Research Project
  • 5. Linked Environments for Atmospheric Discovery LEAD – researched to better understand the atmosphere, educate more effectively about it, and forecast more accurately by adapting technologies as the weather occurs. improved mesoscale forecasts ingested more local observations to enhance the initial conditions. Used in NOAA Storm Prediction Center Hazardous Weather Testbed Spring Experiments. Used in National Collegiate Forecast Competition Used by USDA for crop planning Used as Educational Tools
  • 6. Storms Forming Forecast Model Streaming Observations Data Mining Instrument Steering Refine forecast grid LEAD Dynamic Adaptive Infrastructure
  • 7.
  • 9. GPEL Grid Process Execution Language BPEL4WS based home grown research workflow engine Supports a subset of BPEL4WS 1.1 One of the very early adaptations of BPEL efforts Specifically designed for eScience Usage Long running workflow support Decoupled client
  • 10. Goals
  • 12. Propagation of Workflow Context Information Lead Context Header (LCH) Unique identifiers End point references Configurations information Security information Lead mandates propagation of LCH with application specific SOAP messages Workflow runtime need to propagate the LCH received in input message to every service invocation message
  • 13. Propagation of Workflow Context Information Implemented using auto-generated WS-BPEL logic Define LCH in the WSDL of the workflow, by binding a message part to a SOAP header block Allows us to access LCH as a variable inside WS-BPEL process
  • 14.
  • 15. Asynchronous Invocation Prohibitive to invoke LEAD services in a synchronous blocking manner Long running tasks => long running web service invocations Multi hops No standard compliant unambiguous mechanism for asynchronous req/resp web service operation invocations in WS-BPEL No integrated support for WS-Addressing
  • 16. Asynchronous Invocation Two popular mechanisms Implement as dual one way messages Requires reply address information to be propagated using a proprietary mechanisms Requires services to be modified Make invoke inherently asynchronous Non-portability of the WS-BPEL process behavior Proposal for WS-Addressing based WS-BPEL extension
  • 17. Notification & Monitoring Two types of monitoring Workflow engine state monitoring Service invocation state monitoring Generating Notifications from BPEL Engine Out of scope of WS-BPEL specification Almost all the popular WS-BPEL runtimes provide plug-in mechanisms for notification generation LEAD workflow tracking library based Apache ODE notification handler
  • 18. Notification & Monitoring – Assigning Service Identifiers Fine grained monitoring Necessitates unique identifiers for each service invocation XBayagenerated identifiers Node-id Workflow time step Rely on WS-BPEL logic to copy the identifiers to LCH of service invocation messages
  • 19. Workflow Instance Creation In GPEL, separate workflow instance creation and execution steps Workflow engine creates the identifiers In WS-BPEL, workflow instances are created implicitly when messages are received <receive> activities marked with “createinstance=true” Workflow client creates the Workflow-Instance-ID Different from Apache ODE internal process instance id Correlation between two ids in the first notification
  • 20. Variable Initializing WS-BPEL requires complex variables to be initialized before using or copying in to them Xbaya workflow composer automatically adds WS-BPEL logic for initialization steps using its domain knowledge Some engines initialize variables automatically But cannot be done accurately for all the cases without the domain knowledge
  • 21. Workflow Deployment No standard way of packaging and deploying WS-BPEL processes Xbaya workflow composer is designed to support many workflow engines Engine specific decoupled workflow proxy services Generic workflow description from XBaya to the proxy service Currently XBaya contains few ODE specific changes, which will be removed soon.
  • 22. Workflow Client BPEL 1.1 BPEL 2.0 SCUFL Abstract DAG Model Composition and Monitoring Python Dynamic Enactor/ Interpreter Jython Based Enactor GPEL Engine Apache ODE Engine Taverna Python Runtime Message Bus
  • 25. <for-each> for parametric studies Exploring a parameter space to identify or optimize a solution
  • 26. Workflow instance recovery Multi-level fault tolerance support in LEAD No need to use WS-BPEL exception handling WS-BPEL error recovery Vs Scientific workflows Only infrastructure failures are handled at the working engine level Hasthi monitoring infrastructure Performs corrective actions in the event of an infrastructure failure Recovery of infrastructure components Resurrects workflow instances by replaying input messages
  • 27. Performance & Reliability Evaluate the workflow system with regards to LEAD performance and scalability requirements Scalable back end service TPS >4000 Same configuration as LEAD production ODE
  • 30. Performance Comments Parallel speedup results More than factor of 4 speedup when 5 way parallelism is used with a long running service Notification overhead is smaller in complex workflows
  • 31. Experience Currently deployed in the LEAD production & development stacks More than 1000 workflow deployments Available open source in OGCE – Xbaya & the scientific workflow extensions Minimal changes to ODEas most of the requirements were implemented using auto generated WS-BPEL logic.
  • 33. Acknowledgement AleksanderSlominski and Satoshi Shirasuna for the foundation they laid. Prof. Dennis Gannon & Prof. Beth Plale for the mentoring SrinathPerera and LavanyaRamakrishnan for their direct and indirect constibutions. NSF funding for LEAD project and the NSF funding for OGCE
  • 35. Service Monitoring via Events 1 2 3 4 5 6 The service output is a stream of events I am running your request I have started to move your input files. I have all the files I am running your application. The application is finished I am moving the output to you file space I am done. These are automatically generated by the service using a distributed event system(WS-Eventing / WS-Notification) Topic based pub-sub system witha well known “channel”. Application Service Instance Notification Channel Subscribe Topic=x x x publisher listener

Notas do Editor

  1. Today I’m presenting a paper discussing our experience of adapting a WS-BPEL 2.0 run time for eScience workflows for an existing cyberinfrastructure. This work is done with my collegues C E & S and with the help of numerous others.
  2. As we live in the era of data deluge and vast computational power. Increasingly we can notice sceientist communities are solving deeper larger problems spanning across Scientific disciplines. But solving thses interconnected problems mandates the scientists to share and combine applications in a flxebile but yet planned manner and ocrchestrate them using workflows. There exist many scientific workflow systems that allow scientists to construct, execute, manage and resuse workflows. But a problem with most of these systems is that they use custom formats to describes the workflows, giving rise to interoperability issues and hindering the sharing and reuse of workflow documents. A solution to this is to adapt a standard workflow description language.
  3. WS-BPEL is a specification covering the composition and orchestration of business workflows using web services. BPEL supports many activities including…Scientific workflow requirements challenge WS-BPELAs I mentioned earlier in this paper we present the challenges we encountered when adapting WS-BPEL specifically for the LEAD project.
  4. Objectives of LEAD or Linked Env… is to better understand the atmosphere, educated about it and to forecast weather as an when it happens.LEAD has been used in NOAA .. Weather challenge, USDA for crop planning and as a educational tool.
  5. The workflow engine orchestrate the workflows and the DSC creates application services on demand using Gfac and the data stored in Xregistry. The service invocations by the workflow engine will eventualy get routed to the transient application services created by GFac., which will submit computational jobs the computational resources.
  6. GPEL was a success with wide usage of infrastructure in educational and research efforts.But LEAD graduating form a research system to production system and to reduce the maintainanceload, to suppoirt new features, to improve performance and scalability required us to adapt a externally maintained workflow engine.
  7. WS-BPEL 2.0 featuresensure sustainability by choosing a well supported run time with minimal custom changes;ensure portability & avoid locking in to a run time, by strictly adhering to open widely used standards as much as possible & by avoid using particular runtime specic features; minimize changes to the other legacy components of LEAD,improve the scalability & the performance.
  8. According to soap spec, header elements can be used to pass optional information that does not belong to the application payload, which can include context information required Unique identifiers used for tracking and monitoring perposes.EPRs such as Registry, GfacDSc, etc.. Confgi information to stage data, perform comput scheduling, etc..
  9. Earlier hard coded in to GPEL.. But we did not want to modify the workflow engines..Implemented using… WE use a often overlooked feature of WSDl, where it allows us to bind message parts to the SOAP header blocks.
  10. CompositionOrchestrationMonitoringADAG that gets compiled in to each execution environement as necessaryDynamic enactor – provide dynamic user interaction
  11. Interact with event streams – weather radars, telescopes, etcScientific workflows are static data input processes
  12. 4 notifications per each workflow40 threads keep invoking the workflow for given number of invocations
  13. Chose <for-each> because parallel & seqeuntial in one