SlideShare a Scribd company logo
1 of 29
Cloud to Cloud and 
Cloud to Enterprise Integration 
S.Uthaiyashankar 
VP Engineering 
WSO2 
shankar@wso2.com
Why Cloud Integration? 
• Many useful cloud services 
• Enterprises have started using SaaS for their needs 
Images from : http://www.sfdcstatic.com/common/assets/img/logo-company.png, http://www.mgitsol.com/wp-content/uploads/Google-Apps-Transparent.png, http://www.sunnysea-residence. 
com/img/facebook.png, http://aweebitirish.com/wp-content/uploads/2014/04/linkedin-transparent-background.png, http://www.justfreestuff.com/wp-content/ 
uploads/dropbox-300x300.png
Integration Scenarios 
• Cloud to Cloud 
• Cloud to Enterprise 
Images from : http://www.sfdcstatic.com/common/assets/img/logo-company.png, http://www.boldkiln.com/Images/tr/135.png, 
https://openclipart.org/detail/13272/-by--13272, http://hlgstudios.com/wp-content/uploads/2012/09/sap-logo.png
Challenges in Integration 
• Different protocols 
• Different message/data 
formats 
• Different APIs 
• Point to point integration 
mess 
Image: http://www.nyceestinoored.com/wp-content/uploads/2013/01/how-to-organize-cable.jpg
Cloud Integration Challenges 
• Enterprise applications should work with cloud applications 
• Cloud applications has their own data storage, user accounts 
– Relieve users from 
• Re-enter data to different applications 
• Re-enter their credentials 
• Cloud applications should abide by enterprise policies 
– Governance 
– Security 
– Provision/de-provision users in various applications 
• Overlapping functionalities of applications
iPaaS 
• Integration Platform as a Service 
• “…is a suite of cloud services enabling development, 
execution and governance of integration flows 
connecting any combination of on premises and 
cloud-based processes, services, applications and 
data within individual or across multiple 
organizations.” : Gartner Research 
http://www.gartner.com/it-glossary/information-platform-as-a-service-ipaas/
Characteristics of iPaaS 
• Integration Flows 
– Prepackaged 
– Custom developed 
• Integration Flow Marketplace 
– Collaboration 
– Self Service 
• Monitoring 
• Development & Lifecycle Management 
Reference : Gartner iPaaS Reference Model
Integration Flows 
• Connectors 
• Data Mapping & Transformations 
• Recipes 
• Dishes
Connectors 
• Connects to a specific cloud or enterprise application 
• Configuration driven 
• We have about 100 connectors upto now, and 
increasing 
– Can write your own custom connectors
Connector Catalog 
https://storepreview.wso2.com/store/assets/esbconnector
Data Mapping & Transformations 
• XSLT 
• XQuery 
• Smooks 
• Visual Data Mapping
Recipes 
• Providing high level abstractions for connector 
interactions 
• Commonly used integration scenarios between any 
publicly available services/APIs 
– E.g. Salesforce->Google spread sheet 
• Take data from Salesforce using connector 
• Do the data mapping / conversion 
• Push data to google spread sheet using a connector 
• Can have methods 
– E.g: syncContacts, syncLeads
<template name=”SyncLeads" xmlns=http://ws.apache.org/ns/synapse> 
<parameter name="googlespreadsheet.username"/> 
<parameter name="googlespreadsheet.password"/> 
<parameter name="googlespreadsheet.spreadsheetName"/> 
<parameter name="googlespreadsheet.worksheetName"/> 
<parameter name="googlespreadsheet.batchEnable"/> 
<parameter name="googlespreadsheet.batchSize"/> 
<parameter name="salesforce.username"/> 
<parameter name="salesforce.password"/> 
<parameter name="salesforce.batchSize"/> 
<sequence> 
<salesforce.init> 
<username>{get-property('func','salesforce.username')}</username> 
<password>{get-property('func','salesforce.password')}</password> 
<loginUrl>https://login.salesforce.com/services/Soap/u/27.0</loginUrl> 
</salesforce.init> 
<salesforce.query> 
<batchSize>{get-property('func','salesforce.batchSize')}</batchSize> 
<queryString>select id,name from Account</queryString> 
</salesforce.query> 
<xslt key="csvConverter2.xslt"/> 
<googlespreadsheet.usernameLogin> 
<username>{get-property('func','googlespreadsheet.username')}</username> 
<password>{get-property('func','googlespreadsheet.password')}</password> 
</googlespreadsheet.usernameLogin> 
<googlespreadsheet.importCSV> 
Convert Data 
<spreadsheetName>{get-property('func','googlespreadsheet.spreadsheetName')}</spreadsheetName> 
<worksheetName>{get-property('func','googlespreadsheet.worksheetName')}</worksheetName> 
<batchEnable>{get-property('func','googlespreadsheet.batchEnable')}</batchEnable> 
<batchSize>{get-property('func','googlespreadsheet.batchSize')}</batchSize> 
</googlespreadsheet.importCSV> 
</sequence> 
</template> 
Parameters 
Recipes 
Read Data 
Write Data
Recipes
Creating a Recipe 
• From scratch 
• Take an existing one and modify it 
• Take an existing ESB flow and make it as a recipe
Dishes 
• A user can prepare multiple dishes from single recipe 
– Different parameters 
– Different connector configurations 
• A dish will be triggered periodically to perform the 
operation
Dishes 
<task xmlns="http://ws.apache.org/ns/synapse" name="CarbonTask" 
class="org.wso2.carbon.recipeexecutor.RecipeMessageExecutor" group="synapse.simple.quartz"> 
<trigger count="1" interval="100"/> 
<property xmlns:task="http://www.wso2.org/products/wso2commons/tasks" name="recipeParams"> 
<salesforceGooglespreadsheet.syncContacts xmlns=""> 
<salesforce.username>xxxxxxxx</salesforce.username> 
<salesforce.password>xxxxxx</salesforce.password> 
<salesforce.batchSize>200</salesforce.batchSize> 
<googlespreadsheet.username>xxxx</googlespreadsheet.username> 
<googlespreadsheet.password>xxxxx</googlespreadsheet.password> 
<googlespreadsheet.spreadsheetName>RecipeDemo</googlespreadsheet.spreadsheetName> 
<googlespreadsheet.worksheetName>Recipe1</googlespreadsheet.worksheetName> 
<googlespreadsheet.batchEnable>true</googlespreadsheet.batchEnable> 
<googlespreadsheet.batchSize>10</googlespreadsheet.batchSize> 
</salesforceGooglespreadsheet.syncContacts> 
</property> 
<property xmlns:task="http://www.wso2.org/products/wso2commons/tasks" name="regKey" 
value="gov:/recipes/TestRecipe.xml"/> 
</task> 
Trigger 
Parameters
Dishes
Characteristics of iPaaS 
• Integration Flows 
– Prepackaged 
– Custom developed 
• Integration Flow Marketplace 
– Collaboration 
– Self Service 
• Monitoring 
• Development & Lifecycle Management 
Reference : Gartner iPaaS Reference Model
Integration Flow Marketplace 
• Connector Store • Recipe Store
Monitoring 
with WSO2 Business Activity Monitor & WSO2 Complex Event Processing
Development & Lifecycle Management
Development & Lifecycle Management
Other Technologies used in Integration 
• Stateful, long-lived processes 
– WSO2 Business Process Server 
– BPEL, BPMN 
• Messaging 
– WSO2 Message Broker 
– JMS, AMQP, MQTT
SSO and Identity Federation
Identity Provisioning
Cloud Gateway
Thank You

More Related Content

What's hot

iPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceiPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceRaveendra Babu Darsi
 
Web-Oriented Architecture (WOA)
Web-Oriented Architecture (WOA)Web-Oriented Architecture (WOA)
Web-Oriented Architecture (WOA)thetechnicalweb
 
The Future of Application integration
The Future of Application integrationThe Future of Application integration
The Future of Application integrationRichard Seroter
 
M2M Integration Platform as a Service iPaaS
M2M Integration Platform as a Service iPaaSM2M Integration Platform as a Service iPaaS
M2M Integration Platform as a Service iPaaSEurotech
 
The Evolution of Integration
The Evolution of IntegrationThe Evolution of Integration
The Evolution of IntegrationSoftware AG
 
The Role of Enterprise Integration in Digital Transformation
The Role of Enterprise Integration in Digital TransformationThe Role of Enterprise Integration in Digital Transformation
The Role of Enterprise Integration in Digital TransformationKasun Indrasiri
 
Microsoft Integration Roadmap 2015
Microsoft Integration Roadmap 2015Microsoft Integration Roadmap 2015
Microsoft Integration Roadmap 2015Daniel Toomey
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)WSO2
 
Sharepoint on-premise office365 and hybrid Pros, Cons and Comparison
Sharepoint on-premise office365 and hybrid Pros, Cons and ComparisonSharepoint on-premise office365 and hybrid Pros, Cons and Comparison
Sharepoint on-premise office365 and hybrid Pros, Cons and ComparisonFaisal Masood
 
Summer School 2013 - What is iPaaS and why it is important
Summer School 2013 - What is iPaaS and why it is importantSummer School 2013 - What is iPaaS and why it is important
Summer School 2013 - What is iPaaS and why it is importantWSO2
 
How to Use iPaaS to Scale Your Business - Case Study
How to Use iPaaS to Scale Your Business - Case StudyHow to Use iPaaS to Scale Your Business - Case Study
How to Use iPaaS to Scale Your Business - Case Studyelastic.io
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Kai Wähner
 
Streamline your SOA Portfolio
Streamline your SOA Portfolio Streamline your SOA Portfolio
Streamline your SOA Portfolio WSO2
 
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered Specie
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered SpecieESB Extinction: Why On-Premise Integration Platforms Are an Endangered Specie
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered SpecieFlowgear
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureJesus Rodriguez
 
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)Codit
 
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017elastic.io
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2
 
Need Of Enterprise Integration
Need Of Enterprise IntegrationNeed Of Enterprise Integration
Need Of Enterprise Integrationkumar gaurav
 

What's hot (20)

iPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceiPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergence
 
Web-Oriented Architecture (WOA)
Web-Oriented Architecture (WOA)Web-Oriented Architecture (WOA)
Web-Oriented Architecture (WOA)
 
The Future of Application integration
The Future of Application integrationThe Future of Application integration
The Future of Application integration
 
M2M Integration Platform as a Service iPaaS
M2M Integration Platform as a Service iPaaSM2M Integration Platform as a Service iPaaS
M2M Integration Platform as a Service iPaaS
 
The Evolution of Integration
The Evolution of IntegrationThe Evolution of Integration
The Evolution of Integration
 
The Role of Enterprise Integration in Digital Transformation
The Role of Enterprise Integration in Digital TransformationThe Role of Enterprise Integration in Digital Transformation
The Role of Enterprise Integration in Digital Transformation
 
Microsoft Integration Roadmap 2015
Microsoft Integration Roadmap 2015Microsoft Integration Roadmap 2015
Microsoft Integration Roadmap 2015
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
Sharepoint on-premise office365 and hybrid Pros, Cons and Comparison
Sharepoint on-premise office365 and hybrid Pros, Cons and ComparisonSharepoint on-premise office365 and hybrid Pros, Cons and Comparison
Sharepoint on-premise office365 and hybrid Pros, Cons and Comparison
 
Summer School 2013 - What is iPaaS and why it is important
Summer School 2013 - What is iPaaS and why it is importantSummer School 2013 - What is iPaaS and why it is important
Summer School 2013 - What is iPaaS and why it is important
 
How to Use iPaaS to Scale Your Business - Case Study
How to Use iPaaS to Scale Your Business - Case StudyHow to Use iPaaS to Scale Your Business - Case Study
How to Use iPaaS to Scale Your Business - Case Study
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
 
Streamline your SOA Portfolio
Streamline your SOA Portfolio Streamline your SOA Portfolio
Streamline your SOA Portfolio
 
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered Specie
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered SpecieESB Extinction: Why On-Premise Integration Platforms Are an Endangered Specie
ESB Extinction: Why On-Premise Integration Platforms Are an Endangered Specie
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference Architecture
 
Mule soft
Mule softMule soft
Mule soft
 
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)
Azure IPaaS: #IntegrationEvolved (Glenn Colpaert @ Codit's BizTalk 2016 Launch)
 
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017
Introducing elastic.io iPaaS: Best-of-Breed Integrations - New in 2017
 
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 IntegrationWSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
WSO2Con USA 2017: Implement an Effective Digital Platform Using WSO2 Integration
 
Need Of Enterprise Integration
Need Of Enterprise IntegrationNeed Of Enterprise Integration
Need Of Enterprise Integration
 

Similar to Cloud to Cloud and Cloud to Enterprise Integration - WSO2Con 2014 USA

AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAmazon Web Services
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxNCCOMMS
 
Oracle to Azure PostgreSQL database migration webinar
Oracle to Azure PostgreSQL database migration webinarOracle to Azure PostgreSQL database migration webinar
Oracle to Azure PostgreSQL database migration webinarMinnie Seungmin Cho
 
Building a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosBuilding a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosWSO2
 
Who's in your Cloud? Cloud State Monitoring
Who's in your Cloud? Cloud State MonitoringWho's in your Cloud? Cloud State Monitoring
Who's in your Cloud? Cloud State MonitoringKevin Hakanson
 
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014Amazon Web Services
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
Building cloud native data microservice
Building cloud native data microserviceBuilding cloud native data microservice
Building cloud native data microserviceNilanjan Roy
 
Website optimization with request reduce
Website optimization with request reduceWebsite optimization with request reduce
Website optimization with request reduceMatt Wrock
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Jeremy Likness
 
Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Ankit Gupta
 
SplunkLive! Advanced Session
SplunkLive! Advanced SessionSplunkLive! Advanced Session
SplunkLive! Advanced SessionSplunk
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Timothy Fisher
 
SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015Pushkar Chivate
 
Datasheet was pluginforrd
Datasheet was pluginforrdDatasheet was pluginforrd
Datasheet was pluginforrdMidVision
 
Alex mang patterns for scalability in microsoft azure application
Alex mang   patterns for scalability in microsoft azure applicationAlex mang   patterns for scalability in microsoft azure application
Alex mang patterns for scalability in microsoft azure applicationCodecamp Romania
 
T3 - Deploy, manage, and scale your apps
T3 - Deploy, manage, and scale your appsT3 - Deploy, manage, and scale your apps
T3 - Deploy, manage, and scale your appsAmazon Web Services
 

Similar to Cloud to Cloud and Cloud to Enterprise Integration - WSO2Con 2014 USA (20)

Salesforce Performance hacks - Client Side
Salesforce Performance hacks - Client SideSalesforce Performance hacks - Client Side
Salesforce Performance hacks - Client Side
 
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWSAWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
AWS Summit Stockholm 2014 – T5 – Deploy, manage and scale applications on AWS
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
 
Oracle to Azure PostgreSQL database migration webinar
Oracle to Azure PostgreSQL database migration webinarOracle to Azure PostgreSQL database migration webinar
Oracle to Azure PostgreSQL database migration webinar
 
Building a SaaS using WSO2 Stratos
Building a SaaS using WSO2 StratosBuilding a SaaS using WSO2 Stratos
Building a SaaS using WSO2 Stratos
 
Who's in your Cloud? Cloud State Monitoring
Who's in your Cloud? Cloud State MonitoringWho's in your Cloud? Cloud State Monitoring
Who's in your Cloud? Cloud State Monitoring
 
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Building cloud native data microservice
Building cloud native data microserviceBuilding cloud native data microservice
Building cloud native data microservice
 
Website optimization with request reduce
Website optimization with request reduceWebsite optimization with request reduce
Website optimization with request reduce
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
 
Week 4 lecture material cc (1)
Week 4 lecture material cc (1)Week 4 lecture material cc (1)
Week 4 lecture material cc (1)
 
SplunkLive! Advanced Session
SplunkLive! Advanced SessionSplunkLive! Advanced Session
SplunkLive! Advanced Session
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
 
Azure App Services
Azure App ServicesAzure App Services
Azure App Services
 
SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015SharePoint Saturday Atlanta 2015
SharePoint Saturday Atlanta 2015
 
Datasheet was pluginforrd
Datasheet was pluginforrdDatasheet was pluginforrd
Datasheet was pluginforrd
 
Alex mang patterns for scalability in microsoft azure application
Alex mang   patterns for scalability in microsoft azure applicationAlex mang   patterns for scalability in microsoft azure application
Alex mang patterns for scalability in microsoft azure application
 
T3 - Deploy, manage, and scale your apps
T3 - Deploy, manage, and scale your appsT3 - Deploy, manage, and scale your apps
T3 - Deploy, manage, and scale your apps
 
Evolve18 | Ameeth Palla | Optimizing Your Assets Implementation
Evolve18 | Ameeth Palla | Optimizing Your Assets ImplementationEvolve18 | Ameeth Palla | Optimizing Your Assets Implementation
Evolve18 | Ameeth Palla | Optimizing Your Assets Implementation
 

Recently uploaded

Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 

Recently uploaded (20)

Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

Cloud to Cloud and Cloud to Enterprise Integration - WSO2Con 2014 USA

  • 1. Cloud to Cloud and Cloud to Enterprise Integration S.Uthaiyashankar VP Engineering WSO2 shankar@wso2.com
  • 2. Why Cloud Integration? • Many useful cloud services • Enterprises have started using SaaS for their needs Images from : http://www.sfdcstatic.com/common/assets/img/logo-company.png, http://www.mgitsol.com/wp-content/uploads/Google-Apps-Transparent.png, http://www.sunnysea-residence. com/img/facebook.png, http://aweebitirish.com/wp-content/uploads/2014/04/linkedin-transparent-background.png, http://www.justfreestuff.com/wp-content/ uploads/dropbox-300x300.png
  • 3. Integration Scenarios • Cloud to Cloud • Cloud to Enterprise Images from : http://www.sfdcstatic.com/common/assets/img/logo-company.png, http://www.boldkiln.com/Images/tr/135.png, https://openclipart.org/detail/13272/-by--13272, http://hlgstudios.com/wp-content/uploads/2012/09/sap-logo.png
  • 4. Challenges in Integration • Different protocols • Different message/data formats • Different APIs • Point to point integration mess Image: http://www.nyceestinoored.com/wp-content/uploads/2013/01/how-to-organize-cable.jpg
  • 5. Cloud Integration Challenges • Enterprise applications should work with cloud applications • Cloud applications has their own data storage, user accounts – Relieve users from • Re-enter data to different applications • Re-enter their credentials • Cloud applications should abide by enterprise policies – Governance – Security – Provision/de-provision users in various applications • Overlapping functionalities of applications
  • 6. iPaaS • Integration Platform as a Service • “…is a suite of cloud services enabling development, execution and governance of integration flows connecting any combination of on premises and cloud-based processes, services, applications and data within individual or across multiple organizations.” : Gartner Research http://www.gartner.com/it-glossary/information-platform-as-a-service-ipaas/
  • 7.
  • 8. Characteristics of iPaaS • Integration Flows – Prepackaged – Custom developed • Integration Flow Marketplace – Collaboration – Self Service • Monitoring • Development & Lifecycle Management Reference : Gartner iPaaS Reference Model
  • 9. Integration Flows • Connectors • Data Mapping & Transformations • Recipes • Dishes
  • 10. Connectors • Connects to a specific cloud or enterprise application • Configuration driven • We have about 100 connectors upto now, and increasing – Can write your own custom connectors
  • 12. Data Mapping & Transformations • XSLT • XQuery • Smooks • Visual Data Mapping
  • 13. Recipes • Providing high level abstractions for connector interactions • Commonly used integration scenarios between any publicly available services/APIs – E.g. Salesforce->Google spread sheet • Take data from Salesforce using connector • Do the data mapping / conversion • Push data to google spread sheet using a connector • Can have methods – E.g: syncContacts, syncLeads
  • 14. <template name=”SyncLeads" xmlns=http://ws.apache.org/ns/synapse> <parameter name="googlespreadsheet.username"/> <parameter name="googlespreadsheet.password"/> <parameter name="googlespreadsheet.spreadsheetName"/> <parameter name="googlespreadsheet.worksheetName"/> <parameter name="googlespreadsheet.batchEnable"/> <parameter name="googlespreadsheet.batchSize"/> <parameter name="salesforce.username"/> <parameter name="salesforce.password"/> <parameter name="salesforce.batchSize"/> <sequence> <salesforce.init> <username>{get-property('func','salesforce.username')}</username> <password>{get-property('func','salesforce.password')}</password> <loginUrl>https://login.salesforce.com/services/Soap/u/27.0</loginUrl> </salesforce.init> <salesforce.query> <batchSize>{get-property('func','salesforce.batchSize')}</batchSize> <queryString>select id,name from Account</queryString> </salesforce.query> <xslt key="csvConverter2.xslt"/> <googlespreadsheet.usernameLogin> <username>{get-property('func','googlespreadsheet.username')}</username> <password>{get-property('func','googlespreadsheet.password')}</password> </googlespreadsheet.usernameLogin> <googlespreadsheet.importCSV> Convert Data <spreadsheetName>{get-property('func','googlespreadsheet.spreadsheetName')}</spreadsheetName> <worksheetName>{get-property('func','googlespreadsheet.worksheetName')}</worksheetName> <batchEnable>{get-property('func','googlespreadsheet.batchEnable')}</batchEnable> <batchSize>{get-property('func','googlespreadsheet.batchSize')}</batchSize> </googlespreadsheet.importCSV> </sequence> </template> Parameters Recipes Read Data Write Data
  • 16. Creating a Recipe • From scratch • Take an existing one and modify it • Take an existing ESB flow and make it as a recipe
  • 17. Dishes • A user can prepare multiple dishes from single recipe – Different parameters – Different connector configurations • A dish will be triggered periodically to perform the operation
  • 18. Dishes <task xmlns="http://ws.apache.org/ns/synapse" name="CarbonTask" class="org.wso2.carbon.recipeexecutor.RecipeMessageExecutor" group="synapse.simple.quartz"> <trigger count="1" interval="100"/> <property xmlns:task="http://www.wso2.org/products/wso2commons/tasks" name="recipeParams"> <salesforceGooglespreadsheet.syncContacts xmlns=""> <salesforce.username>xxxxxxxx</salesforce.username> <salesforce.password>xxxxxx</salesforce.password> <salesforce.batchSize>200</salesforce.batchSize> <googlespreadsheet.username>xxxx</googlespreadsheet.username> <googlespreadsheet.password>xxxxx</googlespreadsheet.password> <googlespreadsheet.spreadsheetName>RecipeDemo</googlespreadsheet.spreadsheetName> <googlespreadsheet.worksheetName>Recipe1</googlespreadsheet.worksheetName> <googlespreadsheet.batchEnable>true</googlespreadsheet.batchEnable> <googlespreadsheet.batchSize>10</googlespreadsheet.batchSize> </salesforceGooglespreadsheet.syncContacts> </property> <property xmlns:task="http://www.wso2.org/products/wso2commons/tasks" name="regKey" value="gov:/recipes/TestRecipe.xml"/> </task> Trigger Parameters
  • 20. Characteristics of iPaaS • Integration Flows – Prepackaged – Custom developed • Integration Flow Marketplace – Collaboration – Self Service • Monitoring • Development & Lifecycle Management Reference : Gartner iPaaS Reference Model
  • 21. Integration Flow Marketplace • Connector Store • Recipe Store
  • 22. Monitoring with WSO2 Business Activity Monitor & WSO2 Complex Event Processing
  • 25. Other Technologies used in Integration • Stateful, long-lived processes – WSO2 Business Process Server – BPEL, BPMN • Messaging – WSO2 Message Broker – JMS, AMQP, MQTT
  • 26. SSO and Identity Federation