SlideShare a Scribd company logo
Pivoting
Spring XD to Spring Cloud Data Flow
Sabby Anandan | Product Manager | @sabbyanandan
business premise
microservices
what it means
for data
tools / frameworks
what we learned
how it all comes
together
Sense of Urgency
business
results
business
strategy
Sense of Urgency
OR
Need for Momentum?
business
strategy
business
results
business
strategy
business
results
Continuous Delivery
Continuous Delivery
Deliver Continuously
1 2
frequent roll out updates, even multiple times a day
gives you more ways to maintain availability
reduce risks
allows you to make sound technology choices
gives your team more velocity
microservices architecture
business
strategy
business
results
devops culture
continuous delivery
Casey West
Principal Technologist, Cloud Foundry
“how do we get there?”
Continuously Delivered
Microservices
Microservices
architecture composed of loosely coupled
elements that have bounded contexts
Adrian Cockcroft
Battery Ventures
previously: Cloud Architect at Netflix
“what tools can I use?”
Spring
Spring Boot
AutoConfigure
Starters
CLI
Actuator
Dev-Tools
Health Checks
Security
Logging
BUILDING ADAPTIVE APPLICATIONS IS HARD
built on Cloud Foundry
code will be open sourced.
Demo: Spring Boot
Emerging Challenges
• separate deployable units (registry, discovery,
versioning)
• reliable operationalization (fault tolerance)
• too many moving parts (coordination, routing,
load balancing)
Spring
Spring Cloud
Spring Cloud
Hystrix
Eureka
Ribbon
Zuul
Feign
Service Discovery
Config Server
Control Bus
Zookeeper Distributed TracingConfig Server
Spring Cloud
@EnableConfigServer
@EnableEurekaServer
@EnableDiscoveryClient
@EnableCircuitBreaker
@EnableHystrix
@EnableAtlas
@EnableTurbine
@EnableZuulProxy
OK, I get it..
..what’s specical about
microservices?
Microservices
a single application as a suite of small services,
each running in its own process and
communicating with lightweight mechanisms, often
an HTTP resource API
James Lewis and Martin Fowler
ThoughtWorks
Microservices
a single application as a suite of small services,
each running in its own process and
communicating with lightweight
mechanisms, often an an
HTTP resource API
OK, I get it..
..what if I have a lot
of data?
every software company cares
about data
Data-driven Microservices
composition of small standalone executable
applications communicating over messaging
middleware
Mark Fisher and Mark Pollack
Spring/Pivotal
Data-driven Microservices
composition of small standalone executable
applications communicating over
messaging middleware
operates by consuming from and producing to
message queues and data stores
“i need real-time insights
from data”
Spring
Developer Toolkits
Spring Integration
enables lightweight
messaging within Spring-
based applications and
supports integration with
external systems Spring Cloud Stream
enables you to create
powerful distributed
streaming data applications
with a minimal amount of
coding
Spring Cloud Stream
@EnableBinding(Source.class)
@EnableRXJavaProcessor
@EnableBinding(Sink.class)
@EnableBinding(Processor.class)
http | transform | log
| = ?
http | transform | log
| = Binder
Binders
BUILDING ADAPTIVE APPLICATIONS IS HARD
built on Cloud Foundry
code will be open sourced.
Demo: Spring Cloud Stream
@EnableBinding(Source.class)
Discover
Output
Channel
Discover
Binder
Discover
Type
Converter
Bind
Producer
Auto
Configure
$ java -jar http-source.jar
$ java -jar transform-processor.jar
@EnableBinding(Processor.class)
Discover Input
and Output
Channels
Discover
Binder
Discover
Type
Converter
Bind
Producer and
Consumer
Auto
Configure
@EnableBinding(Sink.class)
Discover
Input
Channel
Discover
Binder
Discover
Type
Converter
Bind
Consumer
Auto
Configure
$ java -jar log-sink.jar
“i have large volumes of
asynchronous data
systems”
Spring
Reactive Streams
@EnableRXJavaProcessor
10 11 12 13 14 15 16 17 18 19.. ..
10 11 12 13 14 15 16 17 18 19.. ..
i0
i1
12
17
“i need offline data analysis”
Spring
Batch-processing Microservices
Spring Batch
enables the development
of robust batch applications
vital for the daily operations of
enterprise systems
Spring Cloud Task
enables you to develop and
run short-lived executable
data applications locally or in
the cloud
@EnableTask
Discover
DataSource
Bind
DataSource
Auto
Configure
$ java -jar timestamp-task.jar
BUILDING ADAPTIVE APPLICATIONS IS HARD
built on Cloud Foundry
code will be open sourced.
Recap
I need real-time insights from data
I need offline data analysis
Spring Cloud Stream
Spring Cloud Task
Stream
Batch
Stream Batch
Data Architecture
Spring
Spring XD
Kodiak: Turnkey Data Integration Platform Sep 2012
Apr 2013
Aug 2013
Jan 2014
Apr 2014
Nov 2014
Dec 2014
Jan 2015
Feb 2015
Batch Jobs (Gaps: Oozie; Flume; Sqoop)
PMML (closed-loop-analytics; IoT), YARN
Kafka and Sqoop Support
Spring XD on CloudFoundry (beta)
Spring XD Launch
Builds on Spring Boot
Spark and Python Support
Spark Streaming, RxJava, Reactor Support
Apr 2015 BDS [HAWQ, GPDB, GemFire, PHD 3.0/HDP]
Flo UI, HDP/Ambari, Lattice Integration Jun 2015
Nov 2015 Flo Composed Jobs/Workflows, Perf. Improvements
Kodiak: Turnkey Data Integration Platform Sep 2012
Apr 2013
Aug 2013
Jan 2014
Apr 2014
Nov 2014
Dec 2014
Jan 2015
Feb 2015
Batch Jobs (Gaps: Oozie; Flume; Sqoop)
PMML (closed-loop-analytics; IoT), YARN
Kafka and Sqoop Support
Spring XD on CloudFoundry (beta)
Spring XD Launch
Builds on Spring Boot
Spark and Python Support
Spark Streaming, RxJava, Reactor Support
Apr 2015 BDS [HAWQ, GPDB, GemFire, PHD 3.0/HDP]
Flo UI, HDP/Ambari, Lattice Integration Jun 2015
Nov 2015 Flo Composed Jobs/Workflows, Perf. Improvements
Not Quiet There
• couldn’t scale without undeploying
running stream or batch pipelines
• couldn’t do rolling upgrades
• couldn’t do continuous deployments
longer running
services
short lived
processes
Data Microservices Architecture
Stream Batch
Spring XD
Spring Cloud Data Flow
Spring Cloud Data Flow is
a cloud native programming and operating model
for composable data microservices on a
structured platform
Spring Cloud Data Flow is
a cloud native programming and operating
model for composable data microservices on a
structured platform
Spring Cloud Data Flow is
a cloud native programming and operating
model for composable data microservices on a
structured platform
@EnableBinding(Source)

class Greeter {

@InboundChannelAdapter(Source.OUTPUT)

String greet() {

"hello world"

}

}
canary
deployments
continuous
delivery
monitoring
@EnableBinding(Source.class)
@EnableBinding(Processor.class)
@EnableBinding(Sink.class)
Spring Cloud Data Flow is
a cloud native programming and operating model
for composable data microservices on a
structured platform
http
transform
log
job foo
< bar || baz & jaz
> bye
Streams
Jobs
foo
bar jaz
baz
bye
Spring Cloud Data Flow is
a cloud native programming and operating model
for composable data microservices on a
structured platform
Private and Public PaaS
Polyglot
Multiple Platforms
Service Marketplace
Direct Access to Containers
Metrics, Logging, Monitoring
Dynamic Scaling and Resource
Allocation
Integrated Security and
Auditing
Spring Cloud Data Flow is
a cloud native programming and operating model
for composable data microservices on a
structured platform
Private and Public PaaS
Polyglot
Multiple Platforms
Service Marketplace
Direct Access to Containers
Metrics, Logging, Monitoring
Dynamic Scaling and Resource
Allocation
Integrated Security and
Auditing
Spring Cloud Data Flow is
a cloud native programming and operating model
for composable data microservices on a
structured platform
……
Polyglot
Multiple Platforms
……
Direct Access to Containers
Metrics, Logging, Monitoring
Dynamic Scaling and Resource
Allocation
Integrated Security and
Auditing
YARN
XD Modules
XD
Admin
XD Containers
ZooKeeper
ZooKeeper
Admin / Flo UI
Shell
CURL
Database
Admin
Admin / Flo UI
Shell
CURL
??X
YARN
Stream/Task Boot Apps
Orchestrate Composable
Data Microservices
HOST
Cloud Foundry YARN Local
Spring Cloud Data Flow
µPCF
Spring Cloud Stream/Task AppsSpring Cloud Stream Binders [Rabbit, Kafka, Redis]
BUILDING ADAPTIVE APPLICATIONS IS HARD
built on Cloud Foundry
code will be open sourced.
Demo: Spring Cloud Data Flow
cf push
• here is my source code
• run it on the cloud for me
• i do not care how
yarn push
• here is my source code
• run it on the hadoop for me
• i do not care how
“simple things should be simple,
complex things should be possible”
- alan kay
Resources
Spring Cloud Data Flow: http://cloud.spring.io/spring-
cloud-dataflow/
Spring Cloud Data Flow Samples: https://github.com/
spring-cloud/spring-cloud-dataflow-samples
Spring Cloud Stream: http://cloud.spring.io/spring-cloud-
stream/
Spring Cloud Task: http://cloud.spring.io/spring-cloud-task/

More Related Content

PDF
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
PDF
Detecting Real-Time Financial Fraud with Cloudflow on Kubernetes
PDF
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
PDF
URP? Excuse You! The Three Metrics You Have to Know
PDF
Demystifying Event-Driven Architectures with Apache Kafka | Bogdan Sucaciu, P...
PDF
Stateful, Stateless and Serverless - Running Apache Kafka® on Kubernetes
PDF
War Stories: DIY Kafka
PPTX
Building an Event-oriented Data Platform with Kafka, Eric Sammer
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
Detecting Real-Time Financial Fraud with Cloudflow on Kubernetes
How a distributed graph analytics platform uses Apache Kafka for data ingesti...
URP? Excuse You! The Three Metrics You Have to Know
Demystifying Event-Driven Architectures with Apache Kafka | Bogdan Sucaciu, P...
Stateful, Stateless and Serverless - Running Apache Kafka® on Kubernetes
War Stories: DIY Kafka
Building an Event-oriented Data Platform with Kafka, Eric Sammer

What's hot (20)

PDF
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
PDF
The Road Most Traveled: A Kafka Story | Heikki Nousiainen, Aiven
PDF
Events and metrics the Lifeblood of Webops
PDF
Building Event-Driven Services with Apache Kafka
PDF
Full Stack Reactive In Practice
PDF
Can Apache Kafka Replace a Database? – The 2021 Update | Kai Waehner, Confluent
PDF
Mainframe Integration, Offloading and Replacement with Apache Kafka | Kai Wae...
PDF
APAC Kafka Summit - Best Of
PPTX
Cloud-Based Event Stream Processing Architectures and Patterns with Apache Ka...
PDF
Synchronous Commands over Apache Kafka (Neil Buesing, Object Partners, Inc) K...
PDF
Writing Blazing Fast, and Production-Ready Kafka Streams apps in less than 30...
PDF
user Behavior Analysis with Session Windows and Apache Kafka's Streams API
PPTX
A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...
PPTX
Running Kafka for Maximum Pain
PDF
The New Way of Configuring Grace Periods for Windowed Operations in Kafka Str...
PDF
Metrics Are Not Enough: Monitoring Apache Kafka and Streaming Applications
PDF
Common Patterns of Multi Data-Center Architectures with Apache Kafka
PDF
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
PDF
Supercharge Your Real-time Event Processing with Neo4j's Streams Kafka Connec...
PPTX
Data Streaming with Apache Kafka & MongoDB
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
The Road Most Traveled: A Kafka Story | Heikki Nousiainen, Aiven
Events and metrics the Lifeblood of Webops
Building Event-Driven Services with Apache Kafka
Full Stack Reactive In Practice
Can Apache Kafka Replace a Database? – The 2021 Update | Kai Waehner, Confluent
Mainframe Integration, Offloading and Replacement with Apache Kafka | Kai Wae...
APAC Kafka Summit - Best Of
Cloud-Based Event Stream Processing Architectures and Patterns with Apache Ka...
Synchronous Commands over Apache Kafka (Neil Buesing, Object Partners, Inc) K...
Writing Blazing Fast, and Production-Ready Kafka Streams apps in less than 30...
user Behavior Analysis with Session Windows and Apache Kafka's Streams API
A Look into the Mirror: Patterns and Best Practices for MirrorMaker2 | Cliff ...
Running Kafka for Maximum Pain
The New Way of Configuring Grace Periods for Windowed Operations in Kafka Str...
Metrics Are Not Enough: Monitoring Apache Kafka and Streaming Applications
Common Patterns of Multi Data-Center Architectures with Apache Kafka
Scaling a backend for a big data and blockchain environment by Rafael Ríos at...
Supercharge Your Real-time Event Processing with Neo4j's Streams Kafka Connec...
Data Streaming with Apache Kafka & MongoDB
Ad

Viewers also liked (18)

PDF
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
PPTX
Tips, Tricks and Tools for Running Containers Like a Pro - Rancher Labs April...
PDF
Orsys - Cycle certifiant - Responsable Infrastructure Cloud
PDF
Meetup Docker Marseille 20160628 - Présentation de Rancher
PPTX
Release With Maven
PPTX
The ultimate container monitoring bake-off - Rancher Online Meetup October 2016
PPTX
Tosca explained
PDF
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
PDF
Building Distributed Systems with Netflix OSS and Spring Cloud
PDF
Apache Hadoop YARN
PDF
Reactor 3.0, a reactive foundation for java 8 and Spring
PDF
Cloud Native Microservices with Spring Cloud
PPTX
Functional Reactive Programming with RxJS
PDF
Pivotal Digital Transformation Forum: Becoming a Data Driven Enterprise
PPTX
More tips and tricks for running containers like a pro - Rancher Online MEetu...
PDF
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
PDF
Cloud Foundry Technical Overview
PDF
Lean Enterprise, Microservices and Big Data
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
Tips, Tricks and Tools for Running Containers Like a Pro - Rancher Labs April...
Orsys - Cycle certifiant - Responsable Infrastructure Cloud
Meetup Docker Marseille 20160628 - Présentation de Rancher
Release With Maven
The ultimate container monitoring bake-off - Rancher Online Meetup October 2016
Tosca explained
#GeodeSummit - Using Geode as Operational Data Services for Real Time Mobile ...
Building Distributed Systems with Netflix OSS and Spring Cloud
Apache Hadoop YARN
Reactor 3.0, a reactive foundation for java 8 and Spring
Cloud Native Microservices with Spring Cloud
Functional Reactive Programming with RxJS
Pivotal Digital Transformation Forum: Becoming a Data Driven Enterprise
More tips and tricks for running containers like a pro - Rancher Online MEetu...
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry Technical Overview
Lean Enterprise, Microservices and Big Data
Ad

Similar to Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan (20)

PDF
Red Hat Openshift on Microsoft Azure
PDF
Spring Boot & Spring Cloud on Pivotal Application Service
PPTX
Spring on PAS - Fabio Marinelli
PDF
OpenStack and Cloud Foundry - Pair the leading open source IaaS and PaaS
PPTX
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
PDF
Spring and Pivotal Application Service - SpringOne Tour Dallas
PDF
SpringBoot and Spring Cloud Service for MSA
PPTX
Microservices with kubernetes @190316
PDF
CI and CD with Spinnaker
PPTX
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
PDF
PCF: Platform for a New Era - Kubernetes for the Enterprise - London
PDF
Sukumar Nayak-Agile-DevOps-Cloud Management
PDF
Spring and Pivotal Application Service - SpringOne Tour - Boston
PPTX
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
PPTX
Building 12-factor Cloud Native Microservices
PPTX
Cloud-Native Workshop New York- Pivotal
PPTX
Simplify DevOps with Microservices and Mobile Backends.pptx
PDF
The Future of Cloud Innovation, featuring Adrian Cockcroft
PDF
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
PDF
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Red Hat Openshift on Microsoft Azure
Spring Boot & Spring Cloud on Pivotal Application Service
Spring on PAS - Fabio Marinelli
OpenStack and Cloud Foundry - Pair the leading open source IaaS and PaaS
Spring Boot & Spring Cloud Apps on Pivotal Application Service - Daniel Lavoie
Spring and Pivotal Application Service - SpringOne Tour Dallas
SpringBoot and Spring Cloud Service for MSA
Microservices with kubernetes @190316
CI and CD with Spinnaker
SpringOne Tour Denver - Spring Boot & Spring Cloud on Pivotal Application Ser...
PCF: Platform for a New Era - Kubernetes for the Enterprise - London
Sukumar Nayak-Agile-DevOps-Cloud Management
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Building 12-factor Cloud Native Microservices
Cloud-Native Workshop New York- Pivotal
Simplify DevOps with Microservices and Mobile Backends.pptx
The Future of Cloud Innovation, featuring Adrian Cockcroft
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...

More from PivotalOpenSourceHub (20)

PPTX
Zettaset Elastic Big Data Security for Greenplum Database
PPTX
New Security Framework in Apache Geode
PPTX
Apache Geode Clubhouse - WAN-based Replication
PDF
#GeodeSummit: Easy Ways to Become a Contributor to Apache Geode
PDF
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
PDF
#GeodeSummit: Combining Stream Processing and In-Memory Data Grids for Near-R...
PPTX
#GeodeSummit - Off-Heap Storage Current and Future Design
PDF
#GeodeSummit - Redis to Geode Adaptor
PDF
#GeodeSummit - Integration & Future Direction for Spring Cloud Data Flow & Geode
PPTX
#GeodeSummit - Spring Data GemFire API Current and Future
PDF
#GeodeSummit - Modern manufacturing powered by Spring XD and Geode
PDF
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
PDF
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
PDF
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
PDF
#GeodeSummit - Apex & Geode: In-memory streaming, storage & analytics
PDF
#GeodeSummit - Where Does Geode Fit in Modern System Architectures
PDF
#GeodeSummit - Design Tradeoffs in Distributed Systems
PDF
#GeodeSummit - Wall St. Derivative Risk Solutions Using Geode
PDF
Building Apps with Distributed In-Memory Computing Using Apache Geode
PPTX
GPORCA: Query Optimization as a Service
Zettaset Elastic Big Data Security for Greenplum Database
New Security Framework in Apache Geode
Apache Geode Clubhouse - WAN-based Replication
#GeodeSummit: Easy Ways to Become a Contributor to Apache Geode
#GeodeSummit Keynote: Creating the Future of Big Data Through 'The Apache Way"
#GeodeSummit: Combining Stream Processing and In-Memory Data Grids for Near-R...
#GeodeSummit - Off-Heap Storage Current and Future Design
#GeodeSummit - Redis to Geode Adaptor
#GeodeSummit - Integration & Future Direction for Spring Cloud Data Flow & Geode
#GeodeSummit - Spring Data GemFire API Current and Future
#GeodeSummit - Modern manufacturing powered by Spring XD and Geode
#GeodeSummit - Large Scale Fraud Detection using GemFire Integrated with Gree...
#GeodeSummit: Democratizing Fast Analytics with Ampool (Powered by Apache Geode)
#GeodeSummit: Architecting Data-Driven, Smarter Cloud Native Apps with Real-T...
#GeodeSummit - Apex & Geode: In-memory streaming, storage & analytics
#GeodeSummit - Where Does Geode Fit in Modern System Architectures
#GeodeSummit - Design Tradeoffs in Distributed Systems
#GeodeSummit - Wall St. Derivative Risk Solutions Using Geode
Building Apps with Distributed In-Memory Computing Using Apache Geode
GPORCA: Query Optimization as a Service

Recently uploaded (20)

PDF
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
PDF
.pdf is not working space design for the following data for the following dat...
PPT
Reliability_Chapter_ presentation 1221.5784
PPTX
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
PDF
Fluorescence-microscope_Botany_detailed content
PPT
Miokarditis (Inflamasi pada Otot Jantung)
PPTX
climate analysis of Dhaka ,Banglades.pptx
PPTX
Business Acumen Training GuidePresentation.pptx
PPTX
Acceptance and paychological effects of mandatory extra coach I classes.pptx
PDF
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
PPTX
IB Computer Science - Internal Assessment.pptx
PPT
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
PPTX
Introduction-to-Cloud-ComputingFinal.pptx
PPTX
STUDY DESIGN details- Lt Col Maksud (21).pptx
PPTX
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
PPTX
MODULE 8 - DISASTER risk PREPAREDNESS.pptx
PDF
Launch Your Data Science Career in Kochi – 2025
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PDF
Foundation of Data Science unit number two notes
“Getting Started with Data Analytics Using R – Concepts, Tools & Case Studies”
.pdf is not working space design for the following data for the following dat...
Reliability_Chapter_ presentation 1221.5784
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
Fluorescence-microscope_Botany_detailed content
Miokarditis (Inflamasi pada Otot Jantung)
climate analysis of Dhaka ,Banglades.pptx
Business Acumen Training GuidePresentation.pptx
Acceptance and paychological effects of mandatory extra coach I classes.pptx
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
IB Computer Science - Internal Assessment.pptx
Chapter 3 METAL JOINING.pptnnnnnnnnnnnnn
Introduction-to-Cloud-ComputingFinal.pptx
STUDY DESIGN details- Lt Col Maksud (21).pptx
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
MODULE 8 - DISASTER risk PREPAREDNESS.pptx
Launch Your Data Science Career in Kochi – 2025
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
Foundation of Data Science unit number two notes

Pivoting Spring XD to Spring Cloud Data Flow with Sabby Anandan