SlideShare a Scribd company logo
1 of 73
Systems Integration in the NoSQL Era
with Apache Camel

Kai Wähner
kwaehner@talend.com
@KaiWaehner
www.kai-waehner.de
10/23/2013

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Kai Wähner
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

Consulting
Developing
Coaching
Speaking
Writing

Contact
Email: kwaehner@talend.com
Blog: www.kai-waehner.de/blog
Twitter: @KaiWaehner
Social Networks: Xing, LinkedIn

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
What is the problem?

Growth
• Applications
• Interfaces

• Technologies
• Products

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
A new era: NoSQL

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Solution: systems integration

All Roads lead
to Rome ...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Wishes for integrators

• Standardized Modeling
• Efficient Realization
• Automatic Testing
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Systems integration in the NoSQL era

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
What is the key message?

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Key messages

NoSQL cannot be avoided, and must be integrated!

NoSQL integration is already possible!
Apache Camel helps a lot!
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

Live Demos
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
The evolving database landscape

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Complementary Concepts

NoSQL

Cloud

Big Data
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Alternatives for systems integration

API

Integration
Framework

Enterprise Service Bus (ESB)

Complexity
of Integration

Low

High

Apache Camel vs. Spring Integration vs. Mule
http://www.kai-waehner.de/blog/2012/01/10/spoilt-for-choice-which-integration-framework-to-use-spring-integration-mule-esb-or-apache-camel/
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
More details about integration frameworks...

http://www.kai-waehner.de/blog/2013/09/25/how-to-choose-the-right-open-sourceintegration-framework-apache-camel-jboss-talend-spring-integration-pivotal-or-muleesb-javaone-2013/
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Enterprise Integration Patterns (EIP)

Apache Camel
Implements the EIPs
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Enterprise Integration Patterns (EIP)

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Enterprise Integration Patterns (EIP)

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Architecture

http://java.dzone.com/articles/apache-camel-integration

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Choose your favorite DSL

XML

(not production-ready yet)

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Choose your required components
TCP

SQL

SMTP

Netty
RMI

FTP

Lucene

JMX

MQ

Atom
LDAP

Quartz

XSLT

Akka
Many many more

© Talend 2013

IRC

Log

HTTP

File

EJB

AMQP

RSS
AWS-S3

Jetty
JDBC

Bean-Validation

JMS

CXF

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner

Custom Components
Deploy it wherever you need

Standalone

Application Server

Web Container
Spring Container
OSGi
Cloud
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Enterprise-ready

• Open Source
• Scalability
• Error Handling
• Transaction
• Monitoring
• Tooling
• Commercial Support
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Community  Camel rocks!

Mailing Lists?
Forums?
Blogs?
Articles?
Conference talks?
ESBs?
Professionals?
Jobs?
Knowledge?
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Live demo

Apache Camel in action...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Document-oriented database

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: MongoDB Java Driver

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Live demo

Integration of a document-oriented database in action...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Key-Value database

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Key-Value database

• Part of Amazon Web Services (AWS)
• Online storage web service
• Store arbitrary objects (computer files) up to
5 terabytes
• REST and SOAP API
• SDKs for Java, .NET, PHP, Ruby, etc.
• Highly-scalable, reliable, and low-latency
• Alternative for Hadoop‘s file system HDFS
• Example: DigitalChalk offers creating,
delivering and managing training videos
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: AWS S3 Java SDK
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

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Open source tooling on top of Camel: Talend ESB
Development

Runtime

Operation
Management

Mediation &
Integration

Mediation &
Integration

Loadbalancing & High
Availability

Configuration

Message Broker

Business Rules

Project
Repository

Service Container

Deployment
Repository

Testing

Build & Deploy

Performance &
Availability

Talend Administration Center

Security

Talend ESB

Web Services Stack

Talend ESB Studio

Service Development

Documentation & Examples
24x7 Support

Training & Certification

Maintenance

Professional Services

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner

Indemnification
Certified Partners
Open source tooling on top of Camel: Talend ESB
Development

Runtime

Operation

Security

Route Designer

Apache Camel

Service Locator &
Service Act.
Monitoring

Mediation

Service Designer
Integration

Apache Maven
Build & Deploy

Mediation

Distributed Registry / Tracking

Message Broker

Apache Archiva
Artifact repository

Apache Karaf / Cellar

Eclipse Equinox

OSGi / Clustering

OSGi

Apache ActiveMQ

Service Activity Monitoring
and Service Locator UI

Repository
Metadata & Projects

vFabric
Hyperic HQ

Talend Administration Center

REST & Web Services

Management,
Configuration &
Monitoring

Secure Token Server

Talend ESB Runtime

Apache CXF

Talend ESB Studio

Eclipse STP/WTP
soapUI

Documentation & Examples
24x7 Support

Training & Certification

Maintenance

Professional Services

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner

Indemnification
Certified Partners
Open source tooling on top of Camel: Talend ESB
Route Builder





Endpoints
EIPs
Processors
Custom components

Configuration
 Components
 Endpoints
Code Generation
 100% Java
 Camel Code
 Packaged as OSGi
Bundles

Execution in the IDE
 Debugging
 Live statistics
 Short dev cycles
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Live demo

Integration of a key-value database in action...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Alternative to Vendor APIs

➜

© Talend 2013

Generic APIs

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
jClouds (Generic API)
Generic API for IaaS

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
jClouds (Generic API)

Compute API
Blobstore API
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
jClouds (Generic API)

Several different
Cloud providers
supported
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
jClouds (Generic API) – AWS S3 Blobstore (Java)

Use another provider?
Just change this line!

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
In-memory database

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
In-memory database

• In-memory data grid
• Clustering and highly scalable data
distribution solution for Java platform
• Architecture is peer-to-peer
• Distributed Java data structures (Queue, Set,
List, Map, Lock, Topic)
• Java and REST API

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: Hazelcast Java API

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Live demo

Integration of an in-memory database in action...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Graph-oriented database

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Graph-oriented database

• Neo Technology
• Graphs rather than tables
• Nodes, edges, and properties to represent
and store data
• Index-free adjacency
• REST API and many SDKs (Java, .NET, Ruby,
PHP, Python, etc.)
• Embedded, disk-based, fully transactional
• Powerful tool for graph-like queries
• Example: Facebook friends
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: Neo4j Ruby API

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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) 

 Use Camel‘s REST components (shown in some minutes...)

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Column-oriented database

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
HBase

• Modeled after Google's BigTable
• Runs on top of HDFS (Hadoop Distributed
Filesystem)
• Can serve as the input and output for
MapReduce jobs run in Hadoop
• Stores data tables as sections of columns of
data rather than as rows of data
• Java API plus REST, Avro or Thrift gateway
APIs
• Use HBase when you need random, realtime
read/write access to your Big Data
• Example: Advantages for DWHs, CRMs, and
other ad-hoc inquiry systems where
aggregates are computed over large numbers
of similar data items.
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: HBase Java API

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Code example: camel-hbase component

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Agenda

1) Introduction to NoSQL
2) Introduction to Apache Camel
3) Integration of a Document-oriented Database
4) Integration of a Key-Value Database
5) Integration of an In-Memory Database
6) Integration of a Graph-oriented Database
7) Integration of a Column-oriented Database
8) Custom NoSQL Components

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Custom NoSQL components

Component

Creates

Endpoint

Consumer

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner

Producer
Live demo

Custom NoSQL components in action...
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Alternative for custom NoSQL components

• SOAP
• REST
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” 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

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
SQL is still very alive, of course...

Camel SQL components:
• sql:statement
• jdbc:dataSourceName
• jpa://entityName
• mybatis://statementName
• hibernate://entityName

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Did you get the key message?

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Key messages

NoSQL cannot be avoided, and must be integrated!

NoSQL integration is already possible!
Apache Camel helps a lot!
© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Did you get the key message?

© Talend 2013

“Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
Thank you for your attention. Questions?

kwaehner@talend.com
www.kai-waehner.de
LinkedIn / Xing
@KaiWaehner

More Related Content

What's hot

How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...
How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...
How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...Kai Wähner
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeDavid Linthicum
 
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale
 
Microservices in the Enterprise
Microservices in the Enterprise Microservices in the Enterprise
Microservices in the Enterprise Jesus Rodriguez
 
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...Kai Wähner
 
2017 OpenWorld Keynote for Data Integration
2017 OpenWorld Keynote for Data Integration2017 OpenWorld Keynote for Data Integration
2017 OpenWorld Keynote for Data IntegrationJeffrey T. Pollock
 
RightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale
 
RightScale Webinar: Best Practices: Software Development Strategies Using Win...
RightScale Webinar: Best Practices: Software Development Strategies Using Win...RightScale Webinar: Best Practices: Software Development Strategies Using Win...
RightScale Webinar: Best Practices: Software Development Strategies Using Win...RightScale
 
Hybrid Cloud Solutions to Transform Your Organization
Hybrid Cloud Solutions to Transform Your OrganizationHybrid Cloud Solutions to Transform Your Organization
Hybrid Cloud Solutions to Transform Your OrganizationAmazon Web Services
 
Big Data on AWS - Toronto FSI Symposium - October 2016
Big Data on AWS - Toronto FSI Symposium - October 2016Big Data on AWS - Toronto FSI Symposium - October 2016
Big Data on AWS - Toronto FSI Symposium - October 2016Amazon Web Services
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to CloudRightScale
 
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)Amazon Web Services
 
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...SnapLogic
 
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...Amazon Web Services
 
The Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management StackThe Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management StackSnapLogic
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to CloudRightScale
 
Develop a Custom Data Solution Architecture with NorthBay
Develop a Custom Data Solution Architecture with NorthBayDevelop a Custom Data Solution Architecture with NorthBay
Develop a Custom Data Solution Architecture with NorthBayAmazon Web Services
 
Everything you need to know about cloud migration(Build Stuff 2021)
Everything you need to know about cloud migration(Build Stuff 2021)Everything you need to know about cloud migration(Build Stuff 2021)
Everything you need to know about cloud migration(Build Stuff 2021)Radu Vunvulea
 
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature Mapping
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature MappingMicrosoft Azure vs Amazon Web Services (AWS) Services & Feature Mapping
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature MappingIlyas F ☁☁☁
 
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...Amazon Web Services
 

What's hot (20)

How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...
How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...
How to create intelligent Business Processes thanks to Big Data (BPM, Apache ...
 
How to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First TimeHow to Get Cloud Architecture and Design Right the First Time
How to Get Cloud Architecture and Design Right the First Time
 
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
RightScale Webinar: Hybrid-IT: Connecting Your On-Premises Infrastructure Wit...
 
Microservices in the Enterprise
Microservices in the Enterprise Microservices in the Enterprise
Microservices in the Enterprise
 
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
 
2017 OpenWorld Keynote for Data Integration
2017 OpenWorld Keynote for Data Integration2017 OpenWorld Keynote for Data Integration
2017 OpenWorld Keynote for Data Integration
 
RightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to CloudRightScale Roadtrip Atlanta - Accelerate to Cloud
RightScale Roadtrip Atlanta - Accelerate to Cloud
 
RightScale Webinar: Best Practices: Software Development Strategies Using Win...
RightScale Webinar: Best Practices: Software Development Strategies Using Win...RightScale Webinar: Best Practices: Software Development Strategies Using Win...
RightScale Webinar: Best Practices: Software Development Strategies Using Win...
 
Hybrid Cloud Solutions to Transform Your Organization
Hybrid Cloud Solutions to Transform Your OrganizationHybrid Cloud Solutions to Transform Your Organization
Hybrid Cloud Solutions to Transform Your Organization
 
Big Data on AWS - Toronto FSI Symposium - October 2016
Big Data on AWS - Toronto FSI Symposium - October 2016Big Data on AWS - Toronto FSI Symposium - October 2016
Big Data on AWS - Toronto FSI Symposium - October 2016
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud
 
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)
AWS re:Invent 2016: Introduction to AWS IoT in the Cloud (IOT204)
 
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
Webinar: Introducing the SnapLogic Elastic Integration Platform Summer 2014 R...
 
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...
AWS re:Invent 2016: How to move 1,000 VMs and Biz Critical Apps to AWS in 6 m...
 
The Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management StackThe Impact of SMACT on the Data Management Stack
The Impact of SMACT on the Data Management Stack
 
3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud3 Steps to Accelerate to Cloud
3 Steps to Accelerate to Cloud
 
Develop a Custom Data Solution Architecture with NorthBay
Develop a Custom Data Solution Architecture with NorthBayDevelop a Custom Data Solution Architecture with NorthBay
Develop a Custom Data Solution Architecture with NorthBay
 
Everything you need to know about cloud migration(Build Stuff 2021)
Everything you need to know about cloud migration(Build Stuff 2021)Everything you need to know about cloud migration(Build Stuff 2021)
Everything you need to know about cloud migration(Build Stuff 2021)
 
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature Mapping
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature MappingMicrosoft Azure vs Amazon Web Services (AWS) Services & Feature Mapping
Microsoft Azure vs Amazon Web Services (AWS) Services & Feature Mapping
 
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...
IoT Building Blocks: From Edge Devices to Analytics in the Cloud - SRV204 - T...
 

Similar to NoSQL Integration Made Easy with Apache Camel

Running WebLogic on Azure Kubernetes and Virtual Machines
Running WebLogic on Azure Kubernetes and Virtual MachinesRunning WebLogic on Azure Kubernetes and Virtual Machines
Running WebLogic on Azure Kubernetes and Virtual MachinesReza Rahman
 
Private cloud cloud-phoenix-april-2014
Private cloud cloud-phoenix-april-2014Private cloud cloud-phoenix-april-2014
Private cloud cloud-phoenix-april-2014Miguel Zuniga
 
OpenStack (projects 101)
OpenStack (projects 101)OpenStack (projects 101)
OpenStack (projects 101)Hazzim Anaya
 
Chicago Microservices Integration Talk
Chicago Microservices Integration TalkChicago Microservices Integration Talk
Chicago Microservices Integration TalkChristian Posta
 
OpenStack Block Storage 101
OpenStack Block Storage 101OpenStack Block Storage 101
OpenStack Block Storage 101NetApp
 
MySQL in oracle_public_cloud
MySQL in oracle_public_cloudMySQL in oracle_public_cloud
MySQL in oracle_public_cloudOracleMySQL
 
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...IndicThreads
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflixaspyker
 
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...Kai Wähner
 
Cloudstack Japan - cloudstack, the best kept secret in the cloud
Cloudstack Japan  -  cloudstack, the best kept secret in the cloudCloudstack Japan  -  cloudstack, the best kept secret in the cloud
Cloudstack Japan - cloudstack, the best kept secret in the cloudShapeBlue
 
Cloud Native Camel Riding
Cloud Native Camel RidingCloud Native Camel Riding
Cloud Native Camel RidingChristian Posta
 
MySQL in oracle public cloud
MySQL in oracle public cloudMySQL in oracle public cloud
MySQL in oracle public cloudMandy Ang
 
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Marc Dutoo
 
Directions for CloudStack Networking
Directions for CloudStack  NetworkingDirections for CloudStack  Networking
Directions for CloudStack NetworkingChiradeep Vittal
 
Ingest, Transform & Visualize w Amazon Web Services
Ingest, Transform & Visualize w Amazon Web ServicesIngest, Transform & Visualize w Amazon Web Services
Ingest, Transform & Visualize w Amazon Web ServicesBigDataCamp
 
OpenStack Introduction
OpenStack IntroductionOpenStack Introduction
OpenStack IntroductionJimi Chen
 

Similar to NoSQL Integration Made Easy with Apache Camel (20)

Running WebLogic on Azure Kubernetes and Virtual Machines
Running WebLogic on Azure Kubernetes and Virtual MachinesRunning WebLogic on Azure Kubernetes and Virtual Machines
Running WebLogic on Azure Kubernetes and Virtual Machines
 
Private cloud cloud-phoenix-april-2014
Private cloud cloud-phoenix-april-2014Private cloud cloud-phoenix-april-2014
Private cloud cloud-phoenix-april-2014
 
OpenStack (projects 101)
OpenStack (projects 101)OpenStack (projects 101)
OpenStack (projects 101)
 
Bitnami Bootcamp. OpenStack
Bitnami Bootcamp. OpenStackBitnami Bootcamp. OpenStack
Bitnami Bootcamp. OpenStack
 
Chicago Microservices Integration Talk
Chicago Microservices Integration TalkChicago Microservices Integration Talk
Chicago Microservices Integration Talk
 
OpenStack Block Storage 101
OpenStack Block Storage 101OpenStack Block Storage 101
OpenStack Block Storage 101
 
MySQL in oracle_public_cloud
MySQL in oracle_public_cloudMySQL in oracle_public_cloud
MySQL in oracle_public_cloud
 
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflix
 
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...
Next Generation – Systems Integration in the Cloud Era with Apache Camel - Ja...
 
Cloudstack Japan - cloudstack, the best kept secret in the cloud
Cloudstack Japan  -  cloudstack, the best kept secret in the cloudCloudstack Japan  -  cloudstack, the best kept secret in the cloud
Cloudstack Japan - cloudstack, the best kept secret in the cloud
 
Cloud Native Camel Riding
Cloud Native Camel RidingCloud Native Camel Riding
Cloud Native Camel Riding
 
MySQL in oracle public cloud
MySQL in oracle public cloudMySQL in oracle public cloud
MySQL in oracle public cloud
 
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
 
Directions for CloudStack Networking
Directions for CloudStack  NetworkingDirections for CloudStack  Networking
Directions for CloudStack Networking
 
Cloud Computing using OpenStack
Cloud Computing using OpenStackCloud Computing using OpenStack
Cloud Computing using OpenStack
 
Ingest, Transform & Visualize w Amazon Web Services
Ingest, Transform & Visualize w Amazon Web ServicesIngest, Transform & Visualize w Amazon Web Services
Ingest, Transform & Visualize w Amazon Web Services
 
Oracle Cloud Native
Oracle Cloud NativeOracle Cloud Native
Oracle Cloud Native
 
OpenStack Introduction
OpenStack IntroductionOpenStack Introduction
OpenStack Introduction
 

More from Kai Wähner

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

More from Kai Wähner (20)

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

Recently uploaded

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
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
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
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
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
 
"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
 
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
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 

Recently uploaded (20)

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.
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
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
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
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
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 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
 
"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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 

NoSQL Integration Made Easy with Apache Camel

  • 1. Systems Integration in the NoSQL Era with Apache Camel Kai Wähner kwaehner@talend.com @KaiWaehner www.kai-waehner.de 10/23/2013 © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 2. Kai Wähner 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 Consulting Developing Coaching Speaking Writing Contact Email: kwaehner@talend.com Blog: www.kai-waehner.de/blog Twitter: @KaiWaehner Social Networks: Xing, LinkedIn © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 3. What is the problem? Growth • Applications • Interfaces • Technologies • Products © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 4. A new era: NoSQL © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 5. Solution: systems integration All Roads lead to Rome ... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 6. Wishes for integrators • Standardized Modeling • Efficient Realization • Automatic Testing © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 7. Systems integration in the NoSQL era © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 8. What is the key message? © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 9. Key messages NoSQL cannot be avoided, and must be integrated! NoSQL integration is already possible! Apache Camel helps a lot! © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 10. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components Live Demos © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 11. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 12. The evolving database landscape © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 13. Complementary Concepts NoSQL Cloud Big Data © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 14. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 15. Alternatives for systems integration API Integration Framework Enterprise Service Bus (ESB) Complexity of Integration Low High Apache Camel vs. Spring Integration vs. Mule http://www.kai-waehner.de/blog/2012/01/10/spoilt-for-choice-which-integration-framework-to-use-spring-integration-mule-esb-or-apache-camel/ © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 16. More details about integration frameworks... http://www.kai-waehner.de/blog/2013/09/25/how-to-choose-the-right-open-sourceintegration-framework-apache-camel-jboss-talend-spring-integration-pivotal-or-muleesb-javaone-2013/ © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 17. Enterprise Integration Patterns (EIP) Apache Camel Implements the EIPs © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 18. Enterprise Integration Patterns (EIP) © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 19. Enterprise Integration Patterns (EIP) © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 20. Architecture http://java.dzone.com/articles/apache-camel-integration © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 21. Choose your favorite DSL XML (not production-ready yet) © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 22. Choose your required components TCP SQL SMTP Netty RMI FTP Lucene JMX MQ Atom LDAP Quartz XSLT Akka Many many more © Talend 2013 IRC Log HTTP File EJB AMQP RSS AWS-S3 Jetty JDBC Bean-Validation JMS CXF “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner Custom Components
  • 23. Deploy it wherever you need Standalone Application Server Web Container Spring Container OSGi Cloud © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 24. Enterprise-ready • Open Source • Scalability • Error Handling • Transaction • Monitoring • Tooling • Commercial Support © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 25. Community  Camel rocks! Mailing Lists? Forums? Blogs? Articles? Conference talks? ESBs? Professionals? Jobs? Knowledge? © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 26. Live demo Apache Camel in action... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 27. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 28. Document-oriented database © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 29. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 30. Code example: MongoDB Java Driver © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 31. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 32. Live demo Integration of a document-oriented database in action... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 33. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 34. Key-Value database © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 35. Key-Value database • Part of Amazon Web Services (AWS) • Online storage web service • Store arbitrary objects (computer files) up to 5 terabytes • REST and SOAP API • SDKs for Java, .NET, PHP, Ruby, etc. • Highly-scalable, reliable, and low-latency • Alternative for Hadoop‘s file system HDFS • Example: DigitalChalk offers creating, delivering and managing training videos © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 36. Code example: AWS S3 Java SDK 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 37. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 38. Open source tooling on top of Camel: Talend ESB Development Runtime Operation Management Mediation & Integration Mediation & Integration Loadbalancing & High Availability Configuration Message Broker Business Rules Project Repository Service Container Deployment Repository Testing Build & Deploy Performance & Availability Talend Administration Center Security Talend ESB Web Services Stack Talend ESB Studio Service Development Documentation & Examples 24x7 Support Training & Certification Maintenance Professional Services © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner Indemnification Certified Partners
  • 39. Open source tooling on top of Camel: Talend ESB Development Runtime Operation Security Route Designer Apache Camel Service Locator & Service Act. Monitoring Mediation Service Designer Integration Apache Maven Build & Deploy Mediation Distributed Registry / Tracking Message Broker Apache Archiva Artifact repository Apache Karaf / Cellar Eclipse Equinox OSGi / Clustering OSGi Apache ActiveMQ Service Activity Monitoring and Service Locator UI Repository Metadata & Projects vFabric Hyperic HQ Talend Administration Center REST & Web Services Management, Configuration & Monitoring Secure Token Server Talend ESB Runtime Apache CXF Talend ESB Studio Eclipse STP/WTP soapUI Documentation & Examples 24x7 Support Training & Certification Maintenance Professional Services © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner Indemnification Certified Partners
  • 40. Open source tooling on top of Camel: Talend ESB Route Builder     Endpoints EIPs Processors Custom components Configuration  Components  Endpoints Code Generation  100% Java  Camel Code  Packaged as OSGi Bundles Execution in the IDE  Debugging  Live statistics  Short dev cycles © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 41. Live demo Integration of a key-value database in action... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 42. Alternative to Vendor APIs ➜ © Talend 2013 Generic APIs “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 43. jClouds (Generic API) Generic API for IaaS © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 44. jClouds (Generic API) Compute API Blobstore API © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 45. jClouds (Generic API) Several different Cloud providers supported © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 46. jClouds (Generic API) – AWS S3 Blobstore (Java) Use another provider? Just change this line! © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 47. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 48. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 49. In-memory database © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 50. In-memory database • In-memory data grid • Clustering and highly scalable data distribution solution for Java platform • Architecture is peer-to-peer • Distributed Java data structures (Queue, Set, List, Map, Lock, Topic) • Java and REST API © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 51. Code example: Hazelcast Java API © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 52. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 53. Live demo Integration of an in-memory database in action... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 54. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 55. Graph-oriented database © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 56. Graph-oriented database • Neo Technology • Graphs rather than tables • Nodes, edges, and properties to represent and store data • Index-free adjacency • REST API and many SDKs (Java, .NET, Ruby, PHP, Python, etc.) • Embedded, disk-based, fully transactional • Powerful tool for graph-like queries • Example: Facebook friends © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 57. Code example: Neo4j Ruby API © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 58. 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)   Use Camel‘s REST components (shown in some minutes...) © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 59. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 60. Column-oriented database © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 61. HBase • Modeled after Google's BigTable • Runs on top of HDFS (Hadoop Distributed Filesystem) • Can serve as the input and output for MapReduce jobs run in Hadoop • Stores data tables as sections of columns of data rather than as rows of data • Java API plus REST, Avro or Thrift gateway APIs • Use HBase when you need random, realtime read/write access to your Big Data • Example: Advantages for DWHs, CRMs, and other ad-hoc inquiry systems where aggregates are computed over large numbers of similar data items. © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 62. Code example: HBase Java API © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 63. Code example: camel-hbase component © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 64. Agenda 1) Introduction to NoSQL 2) Introduction to Apache Camel 3) Integration of a Document-oriented Database 4) Integration of a Key-Value Database 5) Integration of an In-Memory Database 6) Integration of a Graph-oriented Database 7) Integration of a Column-oriented Database 8) Custom NoSQL Components © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 65. Custom NoSQL components Component Creates Endpoint Consumer © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner Producer
  • 66. Live demo Custom NoSQL components in action... © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 67. Alternative for custom NoSQL components • SOAP • REST © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 68. 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 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 69. SQL is still very alive, of course... Camel SQL components: • sql:statement • jdbc:dataSourceName • jpa://entityName • mybatis://statementName • hibernate://entityName © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 70. Did you get the key message? © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 71. Key messages NoSQL cannot be avoided, and must be integrated! NoSQL integration is already possible! Apache Camel helps a lot! © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 72. Did you get the key message? © Talend 2013 “Systems Integration in the NoSQL Era with Apache Camel” by Kai Wähner
  • 73. Thank you for your attention. Questions? kwaehner@talend.com www.kai-waehner.de LinkedIn / Xing @KaiWaehner