SlideShare a Scribd company logo
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Alternatives for Systems Integration
in the NoSQL Era
Kai Wähner
kwaehner@talend.com
@KaiWaehner
www.kai-waehner.de
9/16/2013
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Kai Wähner
Consulting
Developing
Coaching
Speaking
Writing
Main Tasks
Requirements Engineering
Enterprise Architecture Management
Business Process Management
Architecture and Development of Applications
Service-oriented Architecture
Integration of Legacy Applications
Cloud Computing
Big Data
Contact
Email: kwaehner@talend.com
Blog: www.kai-waehner.de/blog
Twitter: @KaiWaehner
Social Networks: Xing, LinkedIn
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
What is the key message?
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Key messages
NoSQL cannot be avoided, and must be integrated!
NoSQL integration is already possible!
Different APIs, Frameworks and Products helps a lot!
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
7) Custom Connectors
Live Demos
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
The evolving database landscape
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
NoSQL
Big Data
Cloud
Complementary concepts
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
A new era: NoSQL
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
➜„Spaghetti communication“
What is the problem?
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
What is the problem?
• Applications
• Interfaces
• Technologies
• Products
Growth
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Solution: Systems integration
All Roads lead
to Rome ...
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Wishes for integrators
• Standardized Modeling
• Efficient Realization
• Automatic Testing
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Systems integration in the NoSQL era
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Complexity
of Integration
Enterprise
Service Bus
Integration Suite
Low High
Integration
Framework
IncludesIncludes
Alternatives for Systems Integration
API
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Complexity
of Integration
Enterprise
Service Bus
Integration Suite
Low High
Integration
Framework
IncludesIncludes
Alternatives for Systems Integration
API
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Alternatives for Systems Integration
API
• Proprietary API
• Vendor API
• Generic API
• Web Service Interface
• REST Web Service
• SOAP Web Service
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
APIs
➜ Vendor APIs
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Example: Amazon AWS S3 Key Value Store (Java API)
AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials(
S3Sample.class.getResourceAsStream("AwsCredentials.properties")));
String bucketName = "my-first-s3-bucket-" + UUID.randomUUID();
String key = "MyObjectKey";
try {
s3.createBucket(bucketName);
s3.putObject(new PutObjectRequest(bucketName, key, createSampleFile()));
S3Object object = s3.getObject(new GetObjectRequest(bucketName, key));
ObjectListing objectListing = s3.listObjects(new ListObjectsRequest()
.withBucketName(bucketName)
.withPrefix("My"));
s3.deleteObject(bucketName, key);
s3.deleteBucket(bucketName);
} catch (AmazonServiceException ase) {
// error handling...
} catch (AmazonClientException ace) {
// error handling...
}
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Example: Amazon AWS S3 Key Value Store (Ruby API)
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
APIs
➜ Generic Storage APIs
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
jClouds (Generic API)
Generic API for IaaS
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
jClouds (Generic API)
Blobstore API
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
jClouds (Generic API)
Several different
NoSQL providers
supported
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
jClouds (Generic API) – AWS S3 Blobstore (Java)
Use another blobstore?
Just change this line!
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
APIs
➜ Generic NoSQL specific APIs
Kundera
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
EclipseLink (JPA) NoSQL Support
http://wiki.eclipse.org/EclipseLink/Examples/JPA/NoSQL
As of EclipseLink 2.4, EclipseLink has added JPA support for NoSQL databases, initially
with support for MongoDB and Oracle NoSQL.
EclipseLink's NoSQL support allows the JPA API and JPA annotations/xml to be used with
NoSQL data. EclipseLink also supports several NoSQL specific annotations/xml including
@NoSQL that defines a class to map NoSQL data.
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Hibernate OGM (Object/Grid Mapper)
http://www.hibernate.org/subprojects/ogm.html
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Kundera
https://github.com/impetus-opensource/Kundera
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
APIs
➜ REST / SOAP APIs
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
SaaS – Salesforce (REST API)
• SOAP
• REST
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
SaaS – Salesforce (REST API)
• SOAP
• REST
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Complexity
of Integration
Enterprise
Service Bus
Integration Suite
Low High
Integration
Framework
INTEGRATION
Connectivity
Routing
Transformation
Alternatives for Systems Integration
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Integration
Integration Frameworks
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Enterprise Integration Patterns
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Enterprise Integration Patterns
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Standalone
Application
Server
Web Container
Cloud
Spring
Container
Deployment
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials(
S3Sample.class.getResourceAsStream("AwsCredentials.properties")));
String bucketName = "my-first-s3-bucket-" + UUID.randomUUID();
String key = "MyObjectKey";
try {
s3.createBucket(bucketName);
s3.putObject(new PutObjectRequest(bucketName, key, createSampleFile()));
S3Object object = s3.getObject(new GetObjectRequest(bucketName, key));
ObjectListing objectListing = s3.listObjects(new ListObjectsRequest()
.withBucketName(bucketName)
.withPrefix("My"));
s3.deleteObject(bucketName, key);
s3.deleteBucket(bucketName);
} catch (AmazonServiceException ase) {
// error handling...
} catch (AmazonClientException ace) {
// error handling...
}
No longer „glue code“
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
// Producer
from(“ftp:toS3")
.setHeader(S3Constants.KEY, simple(“order.txt"))
.to("aws-s3://myBucket?accessKey=" + a+ "&secretKey= " + s)
// Consumer
from(„salesforce://orders__c?user=dummy1“)
.filter(„attributeType==‚dvd‘“)
.to(“ibm-database:orderData")
Domain Specific Language (Camel)
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
NoSQL with an Integration Framework
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Document-oriented database
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Document-oriented database
• 10gen
• stores structured data as JSON-like
documents with dynamic schemas
• REST API and several SDKs (Java, .NET, Ruby,
PHP, Python, etc.)
• Ad hoc queries, indexing, replication, load
balancing
• Powerful, but also easy to use and flexible
• Example: Disney persists state information of
online games in a common object repository.
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: MongoDB Java Driver
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-mongodb component
// Producer
from(“jms:FlightDocumentQueue")
.to("mongodb:myDb?database=flights
&collection=tickets
&operation=insert");
// Consumer
from("mongodb:myDb?database=flights
&collection=cancellations
&tailTrackIncreasingField=departureTime")
.to(“jms:CancelledFlightsQueue");
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Live demo
Integration of NoSQL with an integration framework in action...
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Some more...
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Key-Value database
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-aws component
// Producer
from(„jms:toS3Queue")
.setHeader(S3Constants.KEY, simple(“order.txt"))
.to("aws-s3://myBucket?accessKey=" + a + "&secretKey= " + s)
// Consumer
from("aws-s3://myBucket?accessKey=“ + a + "&secretKey=" + s)
.to("log:S3logging")
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-jclouds component
from("direct:toJcloudsAwsS3")
.setHeader(JcloudsConstants.BLOB_NAME, "jclouds-demo-tutorial.txt")
.setHeader(JcloudsConstants.CONTAINER_NAME, "kw-s3-data")
.to("jclouds:blobstore:aws-s3")
from("direct:toJcloudsMicrosoftAzure")
.setHeader(JcloudsConstants.BLOB_NAME, "jclouds-demo-tutorial.txt")
.setHeader(JcloudsConstants.CONTAINER_NAME, "kw-s3-data")
.to("jclouds:blobstore:azureblob")
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
In-memory database
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-hazelcast component
// Producer
from("direct:add")
.setHeader(HazelcastConstants.OPERATION, „add“)
.to("hazelcast:queue:foo");
// Consumer
from("hazelcast:queue:foo")
.log(“content of object foo: ${body}");
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Graph-oriented database
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-neo4j component
// Producer
from("jms:createNewNeo4jNode")
.to("neo4j:http://Neo4jServer:7474/data");
// Consumer
from(„neo4j://todo)...
Not implemented in current Camel release (2.12)  Maybe 2.13?
 Use Camel‘s REST Connectors (shown in some minutes...)
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Column-oriented database
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: camel-hbase component
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enterprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Connectivity
Routing
Transformation
INTEGRATION
Tooling
Monitoring
Support
Complexity
of Integration
Enterprise
Service Bus
Integration Suite
Low High
Integration
Framework
+
What is an Enterprise Service Bus (ESB)?
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Many important players ...
Gartner Quadrant 2013 for Application Integration
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Oracle Service Bus
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Three IBM ESBs
 Rebranded: WebSphere Integration Bus
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Mule ESB
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Talend ESB
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Three ESBs (JBoss ESB, Switchyard, Fuse ESB)
Two BPMs (jBPM, Polymita)
No unified platform (yet)
Red Hat / JBoss
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
NoSQL with an Enterprise Service Bus
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Example: Talend ESB
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
TalendAdministrationCenter
TalendESBStudio
TalendESB
Service Development
Mediation &
Integration
Testing
Build & Deploy
Performance &
Availability
Web Services Stack
Mediation &
Integration
Message Broker
Service Container
Loadbalancing & High
Availability
Security
Business Rules
Management
Development Runtime Operation
Documentation & Examples
Professional Services Certified Partners
Training & Certification24x7 Support Indemnification
Maintenance
Project
Repository
Configuration
Deployment
Repository
Example: Talend ESB
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Example: Talend ESB
Eclipse STP/WTP
soapUI
Route Designer
Mediation
Service Designer
Integration
Apache Maven
Build & Deploy
Apache CXF
REST & Web Services
Apache Camel
Mediation
Apache ActiveMQ
Message Broker
Apache Karaf / Cellar
OSGi / Clustering
Eclipse Equinox
OSGi
Service Locator &
Service Act.
Monitoring
Distributed Registry / Tracking
Secure Token Server
Security
Service Activity Monitoring
and Service Locator UI
Management,
Configuration &
Monitoring
Repository
Metadata & Projects
Development Runtime Operation
Documentation & Examples
vFabric
Hyperic HQ
Apache Archiva
Artifact repository
TalendESBStudio
TalendESBRuntime
TalendAdministrationCenter
Professional Services Certified Partners
Training & Certification24x7 Support Indemnification
Maintenance
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Route Builder
 Endpoints
 EIPs
 Processors
 Custom Connectors
Configuration
 Connectors
 Endpoints
Code Generation
 100% Java
 Camel Code
 Packaged as OSGi
Bundles
Execution in the IDE
 Debugging
 Live statistics
 Short dev cycles
Example: Talend ESB Studio
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Live demo
Integration of NoSQL with an Enterprise Service Bus in action...
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
4) Enteprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Connectivity
Routing
Transformation
Complexity
of Integration
Enterprise
Service Bus
Integration Suite
Low High
Integration
Framework
INTEGRATION
Tooling
Monitoring
Support
+
BUSINESS PROCESS MGT.
BIG DATA / MDM
REGISTRY / REPOSITORY
RULES ENGINE
„YOU NAME IT“
+
What is an Integration Suite?
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Oracle Platform
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
IBM WebSphere Stack
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
WSO2 Carbon Platform
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Data
Quality
Data
Integration
MDM ESB
Big
Data
Big Data
 Open source license
 Free of charge
 Optional support
 Based on open source
projects such as
Eclipse or Apache
Camel, CXF, Hadoop
 Commercial license
 Subscription model
 Support included
Data
Quality
Data
Integration MDM ESB BPM
Talend Unified Platform
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Integration of NoSQL with an integration suite in Action...
Live Demo
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Open Source
Proprietary
ESB Vendor == Integration Suite Vendor
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
ESB BPM Data Quality
ESB Vendor == Integration Suite Vendor
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
• A lot of glue code
• Testing
• Bugfixing
• No support
Some other people already had
the problems you would have!
Custom Combination of ESB, BPM, etc.
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Agenda
1) Introduction to NoSQL
2) Systems Integration
3) API
4) Integration Framework
5) Enteprise Service Bus
6) Integration Suite
7) Custom Connectors
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Custom NoSQL Connectors
Easy to realize for all
integration alternatives *
• Integration Framework
• Enterprise Service Bus
• Integration Suite
* At least for open source solutions
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Live demo (Example Salesforce Connector)
Custom NoSQL Connectors in action...
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Alternative for custom NoSQL Connectors
• SOAP
• REST
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Code example: REST API for Salesforce object store
// Salesforce Query (SOQL) via REST API
from("direct:salesforceViaHttpLIST")
.setHeader("X-PrettyPrint", 1)
.setHeader("Authorization", accessToken)
.setHeader(Exchange.CONTENT_TYPE, "application/json")
.to("https://na14.salesforce.com/services/data/v20.0/query?q=SELECT+name+from
+Article__c")
// Salesforce CREATE via REST API
from("direct:salesforceViaHttpCREATE")
.setHeader("X-PrettyPrint", 1)
.setHeader("Authorization", accessToken)
.setHeader(Exchange.CONTENT_TYPE, "application/json“)
.to("https://na14.salesforce.com/services/data/v20.0/sobjects/Article__c")
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Did you get the key message?
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Key messages
NoSQL cannot be avoided, and must be integrated!
NoSQL integration is already possible!
Different APIs, Frameworks and Products helps a lot!
© Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner
Did you get the key message?
Thank you for your attention. Questions?
kwaehner@talend.com
www.kai-waehner.de
LinkedIn / Xing
@KaiWaehner

More Related Content

PDF
Systems Integration in the NoSQL Era with Apache Camel (Neo4j, CouchDB, AWS S...
PPT
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
PDF
JBoss OneDayTalk 2013: "NoSQL Integration with Apache Camel - MongoDB, CouchD...
PPTX
IntelliMedia Netwoks Services
PPTX
An Introduction to Talend Integration Cloud
PPTX
RightScale Webinar: Best Practices: Software Development Strategies Using Win...
PPTX
Oracle Integration Cloud Service (ICS) best practices learned from the field
PPTX
Migrating Traditional Apps from On-Premises to the Hybrid Cloud
Systems Integration in the NoSQL Era with Apache Camel (Neo4j, CouchDB, AWS S...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
JBoss OneDayTalk 2013: "NoSQL Integration with Apache Camel - MongoDB, CouchD...
IntelliMedia Netwoks Services
An Introduction to Talend Integration Cloud
RightScale Webinar: Best Practices: Software Development Strategies Using Win...
Oracle Integration Cloud Service (ICS) best practices learned from the field
Migrating Traditional Apps from On-Premises to the Hybrid Cloud

What's hot (7)

PPTX
Introducing the SnapLogic Integration Cloud
PDF
Arquitetando soluções de computação em nuvem com Java
PPTX
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
PDF
Using XA for Batch – Bad idea? (article)
PDF
A Multi-Company Perspective: Enterprise Cloud and PaaS
PDF
Trivadis TechEvent 2016 How to transform a complex web application into a mob...
PPTX
Cloud Made Easy - August 2017
Introducing the SnapLogic Integration Cloud
Arquitetando soluções de computação em nuvem com Java
Oracle ICS Best Practises - 1st Presented at Oracle Partner PaaS Forum by Phi...
Using XA for Batch – Bad idea? (article)
A Multi-Company Perspective: Enterprise Cloud and PaaS
Trivadis TechEvent 2016 How to transform a complex web application into a mob...
Cloud Made Easy - August 2017
Ad

Viewers also liked (7)

PDF
Social Web: (Big) Data Mining | summer 2014/2015 course syllabus
PPTX
A Brief History of Big Data
PPTX
What is big data?
PPTX
What is Big Data?
PPTX
Big Data Analytics with Hadoop
PPTX
Big data ppt
PPTX
Big Data - 25 Amazing Facts Everyone Should Know
Social Web: (Big) Data Mining | summer 2014/2015 course syllabus
A Brief History of Big Data
What is big data?
What is Big Data?
Big Data Analytics with Hadoop
Big data ppt
Big Data - 25 Amazing Facts Everyone Should Know
Ad

Similar to Alternatives for Systems Integration in the NoSQL Era - NoSQL Roadshow 2013 (20)

PPTX
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
PPTX
Cloud Computing Principles and Paradigms: 3 enriching the integration as a se...
PDF
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
PDF
2012 05 confess_camel_cloud_integration
PPTX
Soaring through the Clouds - World Record Oracle PaaS Cloud - Friday Cloud Up...
PPTX
NoSQL Endgame Percona Live Online 2020
PPT
Spring Integration
PDF
Rapidly Evolving IT Trends Make Open, Agile Integration More Important than Ever
PPTX
NoSQL Endgame DevoxxUA Conference 2020
PPT
Cloud State of the Union for Java Developers
PDF
BPM and SOA Are Going Mobile: An Architectural Perspective
PPTX
The Future of Application integration
PPTX
Future of integration
PPTX
NoSQL Endgame JCON Conference 2020
PPTX
Lviv EDGE 2 - NoSQL
PDF
Nuxeo JavaOne 2007
PPTX
Modern application development with oracle cloud sangam17
PDF
Dzr guide to_enterprise_integration
KEY
Why we chose mongodb for guardian.co.uk
PDF
SoC Keynote:The State of the Art in Integration Technology
Changing Views on Integration (AUSOUG Webinar Series, May 2020)
Cloud Computing Principles and Paradigms: 3 enriching the integration as a se...
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
2012 05 confess_camel_cloud_integration
Soaring through the Clouds - World Record Oracle PaaS Cloud - Friday Cloud Up...
NoSQL Endgame Percona Live Online 2020
Spring Integration
Rapidly Evolving IT Trends Make Open, Agile Integration More Important than Ever
NoSQL Endgame DevoxxUA Conference 2020
Cloud State of the Union for Java Developers
BPM and SOA Are Going Mobile: An Architectural Perspective
The Future of Application integration
Future of integration
NoSQL Endgame JCON Conference 2020
Lviv EDGE 2 - NoSQL
Nuxeo JavaOne 2007
Modern application development with oracle cloud sangam17
Dzr guide to_enterprise_integration
Why we chose mongodb for guardian.co.uk
SoC Keynote:The State of the Art in Integration Technology

More from Kai Wähner (20)

PDF
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
PDF
When NOT to use Apache Kafka?
PDF
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
PDF
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
PDF
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
PDF
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
PDF
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
PDF
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
PDF
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
PDF
Apache Kafka in the Healthcare Industry
PDF
Apache Kafka in the Healthcare Industry
PDF
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
PDF
Kafka for Real-Time Replication between Edge and Hybrid Cloud
PDF
Apache Kafka for Predictive Maintenance in Industrial IoT / Industry 4.0
PDF
Apache Kafka Landscape for Automotive and Manufacturing
PDF
Kappa vs Lambda Architectures and Technology Comparison
PPTX
The Top 5 Apache Kafka Use Cases and Architectures in 2022
PDF
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
PDF
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
PDF
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...
Apache Kafka as Data Hub for Crypto, NFT, Metaverse (Beyond the Buzz!)
When NOT to use Apache Kafka?
Kafka for Live Commerce to Transform the Retail and Shopping Metaverse
The Heart of the Data Mesh Beats in Real-Time with Apache Kafka
Apache Kafka vs. Cloud-native iPaaS Integration Platform Middleware
Data Warehouse vs. Data Lake vs. Data Streaming – Friends, Enemies, Frenemies?
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Resilient Real-time Data Streaming across the Edge and Hybrid Cloud with Apac...
Data Streaming with Apache Kafka in the Defence and Cybersecurity Industry
Apache Kafka in the Healthcare Industry
Apache Kafka in the Healthcare Industry
Apache Kafka for Real-time Supply Chain in the Food and Retail Industry
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Apache Kafka for Predictive Maintenance in Industrial IoT / Industry 4.0
Apache Kafka Landscape for Automotive and Manufacturing
Kappa vs Lambda Architectures and Technology Comparison
The Top 5 Apache Kafka Use Cases and Architectures in 2022
Event Streaming CTO Roundtable for Cloud-native Kafka Architectures
Apache Kafka in the Public Sector (Government, National Security, Citizen Ser...
Telco 4.0 - Payment and FinServ Integration for Data in Motion with 5G and Ap...

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
cuic standard and advanced reporting.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Building Integrated photovoltaic BIPV_UPV.pdf
Empathic Computing: Creating Shared Understanding
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
cuic standard and advanced reporting.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
20250228 LYD VKU AI Blended-Learning.pptx
A Presentation on Artificial Intelligence
Network Security Unit 5.pdf for BCA BBA.
Advanced methodologies resolving dimensionality complications for autism neur...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Encapsulation_ Review paper, used for researhc scholars
NewMind AI Monthly Chronicles - July 2025
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx

Alternatives for Systems Integration in the NoSQL Era - NoSQL Roadshow 2013

  • 1. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Alternatives for Systems Integration in the NoSQL Era Kai Wähner kwaehner@talend.com @KaiWaehner www.kai-waehner.de 9/16/2013
  • 2. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Kai Wähner Consulting Developing Coaching Speaking Writing Main Tasks Requirements Engineering Enterprise Architecture Management Business Process Management Architecture and Development of Applications Service-oriented Architecture Integration of Legacy Applications Cloud Computing Big Data Contact Email: kwaehner@talend.com Blog: www.kai-waehner.de/blog Twitter: @KaiWaehner Social Networks: Xing, LinkedIn
  • 3. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner What is the key message?
  • 4. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Key messages NoSQL cannot be avoided, and must be integrated! NoSQL integration is already possible! Different APIs, Frameworks and Products helps a lot!
  • 5. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite 7) Custom Connectors Live Demos
  • 6. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 7. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner The evolving database landscape
  • 8. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner NoSQL Big Data Cloud Complementary concepts
  • 9. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite
  • 10. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner A new era: NoSQL
  • 11. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner ➜„Spaghetti communication“ What is the problem?
  • 12. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner What is the problem? • Applications • Interfaces • Technologies • Products Growth
  • 13. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Solution: Systems integration All Roads lead to Rome ...
  • 14. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Wishes for integrators • Standardized Modeling • Efficient Realization • Automatic Testing
  • 15. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Systems integration in the NoSQL era
  • 16. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Complexity of Integration Enterprise Service Bus Integration Suite Low High Integration Framework IncludesIncludes Alternatives for Systems Integration API
  • 17. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 18. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Complexity of Integration Enterprise Service Bus Integration Suite Low High Integration Framework IncludesIncludes Alternatives for Systems Integration API
  • 19. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Alternatives for Systems Integration API • Proprietary API • Vendor API • Generic API • Web Service Interface • REST Web Service • SOAP Web Service
  • 20. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner APIs ➜ Vendor APIs
  • 21. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Example: Amazon AWS S3 Key Value Store (Java API) AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials( S3Sample.class.getResourceAsStream("AwsCredentials.properties"))); String bucketName = "my-first-s3-bucket-" + UUID.randomUUID(); String key = "MyObjectKey"; try { s3.createBucket(bucketName); s3.putObject(new PutObjectRequest(bucketName, key, createSampleFile())); S3Object object = s3.getObject(new GetObjectRequest(bucketName, key)); ObjectListing objectListing = s3.listObjects(new ListObjectsRequest() .withBucketName(bucketName) .withPrefix("My")); s3.deleteObject(bucketName, key); s3.deleteBucket(bucketName); } catch (AmazonServiceException ase) { // error handling... } catch (AmazonClientException ace) { // error handling... }
  • 22. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Example: Amazon AWS S3 Key Value Store (Ruby API)
  • 23. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner APIs ➜ Generic Storage APIs
  • 24. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner jClouds (Generic API) Generic API for IaaS
  • 25. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner jClouds (Generic API) Blobstore API
  • 26. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner jClouds (Generic API) Several different NoSQL providers supported
  • 27. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner jClouds (Generic API) – AWS S3 Blobstore (Java) Use another blobstore? Just change this line!
  • 28. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner APIs ➜ Generic NoSQL specific APIs Kundera
  • 29. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner EclipseLink (JPA) NoSQL Support http://wiki.eclipse.org/EclipseLink/Examples/JPA/NoSQL As of EclipseLink 2.4, EclipseLink has added JPA support for NoSQL databases, initially with support for MongoDB and Oracle NoSQL. EclipseLink's NoSQL support allows the JPA API and JPA annotations/xml to be used with NoSQL data. EclipseLink also supports several NoSQL specific annotations/xml including @NoSQL that defines a class to map NoSQL data.
  • 30. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Hibernate OGM (Object/Grid Mapper) http://www.hibernate.org/subprojects/ogm.html
  • 31. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Kundera https://github.com/impetus-opensource/Kundera
  • 32. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner APIs ➜ REST / SOAP APIs
  • 33. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner SaaS – Salesforce (REST API) • SOAP • REST
  • 34. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner SaaS – Salesforce (REST API) • SOAP • REST
  • 35. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 36. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Complexity of Integration Enterprise Service Bus Integration Suite Low High Integration Framework INTEGRATION Connectivity Routing Transformation Alternatives for Systems Integration
  • 37. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Integration Integration Frameworks
  • 38. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Enterprise Integration Patterns
  • 39. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Enterprise Integration Patterns
  • 40. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Standalone Application Server Web Container Cloud Spring Container Deployment
  • 41. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner AmazonS3 s3 = new AmazonS3Client(new PropertiesCredentials( S3Sample.class.getResourceAsStream("AwsCredentials.properties"))); String bucketName = "my-first-s3-bucket-" + UUID.randomUUID(); String key = "MyObjectKey"; try { s3.createBucket(bucketName); s3.putObject(new PutObjectRequest(bucketName, key, createSampleFile())); S3Object object = s3.getObject(new GetObjectRequest(bucketName, key)); ObjectListing objectListing = s3.listObjects(new ListObjectsRequest() .withBucketName(bucketName) .withPrefix("My")); s3.deleteObject(bucketName, key); s3.deleteBucket(bucketName); } catch (AmazonServiceException ase) { // error handling... } catch (AmazonClientException ace) { // error handling... } No longer „glue code“
  • 42. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner // Producer from(“ftp:toS3") .setHeader(S3Constants.KEY, simple(“order.txt")) .to("aws-s3://myBucket?accessKey=" + a+ "&secretKey= " + s) // Consumer from(„salesforce://orders__c?user=dummy1“) .filter(„attributeType==‚dvd‘“) .to(“ibm-database:orderData") Domain Specific Language (Camel)
  • 43. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner NoSQL with an Integration Framework
  • 44. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Document-oriented database
  • 45. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Document-oriented database • 10gen • stores structured data as JSON-like documents with dynamic schemas • REST API and several SDKs (Java, .NET, Ruby, PHP, Python, etc.) • Ad hoc queries, indexing, replication, load balancing • Powerful, but also easy to use and flexible • Example: Disney persists state information of online games in a common object repository.
  • 46. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: MongoDB Java Driver
  • 47. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-mongodb component // Producer from(“jms:FlightDocumentQueue") .to("mongodb:myDb?database=flights &collection=tickets &operation=insert"); // Consumer from("mongodb:myDb?database=flights &collection=cancellations &tailTrackIncreasingField=departureTime") .to(“jms:CancelledFlightsQueue");
  • 48. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Live demo Integration of NoSQL with an integration framework in action...
  • 49. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Some more...
  • 50. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Key-Value database
  • 51. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-aws component // Producer from(„jms:toS3Queue") .setHeader(S3Constants.KEY, simple(“order.txt")) .to("aws-s3://myBucket?accessKey=" + a + "&secretKey= " + s) // Consumer from("aws-s3://myBucket?accessKey=“ + a + "&secretKey=" + s) .to("log:S3logging")
  • 52. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-jclouds component from("direct:toJcloudsAwsS3") .setHeader(JcloudsConstants.BLOB_NAME, "jclouds-demo-tutorial.txt") .setHeader(JcloudsConstants.CONTAINER_NAME, "kw-s3-data") .to("jclouds:blobstore:aws-s3") from("direct:toJcloudsMicrosoftAzure") .setHeader(JcloudsConstants.BLOB_NAME, "jclouds-demo-tutorial.txt") .setHeader(JcloudsConstants.CONTAINER_NAME, "kw-s3-data") .to("jclouds:blobstore:azureblob")
  • 53. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner In-memory database
  • 54. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-hazelcast component // Producer from("direct:add") .setHeader(HazelcastConstants.OPERATION, „add“) .to("hazelcast:queue:foo"); // Consumer from("hazelcast:queue:foo") .log(“content of object foo: ${body}");
  • 55. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Graph-oriented database
  • 56. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-neo4j component // Producer from("jms:createNewNeo4jNode") .to("neo4j:http://Neo4jServer:7474/data"); // Consumer from(„neo4j://todo)... Not implemented in current Camel release (2.12)  Maybe 2.13?  Use Camel‘s REST Connectors (shown in some minutes...)
  • 57. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Column-oriented database
  • 58. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: camel-hbase component
  • 59. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enterprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 60. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Connectivity Routing Transformation INTEGRATION Tooling Monitoring Support Complexity of Integration Enterprise Service Bus Integration Suite Low High Integration Framework + What is an Enterprise Service Bus (ESB)?
  • 61. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Many important players ... Gartner Quadrant 2013 for Application Integration
  • 62. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Oracle Service Bus
  • 63. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Three IBM ESBs  Rebranded: WebSphere Integration Bus
  • 64. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Mule ESB
  • 65. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Talend ESB
  • 66. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Three ESBs (JBoss ESB, Switchyard, Fuse ESB) Two BPMs (jBPM, Polymita) No unified platform (yet) Red Hat / JBoss
  • 67. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner NoSQL with an Enterprise Service Bus
  • 68. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Example: Talend ESB
  • 69. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner TalendAdministrationCenter TalendESBStudio TalendESB Service Development Mediation & Integration Testing Build & Deploy Performance & Availability Web Services Stack Mediation & Integration Message Broker Service Container Loadbalancing & High Availability Security Business Rules Management Development Runtime Operation Documentation & Examples Professional Services Certified Partners Training & Certification24x7 Support Indemnification Maintenance Project Repository Configuration Deployment Repository Example: Talend ESB
  • 70. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Example: Talend ESB Eclipse STP/WTP soapUI Route Designer Mediation Service Designer Integration Apache Maven Build & Deploy Apache CXF REST & Web Services Apache Camel Mediation Apache ActiveMQ Message Broker Apache Karaf / Cellar OSGi / Clustering Eclipse Equinox OSGi Service Locator & Service Act. Monitoring Distributed Registry / Tracking Secure Token Server Security Service Activity Monitoring and Service Locator UI Management, Configuration & Monitoring Repository Metadata & Projects Development Runtime Operation Documentation & Examples vFabric Hyperic HQ Apache Archiva Artifact repository TalendESBStudio TalendESBRuntime TalendAdministrationCenter Professional Services Certified Partners Training & Certification24x7 Support Indemnification Maintenance
  • 71. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Route Builder  Endpoints  EIPs  Processors  Custom Connectors Configuration  Connectors  Endpoints Code Generation  100% Java  Camel Code  Packaged as OSGi Bundles Execution in the IDE  Debugging  Live statistics  Short dev cycles Example: Talend ESB Studio
  • 72. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Live demo Integration of NoSQL with an Enterprise Service Bus in action...
  • 73. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 4) Enteprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 74. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Connectivity Routing Transformation Complexity of Integration Enterprise Service Bus Integration Suite Low High Integration Framework INTEGRATION Tooling Monitoring Support + BUSINESS PROCESS MGT. BIG DATA / MDM REGISTRY / REPOSITORY RULES ENGINE „YOU NAME IT“ + What is an Integration Suite?
  • 75. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Oracle Platform
  • 76. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner IBM WebSphere Stack
  • 77. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner WSO2 Carbon Platform
  • 78. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Data Quality Data Integration MDM ESB Big Data Big Data  Open source license  Free of charge  Optional support  Based on open source projects such as Eclipse or Apache Camel, CXF, Hadoop  Commercial license  Subscription model  Support included Data Quality Data Integration MDM ESB BPM Talend Unified Platform
  • 79. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Integration of NoSQL with an integration suite in Action... Live Demo
  • 80. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Open Source Proprietary ESB Vendor == Integration Suite Vendor
  • 81. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner ESB BPM Data Quality ESB Vendor == Integration Suite Vendor
  • 82. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner • A lot of glue code • Testing • Bugfixing • No support Some other people already had the problems you would have! Custom Combination of ESB, BPM, etc.
  • 83. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Agenda 1) Introduction to NoSQL 2) Systems Integration 3) API 4) Integration Framework 5) Enteprise Service Bus 6) Integration Suite 7) Custom Connectors
  • 84. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Custom NoSQL Connectors Easy to realize for all integration alternatives * • Integration Framework • Enterprise Service Bus • Integration Suite * At least for open source solutions
  • 85. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Live demo (Example Salesforce Connector) Custom NoSQL Connectors in action...
  • 86. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Alternative for custom NoSQL Connectors • SOAP • REST
  • 87. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Code example: REST API for Salesforce object store // Salesforce Query (SOQL) via REST API from("direct:salesforceViaHttpLIST") .setHeader("X-PrettyPrint", 1) .setHeader("Authorization", accessToken) .setHeader(Exchange.CONTENT_TYPE, "application/json") .to("https://na14.salesforce.com/services/data/v20.0/query?q=SELECT+name+from +Article__c") // Salesforce CREATE via REST API from("direct:salesforceViaHttpCREATE") .setHeader("X-PrettyPrint", 1) .setHeader("Authorization", accessToken) .setHeader(Exchange.CONTENT_TYPE, "application/json“) .to("https://na14.salesforce.com/services/data/v20.0/sobjects/Article__c")
  • 88. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Did you get the key message?
  • 89. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Key messages NoSQL cannot be avoided, and must be integrated! NoSQL integration is already possible! Different APIs, Frameworks and Products helps a lot!
  • 90. © Talend 2013 “Alternatives for Systems Integration in the NoSQL Era” by Kai Wähner Did you get the key message?
  • 91. Thank you for your attention. Questions? kwaehner@talend.com www.kai-waehner.de LinkedIn / Xing @KaiWaehner