SlideShare a Scribd company logo
© 2019 IBM CorporationIBM Event Streams
IBM Event Streams
Apache Kafka® for the Enterprise
A core part of Cloud Pak for Integration
Technical Overview | November 2019
© 2019 IBM CorporationIBM Event Streams
IBM Event Streams is fully
supported Apache Kafka®
with value-add capabilities
2
Powerful Ops Tooling
Award-Winning User Experience
Connector Catalog
Support you can Trust
Unrivalled MQ connectivity
Schema Registry
Geo-replication for DR
IBMEventStreams
© 2019 IBM CorporationIBM Event Streams
Deployment Options to Suit Different Needs
3
Event Streams
for IBM Cloud
Isolated
aaS
Multi-tenant
aaS
IBM Event Streams
Red Hat OpenShift
&
ICP
Container–native Software
X86_64 zLinux
Cloud Pak for Integration
Hosted service on IBM public cloud
Event Streams
API Connect
App Connect
Gateways
Aspera
MQ
Event Streams
Community Edition
Free, unrestricted, unsupported
Get Started at: ibm.com/cloud/event-streams/get-started
Deploy on OpenShift on-premise or on public cloud
© 2019 IBM CorporationIBM Event Streams
IBM Event Streams Builds on Open Container Orchestration Technology
4
Automate
deployment,
scaling, and
management of
containerized
applications
Define, install, and
upgrade Kubernetes
applications
Executable package
of software that
includes everything
needed to run it
Text or image Text or image Text or image
Containers Orchestration Management
Infrastructure as
code to provision
public cloud and on-
premises
environments
Text or image
Provisioning
© 2019 IBM CorporationIBM Event Streams
Apache Kafka orchestrated with Kubernetes
▪ Highly available by design
–Brokers are spread across worker nodes using anti-affinity policies
–Minimizes the risk of down-time in the event of a node outage
▪ Scale the Kafka cluster up with one command
–Safely grows the stateful set, reconfigures the network interfaces and gives you more capacity
▪ Roll out Kafka cluster configuration changes easily
–Make a single configuration change and Event Streams rolls it out across the brokers in the cluster
–Broker availability is managed using health checks to ensure that availability is maintained
5
© 2019 IBM CorporationIBM Event Streams
Safe, Planned Upgrade of Apache Kafka
Upgrade Kafka versions safely and without hassle
▪ First, upgrade the release to a newer version of IBM Event Streams
–Rolling update of the Kafka brokers minimizes disruption
▪ As a separate step, upgrade the broker data and protocol version to complete the upgrade
–Until this point, you can roll back
6
© 2019 IBM CorporationIBM Event Streams 7
Making Apache Kafka Intuitive and Easy
Simple to deploy
• Kafka has many distinct components to deploy,
configure and coordinate for secure connectivity
• Container placement critical to ensure production-
level availability
• Secured network traffic ingress
• Ensuring consistent and repeatable deployment
© 2019 IBM CorporationIBM Event Streams
Making Apache Kafka Intuitive and Easy
8
Monitor status at a glance
Integrated feedback and support
© 2019 IBM CorporationIBM Event Streams
IBM Event Streams
9
External monitoring tools
Datadog, Splunk, etc
Integrated with Key Monitoring Tools
© 2019 IBM CorporationIBM Event Streams
Security – Authentication and Access Control
▪ User and group information controlled centrally
–Integrate with your corporate LDAP through IBM Cloud Private
▪ Control access to Event Streams resources using role-based
access control policies
–Assign roles to users: Viewer, Editor, Operator, Administrator
–Optionally, specify access for individual resources, such as topic T
▪ Application access control using service IDs
–Same concepts as controlling user access
–Can restrict application access to exactly the resources they need
–Prevent accidental or intentional interference between applications
10
Example policy
Permit Bob to write to topic T
User bob
Role Editor
Service Event Streams instance R
Resource T
Type topic
Service
action
Roles Permissions
topic.read Viewer and
above
Read
messages or
config
topic.write Editor and
above
Write
messages
topic.manage Operator and
Administrator
Delete or
change config
© 2019 IBM CorporationIBM Event Streams
Geo-Replication Makes Disaster Recovery Simple
11
Origin
cluster
Destination
cluster
Target is take-over of workload on the destination cluster by business applications within 15 minutes
Easy configuration using the Event Streams UI from the origin cluster sets up the replicator and security credentials
At-least-once reliability so messages are not lost
Destination
topic
Destination
topic
Origin topic
Origin topic
© 2019 IBM CorporationIBM Event Streams
Enhanced resilience with clusters across multiple zones
12
AVAILABILITY ZONE 1
DATACENTER
AVAILABILITY ZONE 3
DATACENTER
AVAILABILITY ZONE 2
DATACENTER
Multi-Availability Zone
•Must have at least 3 zones
•Kafka brokers and ZooKeeper
servers span across zones
•Can tolerate failure of a zone
with no service degradation
•High-speed network with low
latency between zones
required (< 20ms)
© 2019 IBM CorporationIBM Event Streams
Use Existing Data in New Ways that Yield Competitive Advantage
Unmatched Connectivity to Core Systems
Connector Catalog REST API
IBM MQ
IBM Cloud Object
Storage
IBM Watson IoT Platform
Databases
IBM Streams Cloud Pak for
Integration
IBM App Connect
Enterprise
Direct integrations
Kafka Connect
framework
IBM DataPower
IBM Z
Applications
IBM Data Replication Change Data
Capture
13
ENHANCED FOR CICS
© 2019 IBM CorporationIBM Event Streams
14
© 2019 IBM CorporationIBM Event Streams
It’s Easy to Connect IBM MQ to Apache Kafka
IBM has created a pair of connectors, available as source code or as part of IBM Event Streams
Source Connector
From MQ queue to Kafka topic
https://github.com/ibm-messaging/kafka-connect-mq-source
Sink Connector
From Kafka topic to MQ queue
https://github.com/ibm-messaging/kafka-connect-mq-sink
▪ Copies messages from MQ queues to Event Streams topics and vice versa
▪ Supports all current MQ versions (MQ v8 or later, all platforms)
▪ Extend the connector to support any business-specific message format
▪ Fully supported by IBM for customers with support entitlement for IBM Event Streams
© 2019 IBM CorporationIBM Event Streams
Running the Connectors for IBM MQ
16
IBM MQ
FROM.MQ.TOPICTO.KAFKA.Q
IBM Event StreamsKafka Connect worker
FROM.KAFKA.Q
MQ Source
Connector
TO.MQ.TOPIC
Kafka Connect worker
MQ Sink
Connector
The connectors are deployed into a component of Apache Kafka called a Kafka Connect worker
This runs between IBM MQ and IBM Event Streams (or open-source Apache Kafka)
CLIENT
CLIENT
© 2019 IBM CorporationIBM Event Streams
Unix System Services
Running the Connectors for IBM MQ on z/OS
17
IBM MQ
FROM.MQ.TOPICTO.KAFKA.Q
IBM Event StreamsKafka Connect worker
FROM.KAFKA.Q
MQ Source
Connector
TO.MQ.TOPIC
Kafka Connect worker
MQ Sink
Connector
The Kafka Connect workers can be deployed onto z/OS Unix System Services
Then, the connection to MQ can be a bindings connection
BINDINGS
BINDINGS
© 2019 IBM CorporationIBM Event Streams
Publish Events from Anywhere with the REST Producer API
IBM has created a new easy-to-use REST Producer API
POST /topics/{topic_name}/records
Content-Type: text/plain
Authorization: Bearer {bearer_token}
Hello Event Streams
▪ Use it wherever it’s difficult to use a real Kafka client e.g. DataPower, z/OS
▪ Straightforward design makes it easy to use from the command line and developer tools
▪ Supports partitioning keys and headers
▪ So easy you can use it from the command line with cURL
18
© 2019 IBM CorporationIBM Event Streams
{
"type": "record",
"name": "Aircraft_schema",
"namespace": "com.mycompany.schemas.aircraft",
"fields": [
{
"name": "Aircraft_number",
"type": "string"
},
{
"name": "GPS_coordinates",
"type": "string"
},
{
"name": "Departure_time",
"type": "string"
},
Avro Schema
Develop Apps Efficiently with a Flexible Schema Registry
App
Schema Registry
App
2. Validate & Serialize 6. Deserialize
3. Send 4. receive
© 2019 IBM CorporationIBM Event Streams
Start Planning your Journey with the IBM Cloud Garage
20
http://ibm.biz/EventDriven
Event-Driven Architecture Center
© 2019 IBM CorporationIBM Event Streams
Ready for Mission-Critical Workloads
21
All with IBM 24x7 worldwide support
IBM has years of experience running Apache Kafka across the globe
© 2019 IBM CorporationIBM Event Streams
Thank You
© 2019 IBM CorporationIBM Event Streams
23
Back Up
© 2019 IBM CorporationIBM Event Streams
Find Out More
Explore IBM Event Streams at
https://ibm.github.io/event-streams/
and try Community Edition for free!
24
Contact us: eventstreams@uk.ibm.com
© 2019 IBM CorporationIBM Event Streams
Understanding Event-driven Terminology
25
▪ An Event is a statement of a fact. Facts are immutable – they can be superseded by new
information, but they don’t change
▪ Additional characteristics of an event-driven application
– Reactive
– Responsive
– Intelligent
▪ Platform capabilities required to deliver Event-driven applications
1. Being able to communicate and persist events
2. Being able to take direct action on events
3. Processing event streams to derive real time insight/intelligence
Event A record that something happened at a particular time
Event Stream A continuous, ordered, unbounded sequence of events
Stream Processing Stateful computation optimized for continuous processing
© 2019 IBM CorporationIBM Event Streams
Components of an Event Streaming Application
26
App
Event Backbone
1
2 App
3
4
Building Blocks
1 :: Event Sources
2 :: Stream Processing
3 :: Event Archive
4 :: Notifications
© 2019 IBM CorporationIBM Event Streams
Message Queuing & Event Streaming focus on different aspects of Messaging
Operations Informational
Messages that represent
some current or future
processing. For instance
request and response
messages.
Messages that represent
the state of the system.
For instance logging,
measurements and
notifications.
Event StreamingMessage Queueing
27
Isn’t This “Just Messaging”?
© 2019 IBM CorporationIBM Event Streams
Request / Reply
Event Streaming & Message Queuing Need Different Capabilities
28
Stream History
Transient Data
Persistence
Immutable data
Scalable
consumption
Targeted
Reliable Delivery
Event
Streaming
Message
Queueing ✓
© 2019 IBM CorporationIBM Event Streams
Technologies and Standards
Messaging Queuing Event Streaming
Technologies IBM MQ
ActiveMQ
RabbitMQ
Amazon SQS
IBM Event Streams
Apache Kafka
Apache Pulsar
Amazon Kinesis
Azure Event Hubs
Protocol
Standards
AMQP (0.91 & 1.0)
JMS
Kafka (de-facto)
29
© 2019 IBM CorporationIBM Event Streams
Message Queuing & Event Streaming Fulfil Different Requirements
Messaging Queuing Event Streaming
Event
Communication
Queues & Pub Sub
Each consumer has messages
delivered to its own queue
Pub Sub
Each consumer has its own offset
into the log
Immutable log No
Would need to be implemented
using separate data store
Yes
Event Sourcing
& Replay
Yes & No
Can read all messages published on
a subscription
Replay requires separate data store
Yes & Yes
30
© 2019 IBM CorporationIBM Event Streams
Intro to Apache Kafka
31
© 2019 IBM CorporationIBM Event Streams
Apache Kafka is an open source,
distributed streaming platform
© 2019
© 2019 IBM CorporationIBM Event Streams
Apache Kafka is an open source,
distributed streaming platform
© 2019
Publish and subscribe to streams of events
Store events in durable way
Process streams of events as they occur
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
Brokers
© 2019
© 2019 IBM CorporationIBM Event Streams
Partitions
© 2019
© 2019 IBM CorporationIBM Event Streams
Replication
© 2019
© 2019 IBM CorporationIBM Event Streams
Replication
© 2019 IBM CorporationIBM Event Streams
Replication
© 2019 IBM CorporationIBM Event Streams
Replication
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
Producers
© 2019 IBM CorporationIBM Event Streams
Topics
© 2019
0 1 2
© 2019 IBM CorporationIBM Event Streams
Topics
© 2019
0 1 2 3
© 2019 IBM CorporationIBM Event Streams
Topics
© 2019
0 1 2 3 4
© 2019 IBM CorporationIBM Event Streams
Topics
© 2019
0 1 2 3 4 5
Offset
© 2019 IBM CorporationIBM Event Streams
Topics and Keys
0 1 2 3
TOPIC
0 1 2 3
0 1 2 3
PARTITION 0
PARTITION 1
PARTITION 2
© 2019 IBM CorporationIBM Event Streams
Retention Period and Compaction
▪ Retention set in time or size
log.retention.minutes = 3000
log.retention.bytes = 1048
© 2019 IBM CorporationIBM Event Streams
Retention Period and Compaction
▪ Retention set in time or size
▪ Compacted topics are evolving data
stores
log.retention.minutes = 3000
log.retention.bytes = 1048
0
key:a
val:A1
1
key:b
val:B1
2
key:a
val:A2
3
key:c
val:C1
4
key:c
val:C2
5
key:b
val:B2
PARTITION 0
© 2019 IBM CorporationIBM Event Streams
Retention Period and Compaction
▪ Retention set in time or size
▪ Compacted topics are evolving data
stores
log.retention.minutes = 3000
log.retention.bytes = 1048
0
key:a
val:A1
1
key:b
val:B1
2
key:a
val:A2
3
key:c
val:C1
4
key:c
val:C2
5
key:b
val:B2
PARTITION 0
2
key:a
val:A2
4
key:c
val:C2
5
key:b
val:B2
PARTITION 0
(REWRITTEN)
© 2019 IBM CorporationIBM Event Streams
Producers and Keys
0 1 2 3 4
TOPIC
0 1 2 3
0 1 2 3 4
PARTITION 0
PARTITION 1
PARTITION 2
4
© 2019 IBM CorporationIBM Event Streams
Producers and Keys
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
4 5
© 2019 IBM CorporationIBM Event Streams
Producers and Keys
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
6
4 5
© 2019 IBM CorporationIBM Event Streams
Producers and Keys
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
6 7
4 5
© 2019 IBM CorporationIBM Event Streams
Producers
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
6 7
4 5
© 2019 IBM CorporationIBM Event Streams
Producers Producer can choose acknowledgement level:
0 Fire-and-forget
Fast, but risky
1 Waits for 1 broker to acknowledge
ALL Waits for all replica brokers to acknowledge
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
6 7
4 5
© 2019 IBM CorporationIBM Event Streams
Producers Producer can choose acknowledgement level:
0 Fire-and-forget
Fast, but risky
1 Waits for 1 broker to acknowledge
ALL Waits for all replica brokers to acknowledge
Producer can choose whether to retry:
0
Do not retry
Loses messages on error
>0
Retry
Retry, might result in duplicates on error
Producer can also choose idempotence
Can retry without risking duplicates
0 1 2 3 4 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
6 7
4 5
© 2019 IBM CorporationIBM Event Streams
Consumers
© 2019 IBM CorporationIBM Event Streams
Consumers
0 1 2 3 4 5 6
CONSUMER B
Offset 5
CONSUMER A
Offset 2
© 2019 IBM CorporationIBM Event Streams
Consumers
0 1 2 3 4 5 6
CONSUMER B
Offset 5
CONSUMER A
Offset 2
Consumer can choose how to commit offsets:
Commits might go faster than processing
Manual,
asynchronous Fairly safe, but could re-process messages
Safe, but slows down processing
Automatic
Manual, synchronous
A common pattern is to commit offsets on a timer
© 2019 IBM CorporationIBM Event Streams
Consumers
0 1 2 3 4 5 6
CONSUMER B
Offset 5
CONSUMER A
Offset 2
Consumer can choose how to commit offsets:
Commits might go faster than processing
Manual,
asynchronous Fairly safe, but could re-process messages
Safe, but slows down processing
Can group sending messages and committing offsets into transactions
Automatic
Manual, synchronous
Exactly once semantics
Primarily aimed at stream processing applications
A common pattern is to commit offsets on a timer
© 2019 IBM CorporationIBM Event Streams
Consumer Groups
© 2019 IBM CorporationIBM Event Streams
Consumer Groups
CONSUMER GROUP A
p0, offset 7
p1, offset 3
p2, offset 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
0 1 2 3 4 5 6 7
CONSUMER
CONSUMER
CONSUMER
CONSUMER GROUP B
p0, offset 7
p1, offset 3
p2, offset 5
CONSUMER
CONSUMER
© 2019 IBM CorporationIBM Event Streams
Consumer Groups
CONSUMER GROUP A
p0, offset 7
p1, offset 3
p2, offset 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
0 1 2 3 4 5 6 7
CONSUMER
CONSUMER
CONSUMER
CONSUMER GROUP B
p0, offset 7
p1, offset 3
p2, offset 5
CONSUMER
CONSUMER
© 2019 IBM CorporationIBM Event Streams
Consumer Groups
CONSUMER GROUP A
p0, offset 7
p1, offset 3
p2, offset 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
0 1 2 3 4 5 6 7
CONSUMER
CONSUMER
CONSUMER
CONSUMER GROUP B
p0, offset 7
p1, offset 3
p2, offset 5
CONSUMER
CONSUMER
© 2019 IBM CorporationIBM Event Streams
Consumer Groups
CONSUMER GROUP A
p0, offset 7
p1, offset 3
p2, offset 5
TOPIC
0 1 2 3
0 1 2 3 4 5
PARTITION 0
PARTITION 1
PARTITION 2
0 1 2 3 4 5 6 7
CONSUMER
CONSUMER
CONSUMER
CONSUMER
CONSUMER GROUP B
p0, offset 7
p1, offset 3
p2, offset 5
CONSUMER
CONSUMER
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
Kafka Streams
▪ Client library for processing and analyzing data stored in
Kafka
▪ Processing happens in the app
▪ Supports per-record processing – no batching
my-input
FILTER
my-output
MAP
© 2019 IBM CorporationIBM Event Streams
Kafka Streams
foo
red
bar
orange
foo
yellow
bingo
green
bingo
blue
bar
purple
INPUT TOPIC
© 2019 IBM CorporationIBM Event Streams
Kafka Streams
foo
red
bar
orange
foo
yellow
bingo
green
bingo
blue
bar
purple
INPUT TOPIC
KStream<String, String> source = builder.stream("my-input")
.filter((key,value) -> key.equals("bingo"))
.map((key,value) -> KeyValue.pair(key, value.toUpperCase()))
.to("my-output");
© 2019 IBM CorporationIBM Event Streams
Kafka Streams
foo
red
bar
orange
foo
yellow
bingo
green
bingo
blue
bar
purple
INPUT TOPIC
KStream<String, String> source = builder.stream("my-input")
.filter((key,value) -> key.equals("bingo"))
.map((key,value) -> KeyValue.pair(key, value.toUpperCase()))
.to("my-output");
bingo
GREEN
bingo
BLUE
OUTPUT TOPIC
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
© 2019 IBM CorporationIBM Event Streams
Kafka Connect – bridge to
cloud-native apps
Event Backbone
© 2019 IBM CorporationIBM Event Streams
Kafka Connect
Over 80 connectors
HDFS
Elasticsearch
MySQL
JDBC
IBM MQ
MQTT
CoAP
+ many others
© 2019 IBM CorporationIBM Event Streams

More Related Content

What's hot

(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
Amazon Web Services
 
IBM MQ in Containers - Think 2018
IBM MQ in Containers - Think 2018IBM MQ in Containers - Think 2018
IBM MQ in Containers - Think 2018
Robert Parker
 
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ ClustersIBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
David Ware
 
IBM DataPower Gateway - Common Use Cases
IBM DataPower Gateway - Common Use CasesIBM DataPower Gateway - Common Use Cases
IBM DataPower Gateway - Common Use Cases
IBM DataPower Gateway
 
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
Amazon Web Services
 
IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)
MarkTaylorIBM
 
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
Amazon Web Services Korea
 
A deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
A deep dive into Amazon MSK - ADB206 - Chicago AWS SummitA deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
A deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
Amazon Web Services
 
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
Amazon Web Services
 
Serverless Architecture and Best Practices
Serverless Architecture and Best PracticesServerless Architecture and Best Practices
Serverless Architecture and Best Practices
Amazon Web Services
 
IBM MQ on cloud and containers
IBM MQ on cloud and containersIBM MQ on cloud and containers
IBM MQ on cloud and containers
Robert Parker
 
IBM MQ cloud architecture blueprint
IBM MQ cloud architecture blueprintIBM MQ cloud architecture blueprint
IBM MQ cloud architecture blueprint
Matt Roberts
 
What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1
Matt Leming
 
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018Amazon Web Services Korea
 
414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration
Trevor Dolby
 
Simplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing ZoneSimplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing Zone
Amazon Web Services
 
Amazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for Kubernetes
Amazon Web Services
 
IBM Integration Bus High Availability Overview
IBM Integration Bus High Availability OverviewIBM Integration Bus High Availability Overview
IBM Integration Bus High Availability Overview
Peter Broadhurst
 
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
VMware Tanzu Korea
 
IBM MQ Update, including 9.1.2 CD
IBM MQ Update, including 9.1.2 CDIBM MQ Update, including 9.1.2 CD
IBM MQ Update, including 9.1.2 CD
David Ware
 

What's hot (20)

(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
(DVO202) DevOps at Amazon: A Look At Our Tools & Processes
 
IBM MQ in Containers - Think 2018
IBM MQ in Containers - Think 2018IBM MQ in Containers - Think 2018
IBM MQ in Containers - Think 2018
 
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ ClustersIBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
 
IBM DataPower Gateway - Common Use Cases
IBM DataPower Gateway - Common Use CasesIBM DataPower Gateway - Common Use Cases
IBM DataPower Gateway - Common Use Cases
 
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
AWS Direct Connect: Deep Dive (NET403) - AWS re:Invent 2018
 
IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)
 
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
 
A deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
A deep dive into Amazon MSK - ADB206 - Chicago AWS SummitA deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
A deep dive into Amazon MSK - ADB206 - Chicago AWS Summit
 
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
 
Serverless Architecture and Best Practices
Serverless Architecture and Best PracticesServerless Architecture and Best Practices
Serverless Architecture and Best Practices
 
IBM MQ on cloud and containers
IBM MQ on cloud and containersIBM MQ on cloud and containers
IBM MQ on cloud and containers
 
IBM MQ cloud architecture blueprint
IBM MQ cloud architecture blueprintIBM MQ cloud architecture blueprint
IBM MQ cloud architecture blueprint
 
What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1
 
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018
비용 관점에서 AWS 클라우드 아키텍처 디자인하기::류한진::AWS Summit Seoul 2018
 
414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration414: Build an agile CI/CD Pipeline for application integration
414: Build an agile CI/CD Pipeline for application integration
 
Simplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing ZoneSimplify & Standardise your migration to AWS with a Migration Landing Zone
Simplify & Standardise your migration to AWS with a Migration Landing Zone
 
Amazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for KubernetesAmazon EKS - Elastic Container Service for Kubernetes
Amazon EKS - Elastic Container Service for Kubernetes
 
IBM Integration Bus High Availability Overview
IBM Integration Bus High Availability OverviewIBM Integration Bus High Availability Overview
IBM Integration Bus High Availability Overview
 
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
MSA 전략 2: 마이크로서비스, 어떻게 구현할 것인가?
 
IBM MQ Update, including 9.1.2 CD
IBM MQ Update, including 9.1.2 CDIBM MQ Update, including 9.1.2 CD
IBM MQ Update, including 9.1.2 CD
 

Similar to Kafka with IBM Event Streams - Technical Presentation

Event driven microservices
Event driven microservicesEvent driven microservices
Event driven microservices
Anthony Martin
 
Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservices
Andrew Schofield
 
App Modernization
App ModernizationApp Modernization
App Modernization
PT Datacomm Diangraha
 
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World ScenariosIBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
Joe Cropper
 
IBM Softlayer Bluemix Marketplace
IBM Softlayer Bluemix MarketplaceIBM Softlayer Bluemix Marketplace
IBM Softlayer Bluemix Marketplace
Simon Baker
 
L105704 ibm-cloud-private-z-cairo-v1902a
L105704 ibm-cloud-private-z-cairo-v1902aL105704 ibm-cloud-private-z-cairo-v1902a
L105704 ibm-cloud-private-z-cairo-v1902a
Tony Pearson
 
CICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdfCICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdf
Amazon Web Services
 
Presentation_ISDC 2014_Jonathan Wisler_SoftLayer
Presentation_ISDC 2014_Jonathan Wisler_SoftLayerPresentation_ISDC 2014_Jonathan Wisler_SoftLayer
Presentation_ISDC 2014_Jonathan Wisler_SoftLayer
IBM Switzerland
 
IBM Message Hub service in Bluemix - Apache Kafka in a public cloud
IBM Message Hub service in Bluemix - Apache Kafka in a public cloudIBM Message Hub service in Bluemix - Apache Kafka in a public cloud
IBM Message Hub service in Bluemix - Apache Kafka in a public cloud
Andrew Schofield
 
Compose Your Digital Enterprise
Compose Your Digital EnterpriseCompose Your Digital Enterprise
Compose Your Digital Enterprise
Prolifics
 
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud PrivateIBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM France Lab
 
Cloudy with SaaS-Shine 18march2015
Cloudy with SaaS-Shine 18march2015Cloudy with SaaS-Shine 18march2015
Cloudy with SaaS-Shine 18march2015
Simon Baker
 
IBM Cloud Integration Platform Introduction - Integration Tech Conference
IBM Cloud Integration Platform Introduction - Integration Tech ConferenceIBM Cloud Integration Platform Introduction - Integration Tech Conference
IBM Cloud Integration Platform Introduction - Integration Tech Conference
Robert Nicholson
 
Achieving scalability & speed with IaaS
Achieving scalability & speed with IaaSAchieving scalability & speed with IaaS
Achieving scalability & speed with IaaS
IBM Software India
 
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
PT Datacomm Diangraha
 
IBM Interconnect 2016 - Hybrid Cloud Messaging
IBM Interconnect 2016 - Hybrid Cloud MessagingIBM Interconnect 2016 - Hybrid Cloud Messaging
IBM Interconnect 2016 - Hybrid Cloud Messaging
Robert Nicholson
 
Accelerating Innovation with Hybrid Cloud
Accelerating Innovation with Hybrid CloudAccelerating Innovation with Hybrid Cloud
Accelerating Innovation with Hybrid Cloud
Jeff Jakubiak
 
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
Hendrik van Run
 
IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)
Sanjay Nayak
 
2011.10.19 - Cloud Partner Day - Reseller Breakout
2011.10.19 - Cloud Partner Day - Reseller Breakout2011.10.19 - Cloud Partner Day - Reseller Breakout
2011.10.19 - Cloud Partner Day - Reseller Breakout
Club Alliances
 

Similar to Kafka with IBM Event Streams - Technical Presentation (20)

Event driven microservices
Event driven microservicesEvent driven microservices
Event driven microservices
 
Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservices
 
App Modernization
App ModernizationApp Modernization
App Modernization
 
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World ScenariosIBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
 
IBM Softlayer Bluemix Marketplace
IBM Softlayer Bluemix MarketplaceIBM Softlayer Bluemix Marketplace
IBM Softlayer Bluemix Marketplace
 
L105704 ibm-cloud-private-z-cairo-v1902a
L105704 ibm-cloud-private-z-cairo-v1902aL105704 ibm-cloud-private-z-cairo-v1902a
L105704 ibm-cloud-private-z-cairo-v1902a
 
CICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdfCICDforModernApplications-Oslo.pdf
CICDforModernApplications-Oslo.pdf
 
Presentation_ISDC 2014_Jonathan Wisler_SoftLayer
Presentation_ISDC 2014_Jonathan Wisler_SoftLayerPresentation_ISDC 2014_Jonathan Wisler_SoftLayer
Presentation_ISDC 2014_Jonathan Wisler_SoftLayer
 
IBM Message Hub service in Bluemix - Apache Kafka in a public cloud
IBM Message Hub service in Bluemix - Apache Kafka in a public cloudIBM Message Hub service in Bluemix - Apache Kafka in a public cloud
IBM Message Hub service in Bluemix - Apache Kafka in a public cloud
 
Compose Your Digital Enterprise
Compose Your Digital EnterpriseCompose Your Digital Enterprise
Compose Your Digital Enterprise
 
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud PrivateIBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
 
Cloudy with SaaS-Shine 18march2015
Cloudy with SaaS-Shine 18march2015Cloudy with SaaS-Shine 18march2015
Cloudy with SaaS-Shine 18march2015
 
IBM Cloud Integration Platform Introduction - Integration Tech Conference
IBM Cloud Integration Platform Introduction - Integration Tech ConferenceIBM Cloud Integration Platform Introduction - Integration Tech Conference
IBM Cloud Integration Platform Introduction - Integration Tech Conference
 
Achieving scalability & speed with IaaS
Achieving scalability & speed with IaaSAchieving scalability & speed with IaaS
Achieving scalability & speed with IaaS
 
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
Creating Microservices Application with IBM Cloud Private (ICP) - introductio...
 
IBM Interconnect 2016 - Hybrid Cloud Messaging
IBM Interconnect 2016 - Hybrid Cloud MessagingIBM Interconnect 2016 - Hybrid Cloud Messaging
IBM Interconnect 2016 - Hybrid Cloud Messaging
 
Accelerating Innovation with Hybrid Cloud
Accelerating Innovation with Hybrid CloudAccelerating Innovation with Hybrid Cloud
Accelerating Innovation with Hybrid Cloud
 
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
IBM Think 2019 session 2116 - Best practices for operating and managing a pro...
 
IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)IBM Bluemix Talk at University College Cork (UCC)
IBM Bluemix Talk at University College Cork (UCC)
 
2011.10.19 - Cloud Partner Day - Reseller Breakout
2011.10.19 - Cloud Partner Day - Reseller Breakout2011.10.19 - Cloud Partner Day - Reseller Breakout
2011.10.19 - Cloud Partner Day - Reseller Breakout
 

More from Winton Winton

Build your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automationBuild your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automation
Winton Winton
 
IBM Robotic Process Automation Fundamentals
IBM Robotic Process Automation FundamentalsIBM Robotic Process Automation Fundamentals
IBM Robotic Process Automation Fundamentals
Winton Winton
 
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
IBM iSeries Terminal Based Performance Testing with Rational Performance TesterIBM iSeries Terminal Based Performance Testing with Rational Performance Tester
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
Winton Winton
 
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, TektonDevops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Winton Winton
 
Open shift 4 infra deep dive
Open shift 4    infra deep diveOpen shift 4    infra deep dive
Open shift 4 infra deep dive
Winton Winton
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
Winton Winton
 
Agile sales and business development
Agile sales and business developmentAgile sales and business development
Agile sales and business development
Winton Winton
 
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overviewEnterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
Winton Winton
 
Rational Team Concert source control for dummies
Rational Team Concert source control for dummiesRational Team Concert source control for dummies
Rational Team Concert source control for dummies
Winton Winton
 

More from Winton Winton (9)

Build your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automationBuild your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automation
 
IBM Robotic Process Automation Fundamentals
IBM Robotic Process Automation FundamentalsIBM Robotic Process Automation Fundamentals
IBM Robotic Process Automation Fundamentals
 
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
IBM iSeries Terminal Based Performance Testing with Rational Performance TesterIBM iSeries Terminal Based Performance Testing with Rational Performance Tester
IBM iSeries Terminal Based Performance Testing with Rational Performance Tester
 
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, TektonDevops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
 
Open shift 4 infra deep dive
Open shift 4    infra deep diveOpen shift 4    infra deep dive
Open shift 4 infra deep dive
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Agile sales and business development
Agile sales and business developmentAgile sales and business development
Agile sales and business development
 
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overviewEnterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
Enterprise Architecture for Dummies - TOGAF 9 enterprise architecture overview
 
Rational Team Concert source control for dummies
Rational Team Concert source control for dummiesRational Team Concert source control for dummies
Rational Team Concert source control for dummies
 

Recently uploaded

Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
abdulrafaychaudhry
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 

Recently uploaded (20)

Pro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp BookPro Unity Game Development with C-sharp Book
Pro Unity Game Development with C-sharp Book
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
Prosigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns: Transforming Business with Tailored Technology Solutions
Prosigns: Transforming Business with Tailored Technology Solutions
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 

Kafka with IBM Event Streams - Technical Presentation

  • 1. © 2019 IBM CorporationIBM Event Streams IBM Event Streams Apache Kafka® for the Enterprise A core part of Cloud Pak for Integration Technical Overview | November 2019
  • 2. © 2019 IBM CorporationIBM Event Streams IBM Event Streams is fully supported Apache Kafka® with value-add capabilities 2 Powerful Ops Tooling Award-Winning User Experience Connector Catalog Support you can Trust Unrivalled MQ connectivity Schema Registry Geo-replication for DR IBMEventStreams
  • 3. © 2019 IBM CorporationIBM Event Streams Deployment Options to Suit Different Needs 3 Event Streams for IBM Cloud Isolated aaS Multi-tenant aaS IBM Event Streams Red Hat OpenShift & ICP Container–native Software X86_64 zLinux Cloud Pak for Integration Hosted service on IBM public cloud Event Streams API Connect App Connect Gateways Aspera MQ Event Streams Community Edition Free, unrestricted, unsupported Get Started at: ibm.com/cloud/event-streams/get-started Deploy on OpenShift on-premise or on public cloud
  • 4. © 2019 IBM CorporationIBM Event Streams IBM Event Streams Builds on Open Container Orchestration Technology 4 Automate deployment, scaling, and management of containerized applications Define, install, and upgrade Kubernetes applications Executable package of software that includes everything needed to run it Text or image Text or image Text or image Containers Orchestration Management Infrastructure as code to provision public cloud and on- premises environments Text or image Provisioning
  • 5. © 2019 IBM CorporationIBM Event Streams Apache Kafka orchestrated with Kubernetes ▪ Highly available by design –Brokers are spread across worker nodes using anti-affinity policies –Minimizes the risk of down-time in the event of a node outage ▪ Scale the Kafka cluster up with one command –Safely grows the stateful set, reconfigures the network interfaces and gives you more capacity ▪ Roll out Kafka cluster configuration changes easily –Make a single configuration change and Event Streams rolls it out across the brokers in the cluster –Broker availability is managed using health checks to ensure that availability is maintained 5
  • 6. © 2019 IBM CorporationIBM Event Streams Safe, Planned Upgrade of Apache Kafka Upgrade Kafka versions safely and without hassle ▪ First, upgrade the release to a newer version of IBM Event Streams –Rolling update of the Kafka brokers minimizes disruption ▪ As a separate step, upgrade the broker data and protocol version to complete the upgrade –Until this point, you can roll back 6
  • 7. © 2019 IBM CorporationIBM Event Streams 7 Making Apache Kafka Intuitive and Easy Simple to deploy • Kafka has many distinct components to deploy, configure and coordinate for secure connectivity • Container placement critical to ensure production- level availability • Secured network traffic ingress • Ensuring consistent and repeatable deployment
  • 8. © 2019 IBM CorporationIBM Event Streams Making Apache Kafka Intuitive and Easy 8 Monitor status at a glance Integrated feedback and support
  • 9. © 2019 IBM CorporationIBM Event Streams IBM Event Streams 9 External monitoring tools Datadog, Splunk, etc Integrated with Key Monitoring Tools
  • 10. © 2019 IBM CorporationIBM Event Streams Security – Authentication and Access Control ▪ User and group information controlled centrally –Integrate with your corporate LDAP through IBM Cloud Private ▪ Control access to Event Streams resources using role-based access control policies –Assign roles to users: Viewer, Editor, Operator, Administrator –Optionally, specify access for individual resources, such as topic T ▪ Application access control using service IDs –Same concepts as controlling user access –Can restrict application access to exactly the resources they need –Prevent accidental or intentional interference between applications 10 Example policy Permit Bob to write to topic T User bob Role Editor Service Event Streams instance R Resource T Type topic Service action Roles Permissions topic.read Viewer and above Read messages or config topic.write Editor and above Write messages topic.manage Operator and Administrator Delete or change config
  • 11. © 2019 IBM CorporationIBM Event Streams Geo-Replication Makes Disaster Recovery Simple 11 Origin cluster Destination cluster Target is take-over of workload on the destination cluster by business applications within 15 minutes Easy configuration using the Event Streams UI from the origin cluster sets up the replicator and security credentials At-least-once reliability so messages are not lost Destination topic Destination topic Origin topic Origin topic
  • 12. © 2019 IBM CorporationIBM Event Streams Enhanced resilience with clusters across multiple zones 12 AVAILABILITY ZONE 1 DATACENTER AVAILABILITY ZONE 3 DATACENTER AVAILABILITY ZONE 2 DATACENTER Multi-Availability Zone •Must have at least 3 zones •Kafka brokers and ZooKeeper servers span across zones •Can tolerate failure of a zone with no service degradation •High-speed network with low latency between zones required (< 20ms)
  • 13. © 2019 IBM CorporationIBM Event Streams Use Existing Data in New Ways that Yield Competitive Advantage Unmatched Connectivity to Core Systems Connector Catalog REST API IBM MQ IBM Cloud Object Storage IBM Watson IoT Platform Databases IBM Streams Cloud Pak for Integration IBM App Connect Enterprise Direct integrations Kafka Connect framework IBM DataPower IBM Z Applications IBM Data Replication Change Data Capture 13 ENHANCED FOR CICS
  • 14. © 2019 IBM CorporationIBM Event Streams 14
  • 15. © 2019 IBM CorporationIBM Event Streams It’s Easy to Connect IBM MQ to Apache Kafka IBM has created a pair of connectors, available as source code or as part of IBM Event Streams Source Connector From MQ queue to Kafka topic https://github.com/ibm-messaging/kafka-connect-mq-source Sink Connector From Kafka topic to MQ queue https://github.com/ibm-messaging/kafka-connect-mq-sink ▪ Copies messages from MQ queues to Event Streams topics and vice versa ▪ Supports all current MQ versions (MQ v8 or later, all platforms) ▪ Extend the connector to support any business-specific message format ▪ Fully supported by IBM for customers with support entitlement for IBM Event Streams
  • 16. © 2019 IBM CorporationIBM Event Streams Running the Connectors for IBM MQ 16 IBM MQ FROM.MQ.TOPICTO.KAFKA.Q IBM Event StreamsKafka Connect worker FROM.KAFKA.Q MQ Source Connector TO.MQ.TOPIC Kafka Connect worker MQ Sink Connector The connectors are deployed into a component of Apache Kafka called a Kafka Connect worker This runs between IBM MQ and IBM Event Streams (or open-source Apache Kafka) CLIENT CLIENT
  • 17. © 2019 IBM CorporationIBM Event Streams Unix System Services Running the Connectors for IBM MQ on z/OS 17 IBM MQ FROM.MQ.TOPICTO.KAFKA.Q IBM Event StreamsKafka Connect worker FROM.KAFKA.Q MQ Source Connector TO.MQ.TOPIC Kafka Connect worker MQ Sink Connector The Kafka Connect workers can be deployed onto z/OS Unix System Services Then, the connection to MQ can be a bindings connection BINDINGS BINDINGS
  • 18. © 2019 IBM CorporationIBM Event Streams Publish Events from Anywhere with the REST Producer API IBM has created a new easy-to-use REST Producer API POST /topics/{topic_name}/records Content-Type: text/plain Authorization: Bearer {bearer_token} Hello Event Streams ▪ Use it wherever it’s difficult to use a real Kafka client e.g. DataPower, z/OS ▪ Straightforward design makes it easy to use from the command line and developer tools ▪ Supports partitioning keys and headers ▪ So easy you can use it from the command line with cURL 18
  • 19. © 2019 IBM CorporationIBM Event Streams { "type": "record", "name": "Aircraft_schema", "namespace": "com.mycompany.schemas.aircraft", "fields": [ { "name": "Aircraft_number", "type": "string" }, { "name": "GPS_coordinates", "type": "string" }, { "name": "Departure_time", "type": "string" }, Avro Schema Develop Apps Efficiently with a Flexible Schema Registry App Schema Registry App 2. Validate & Serialize 6. Deserialize 3. Send 4. receive
  • 20. © 2019 IBM CorporationIBM Event Streams Start Planning your Journey with the IBM Cloud Garage 20 http://ibm.biz/EventDriven Event-Driven Architecture Center
  • 21. © 2019 IBM CorporationIBM Event Streams Ready for Mission-Critical Workloads 21 All with IBM 24x7 worldwide support IBM has years of experience running Apache Kafka across the globe
  • 22. © 2019 IBM CorporationIBM Event Streams Thank You
  • 23. © 2019 IBM CorporationIBM Event Streams 23 Back Up
  • 24. © 2019 IBM CorporationIBM Event Streams Find Out More Explore IBM Event Streams at https://ibm.github.io/event-streams/ and try Community Edition for free! 24 Contact us: eventstreams@uk.ibm.com
  • 25. © 2019 IBM CorporationIBM Event Streams Understanding Event-driven Terminology 25 ▪ An Event is a statement of a fact. Facts are immutable – they can be superseded by new information, but they don’t change ▪ Additional characteristics of an event-driven application – Reactive – Responsive – Intelligent ▪ Platform capabilities required to deliver Event-driven applications 1. Being able to communicate and persist events 2. Being able to take direct action on events 3. Processing event streams to derive real time insight/intelligence Event A record that something happened at a particular time Event Stream A continuous, ordered, unbounded sequence of events Stream Processing Stateful computation optimized for continuous processing
  • 26. © 2019 IBM CorporationIBM Event Streams Components of an Event Streaming Application 26 App Event Backbone 1 2 App 3 4 Building Blocks 1 :: Event Sources 2 :: Stream Processing 3 :: Event Archive 4 :: Notifications
  • 27. © 2019 IBM CorporationIBM Event Streams Message Queuing & Event Streaming focus on different aspects of Messaging Operations Informational Messages that represent some current or future processing. For instance request and response messages. Messages that represent the state of the system. For instance logging, measurements and notifications. Event StreamingMessage Queueing 27 Isn’t This “Just Messaging”?
  • 28. © 2019 IBM CorporationIBM Event Streams Request / Reply Event Streaming & Message Queuing Need Different Capabilities 28 Stream History Transient Data Persistence Immutable data Scalable consumption Targeted Reliable Delivery Event Streaming Message Queueing ✓
  • 29. © 2019 IBM CorporationIBM Event Streams Technologies and Standards Messaging Queuing Event Streaming Technologies IBM MQ ActiveMQ RabbitMQ Amazon SQS IBM Event Streams Apache Kafka Apache Pulsar Amazon Kinesis Azure Event Hubs Protocol Standards AMQP (0.91 & 1.0) JMS Kafka (de-facto) 29
  • 30. © 2019 IBM CorporationIBM Event Streams Message Queuing & Event Streaming Fulfil Different Requirements Messaging Queuing Event Streaming Event Communication Queues & Pub Sub Each consumer has messages delivered to its own queue Pub Sub Each consumer has its own offset into the log Immutable log No Would need to be implemented using separate data store Yes Event Sourcing & Replay Yes & No Can read all messages published on a subscription Replay requires separate data store Yes & Yes 30
  • 31. © 2019 IBM CorporationIBM Event Streams Intro to Apache Kafka 31
  • 32. © 2019 IBM CorporationIBM Event Streams Apache Kafka is an open source, distributed streaming platform © 2019
  • 33. © 2019 IBM CorporationIBM Event Streams Apache Kafka is an open source, distributed streaming platform © 2019 Publish and subscribe to streams of events Store events in durable way Process streams of events as they occur
  • 34. © 2019 IBM CorporationIBM Event Streams
  • 35. © 2019 IBM CorporationIBM Event Streams
  • 36. © 2019 IBM CorporationIBM Event Streams Brokers © 2019
  • 37. © 2019 IBM CorporationIBM Event Streams Partitions © 2019
  • 38. © 2019 IBM CorporationIBM Event Streams Replication © 2019
  • 39. © 2019 IBM CorporationIBM Event Streams Replication
  • 40. © 2019 IBM CorporationIBM Event Streams Replication
  • 41. © 2019 IBM CorporationIBM Event Streams Replication
  • 42. © 2019 IBM CorporationIBM Event Streams
  • 43. © 2019 IBM CorporationIBM Event Streams
  • 44. © 2019 IBM CorporationIBM Event Streams Producers
  • 45. © 2019 IBM CorporationIBM Event Streams Topics © 2019 0 1 2
  • 46. © 2019 IBM CorporationIBM Event Streams Topics © 2019 0 1 2 3
  • 47. © 2019 IBM CorporationIBM Event Streams Topics © 2019 0 1 2 3 4
  • 48. © 2019 IBM CorporationIBM Event Streams Topics © 2019 0 1 2 3 4 5 Offset
  • 49. © 2019 IBM CorporationIBM Event Streams Topics and Keys 0 1 2 3 TOPIC 0 1 2 3 0 1 2 3 PARTITION 0 PARTITION 1 PARTITION 2
  • 50. © 2019 IBM CorporationIBM Event Streams Retention Period and Compaction ▪ Retention set in time or size log.retention.minutes = 3000 log.retention.bytes = 1048
  • 51. © 2019 IBM CorporationIBM Event Streams Retention Period and Compaction ▪ Retention set in time or size ▪ Compacted topics are evolving data stores log.retention.minutes = 3000 log.retention.bytes = 1048 0 key:a val:A1 1 key:b val:B1 2 key:a val:A2 3 key:c val:C1 4 key:c val:C2 5 key:b val:B2 PARTITION 0
  • 52. © 2019 IBM CorporationIBM Event Streams Retention Period and Compaction ▪ Retention set in time or size ▪ Compacted topics are evolving data stores log.retention.minutes = 3000 log.retention.bytes = 1048 0 key:a val:A1 1 key:b val:B1 2 key:a val:A2 3 key:c val:C1 4 key:c val:C2 5 key:b val:B2 PARTITION 0 2 key:a val:A2 4 key:c val:C2 5 key:b val:B2 PARTITION 0 (REWRITTEN)
  • 53. © 2019 IBM CorporationIBM Event Streams Producers and Keys 0 1 2 3 4 TOPIC 0 1 2 3 0 1 2 3 4 PARTITION 0 PARTITION 1 PARTITION 2 4
  • 54. © 2019 IBM CorporationIBM Event Streams Producers and Keys 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 4 5
  • 55. © 2019 IBM CorporationIBM Event Streams Producers and Keys 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 6 4 5
  • 56. © 2019 IBM CorporationIBM Event Streams Producers and Keys 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 6 7 4 5
  • 57. © 2019 IBM CorporationIBM Event Streams Producers 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 6 7 4 5
  • 58. © 2019 IBM CorporationIBM Event Streams Producers Producer can choose acknowledgement level: 0 Fire-and-forget Fast, but risky 1 Waits for 1 broker to acknowledge ALL Waits for all replica brokers to acknowledge 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 6 7 4 5
  • 59. © 2019 IBM CorporationIBM Event Streams Producers Producer can choose acknowledgement level: 0 Fire-and-forget Fast, but risky 1 Waits for 1 broker to acknowledge ALL Waits for all replica brokers to acknowledge Producer can choose whether to retry: 0 Do not retry Loses messages on error >0 Retry Retry, might result in duplicates on error Producer can also choose idempotence Can retry without risking duplicates 0 1 2 3 4 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 6 7 4 5
  • 60. © 2019 IBM CorporationIBM Event Streams Consumers
  • 61. © 2019 IBM CorporationIBM Event Streams Consumers 0 1 2 3 4 5 6 CONSUMER B Offset 5 CONSUMER A Offset 2
  • 62. © 2019 IBM CorporationIBM Event Streams Consumers 0 1 2 3 4 5 6 CONSUMER B Offset 5 CONSUMER A Offset 2 Consumer can choose how to commit offsets: Commits might go faster than processing Manual, asynchronous Fairly safe, but could re-process messages Safe, but slows down processing Automatic Manual, synchronous A common pattern is to commit offsets on a timer
  • 63. © 2019 IBM CorporationIBM Event Streams Consumers 0 1 2 3 4 5 6 CONSUMER B Offset 5 CONSUMER A Offset 2 Consumer can choose how to commit offsets: Commits might go faster than processing Manual, asynchronous Fairly safe, but could re-process messages Safe, but slows down processing Can group sending messages and committing offsets into transactions Automatic Manual, synchronous Exactly once semantics Primarily aimed at stream processing applications A common pattern is to commit offsets on a timer
  • 64. © 2019 IBM CorporationIBM Event Streams Consumer Groups
  • 65. © 2019 IBM CorporationIBM Event Streams Consumer Groups CONSUMER GROUP A p0, offset 7 p1, offset 3 p2, offset 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 0 1 2 3 4 5 6 7 CONSUMER CONSUMER CONSUMER CONSUMER GROUP B p0, offset 7 p1, offset 3 p2, offset 5 CONSUMER CONSUMER
  • 66. © 2019 IBM CorporationIBM Event Streams Consumer Groups CONSUMER GROUP A p0, offset 7 p1, offset 3 p2, offset 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 0 1 2 3 4 5 6 7 CONSUMER CONSUMER CONSUMER CONSUMER GROUP B p0, offset 7 p1, offset 3 p2, offset 5 CONSUMER CONSUMER
  • 67. © 2019 IBM CorporationIBM Event Streams Consumer Groups CONSUMER GROUP A p0, offset 7 p1, offset 3 p2, offset 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 0 1 2 3 4 5 6 7 CONSUMER CONSUMER CONSUMER CONSUMER GROUP B p0, offset 7 p1, offset 3 p2, offset 5 CONSUMER CONSUMER
  • 68. © 2019 IBM CorporationIBM Event Streams Consumer Groups CONSUMER GROUP A p0, offset 7 p1, offset 3 p2, offset 5 TOPIC 0 1 2 3 0 1 2 3 4 5 PARTITION 0 PARTITION 1 PARTITION 2 0 1 2 3 4 5 6 7 CONSUMER CONSUMER CONSUMER CONSUMER CONSUMER GROUP B p0, offset 7 p1, offset 3 p2, offset 5 CONSUMER CONSUMER
  • 69. © 2019 IBM CorporationIBM Event Streams
  • 70. © 2019 IBM CorporationIBM Event Streams
  • 71. © 2019 IBM CorporationIBM Event Streams Kafka Streams ▪ Client library for processing and analyzing data stored in Kafka ▪ Processing happens in the app ▪ Supports per-record processing – no batching my-input FILTER my-output MAP
  • 72. © 2019 IBM CorporationIBM Event Streams Kafka Streams foo red bar orange foo yellow bingo green bingo blue bar purple INPUT TOPIC
  • 73. © 2019 IBM CorporationIBM Event Streams Kafka Streams foo red bar orange foo yellow bingo green bingo blue bar purple INPUT TOPIC KStream<String, String> source = builder.stream("my-input") .filter((key,value) -> key.equals("bingo")) .map((key,value) -> KeyValue.pair(key, value.toUpperCase())) .to("my-output");
  • 74. © 2019 IBM CorporationIBM Event Streams Kafka Streams foo red bar orange foo yellow bingo green bingo blue bar purple INPUT TOPIC KStream<String, String> source = builder.stream("my-input") .filter((key,value) -> key.equals("bingo")) .map((key,value) -> KeyValue.pair(key, value.toUpperCase())) .to("my-output"); bingo GREEN bingo BLUE OUTPUT TOPIC
  • 75. © 2019 IBM CorporationIBM Event Streams
  • 76. © 2019 IBM CorporationIBM Event Streams
  • 77. © 2019 IBM CorporationIBM Event Streams Kafka Connect – bridge to cloud-native apps Event Backbone
  • 78. © 2019 IBM CorporationIBM Event Streams Kafka Connect Over 80 connectors HDFS Elasticsearch MySQL JDBC IBM MQ MQTT CoAP + many others
  • 79. © 2019 IBM CorporationIBM Event Streams