SlideShare a Scribd company logo
1 of 91
Download to read offline
Exactly Once, Large-Scale
Stream Processing in Action
Not Less, Not More
Paris Carbone
Committer @ Apache Flink
PhD Candidate @ KTH
@FOSDEM 2017
@SenorCarbone
Data Stream Processors
Data Stream
Processor
can set up any data
pipeline for you
http://edge.alluremedia.com.au/m/l/2014/10/CoolingPipes.jpg
With Data Stream Processors
• sub-second latency and high throughput
finally coexist
With Data Stream Processors
• sub-second latency and high throughput
finally coexist
• late data* is handled gracefully
With Data Stream Processors
* http://dl.acm.org/citation.cfm?id=2824076
• sub-second latency and high throughput
finally coexist
• late data* is handled gracefully
• and btw data stream pipelines run 365/24/7
consistently without any issues in general.
With Data Stream Processors
* http://dl.acm.org/citation.cfm?id=2824076
• sub-second latency and high throughput
finally coexist
• late data* is handled gracefully
• and btw data stream pipelines run 365/24/7
consistently without any issues in general.
• wait…what?
With Data Stream Processors
* http://dl.acm.org/citation.cfm?id=2824076
So…what about
So…what about
handling failures!
application updates
reconfiguring/upgrading the system
adding more/less workers
So…what about
handling failures!
application updates
reconfiguring/upgrading the system
adding more/less workers
is it realistic to expect the thing run forever correctly?
we cannot eliminate entropy
we cannot eliminate entropy
but in a fail-recovery model
…we can turn back time and try again
Let’s talk about Guarantees
Let’s talk about Guarantees
guaranteed tuple processing
exactly once!
transactional processing
processing
output
idempotent writes
end-to-end
resilient state
high availability
deterministic processing
delivery
at-least once
at-most once
What Guarantees
1) Processing
• Output
• Delivery
• End-to-End
2)
system
outside world
What Guarantees
Processing Guarantees
Processing Guarantees
• Why should we care?
• Processing creates side effects inside the
system’s internal state.
• Less or more processing sometimes means
incorrect internal state.
Processing Guarantees
Processing Guarantees
• At-Most Once: the system might process less
(e.g., ignoring data if overloaded)
• At-Least Once: the system might process more
(e.g., replaying input)
• Exactly Once: the system behaves as if input
data are processed exactly once
At-Least Once Processing
• Useful when repetition can be tolerated.
• Already offered by logs (e.g., Kafka, Kinesis)
• Manual Logging & Bookkeeping (Storm < v.2)
At-Least Once Processing
At-Least Once Processing
1 1 1
1
At-Least Once Processing
1 1
1
At-Least Once Processing
1 1
1
At-Least Once Processing
12 2
2
Exactly Once Processing
Exactly Once Processing
It is a bit trickier. We need to make sure that
1. Data leaves sides effects only once
2. Failure Recovery/Re-Scaling do not
impact the correct execution of the
system
Exactly Once Processing
A fine-grained solution…
Maintain a log for each operation*
persistent
store
* http://dl.acm.org/citation.cfm?id=2536229
1
1 2
1 2
3
Exactly Once Processing
A fine-grained solution…
Maintain a log for each operation*
Exactly Once Processing
A fine-grained solution…
Maintain a log for each operation*
• It allows for fine grained failure recovery and trivial
reconfiguration.
• Can be optimised to batch writes
However:
• It requires a finely-tuned performant store
• Can cause aggressive write/append congestion
Remember cassettes?
Remember cassettes?
Remember cassettes?
Remember cassettes?
durable logs similarly allow you to rollback input
Remember cassettes?
durable logs similarly allow you to rollback input
Remember cassettes?
durable logs similarly allow you to rollback input
in parallel
Remember cassettes?
durable logs similarly allow you to rollback input
in parallel
from specific offsets
Remember cassettes?
durable logs similarly allow you to rollback input
in parallel
from specific offsets
Remember cassettes?
durable logs similarly allow you to rollback input
in parallel
from specific offsets
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
part 1
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
part 1 part 2
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
part 1 part 2 part 3 part 4
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
part 1 part 2 part 3 part 4
each part either completes or repeats
Exactly Once Processing
Now a more coarse-grained approach…
Turn continuous computation into a series of transactions
part 1 part 2 part 3 part 4
each part either completes or repeats
also got to capture the global state of the system( )
after processing each part to resume completely if needed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 1
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 1
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 1
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 2
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 2
System State
Store
snap
Snap after each part has being processed
Coarse Grained Fault Tolerance - Illustrated
Type 1
Discrete Execution
(micro-batch)
prepare part 2
System State
Store
snap
Snap after each part has being processed
Exactly Once Processing
*http://shivaram.org/drafts/drizzle.pdf
Exactly Once Processing
Micro-batching:
• A fine example of discretely emulating continuous
processing as a series of transactions.
• However:
• It enforces a somewhat inconvenient think-like-a-batch
logic for a continuous processing programming model.
• Causes unnecessarily high periodic scheduling
latency (can be traded over higher reconfiguration
latency by pre-scheduling multiple micro-batches*
)
*http://shivaram.org/drafts/drizzle.pdf
Type 2
Long-Running
Synchronous
System State
Store
snap
Coarse Grained Fault Tolerance - Illustrated
Snap while each part is being processed
Type 2
Long-Running
Synchronous
System State
Store
snap
halt & snap!
Coarse Grained Fault Tolerance - Illustrated
Snap while each part is being processed
Type 2
Long-Running
Synchronous
System State
Store
snap
+
halt & snap!
in-transit
events
to replay
Coarse Grained Fault Tolerance - Illustrated
Snap while each part is being processed
Type 2
Long-Running
Synchronous
System State
Store
snap
+
halt & snap!
in-transit
events
to replay
Coarse Grained Fault Tolerance - Illustrated
Snap while each part is being processed
we want to capture
distributed state without
✴ enforcing it in the API or
✴ disrupting the execution
we want to capture
distributed state without
✴ enforcing it in the API or
✴ disrupting the execution
also, do we really need those in-transit events?
“The global-state-detection algorithm is to be
superimposed on the underlying computation:
it must run concurrently with, but not alter, this
underlying computation”
Leslie Lamport
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
insert markers
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
align to prioritise
records of part 1
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
align to prioritise
records of part 1
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Type 3
Long Running
Pipelined*
System State
Store
snap
got a full snapshot!
with no records
in-transit
* https://arxiv.org/abs/1506.08603
Coarse Grained Fault Tolerance - Illustrated
Snap just in time!
Facts about Flink’s Snapshotting
*http://lamport.azurewebsites.net/pubs/chandy.pdf
Facts about Flink’s Snapshotting
• It pipelines naturally with the data-flow (respecting
back-pressure etc.)
• We can get at-least-once processing guarantees
by simply dropping aligning (try it)
• Tailors Chandy-Lamport’s original approach* to
dataflow graphs (with minimal snapshot state &
messages)
• It can also work for cycles (with a minor modification)
*http://lamport.azurewebsites.net/pubs/chandy.pdf
Supporting Cycles
Supporting Cycles
Problem: we cannot wait indefinitely for records in cycles
Supporting Cycles
Problem: we cannot wait indefinitely for records in cycles
Solution: log those
records as part of the
snapshot.
Replay upon recovery.
https://github.com/apache/flink/pull/1668
Output Guarantees
Is this a thing?
Output Guarantees
1. Can’t, it’s distributed
Is this a thing?
Output Guarantees
1. Can’t, it’s distributed
2. Yep easy
Is this a thing?
Output Guarantees
1. Can’t, it’s distributed
2. Yep easy
3. It depends ;)
Is this a thing?
Output Guarantees
1. Can’t, it’s distributed
2. Yep easy
3. It depends ;)
Is this a thing?
Output Guarantees
• Idempontency ~ repeated operations give the
same output result. (e.g., Flink’s Cassandra sink*)
• Rolling Files ~ Pipeline output is bucketed and
committed when a checkpoint is complete
otherwise we roll it back. (see Flink’s HDFS
RollingSink**)
*https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/connectors/cassandra.html
**https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/connectors/filesystem_sink.html
in-progress pending pending committed
Exactly Once Output
so no design flaws possible…
right?
Sir, about that Job Manager…
shoot	here	to	
detonate
>	Abort	Mission!	They	have	HA
High Availability
Zookeeper
State
• Current Leader (elected)
• Pending Pipeline Metadata
• State Snapshot Metadata
zab
JM JM JM
Perks of using Flink today (v1.2)
• Key-space partitioning and key group allocation
• Job Rescaling - from snapshots ;)
• Async state snapshots in Rocksdb
• Managed State Structures - ListState (append only),
ValueState, ReducingState
• Externalised Checkpoints for custom cherry picking
to rollback.
• Adhoc checkpoints (savepoints)
Coming up next
Autoscaling
Incremental Snapshots
Durable Iterative Processing
Acknowledgements
• Stephan Ewen, Ufuk Celebi, Aljoscha Krettek
(and more folks at dataArtisans)
• Gyula Fóra (King.com)
and all contributors who have put code, effort and thought
to build this unique state management system.
Exactly Once, Large-Scale
Stream Processing in Action
Not Less, Not More
@SenorCarbone

More Related Content

What's hot

Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache ZeppelinMoon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Flink Forward
 
Tran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
Tran Nam-Luc – Stale Synchronous Parallel Iterations on FlinkTran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
Tran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
Flink Forward
 
Dongwon Kim – A Comparative Performance Evaluation of Flink
Dongwon Kim – A Comparative Performance Evaluation of FlinkDongwon Kim – A Comparative Performance Evaluation of Flink
Dongwon Kim – A Comparative Performance Evaluation of Flink
Flink Forward
 
Christian Kreuzfeld – Static vs Dynamic Stream Processing
Christian Kreuzfeld – Static vs Dynamic Stream ProcessingChristian Kreuzfeld – Static vs Dynamic Stream Processing
Christian Kreuzfeld – Static vs Dynamic Stream Processing
Flink Forward
 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Flink Forward
 

What's hot (20)

Apache Flink Training: System Overview
Apache Flink Training: System OverviewApache Flink Training: System Overview
Apache Flink Training: System Overview
 
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache ZeppelinMoon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
 
A look at Flink 1.2
A look at Flink 1.2A look at Flink 1.2
A look at Flink 1.2
 
Pulsar connector on flink 1.14
Pulsar connector on flink 1.14Pulsar connector on flink 1.14
Pulsar connector on flink 1.14
 
Tran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
Tran Nam-Luc – Stale Synchronous Parallel Iterations on FlinkTran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
Tran Nam-Luc – Stale Synchronous Parallel Iterations on Flink
 
Dongwon Kim – A Comparative Performance Evaluation of Flink
Dongwon Kim – A Comparative Performance Evaluation of FlinkDongwon Kim – A Comparative Performance Evaluation of Flink
Dongwon Kim – A Comparative Performance Evaluation of Flink
 
Don't Cross The Streams - Data Streaming And Apache Flink
Don't Cross The Streams  - Data Streaming And Apache FlinkDon't Cross The Streams  - Data Streaming And Apache Flink
Don't Cross The Streams - Data Streaming And Apache Flink
 
Stateful stream processing with Apache Flink
Stateful stream processing with Apache FlinkStateful stream processing with Apache Flink
Stateful stream processing with Apache Flink
 
Flink. Pure Streaming
Flink. Pure StreamingFlink. Pure Streaming
Flink. Pure Streaming
 
Unified Stream and Batch Processing with Apache Flink
Unified Stream and Batch Processing with Apache FlinkUnified Stream and Batch Processing with Apache Flink
Unified Stream and Batch Processing with Apache Flink
 
An Introduction to Distributed Data Streaming
An Introduction to Distributed Data StreamingAn Introduction to Distributed Data Streaming
An Introduction to Distributed Data Streaming
 
Christian Kreuzfeld – Static vs Dynamic Stream Processing
Christian Kreuzfeld – Static vs Dynamic Stream ProcessingChristian Kreuzfeld – Static vs Dynamic Stream Processing
Christian Kreuzfeld – Static vs Dynamic Stream Processing
 
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
Keynote: Building and Operating A Serverless Streaming Runtime for Apache Bea...
 
Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)
Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)
Stream Processing with Apache Flink (Flink.tw Meetup 2016/07/19)
 
Zurich Flink Meetup
Zurich Flink MeetupZurich Flink Meetup
Zurich Flink Meetup
 
SICS: Apache Flink Streaming
SICS: Apache Flink StreamingSICS: Apache Flink Streaming
SICS: Apache Flink Streaming
 
Flink history, roadmap and vision
Flink history, roadmap and visionFlink history, roadmap and vision
Flink history, roadmap and vision
 
Marton Balassi – Stateful Stream Processing
Marton Balassi – Stateful Stream ProcessingMarton Balassi – Stateful Stream Processing
Marton Balassi – Stateful Stream Processing
 
Till Rohrmann - Dynamic Scaling - How Apache Flink adapts to changing workloads
Till Rohrmann - Dynamic Scaling - How Apache Flink adapts to changing workloadsTill Rohrmann - Dynamic Scaling - How Apache Flink adapts to changing workloads
Till Rohrmann - Dynamic Scaling - How Apache Flink adapts to changing workloads
 
A Data Streaming Architecture with Apache Flink (berlin Buzzwords 2016)
A Data Streaming Architecture with Apache Flink (berlin Buzzwords 2016)A Data Streaming Architecture with Apache Flink (berlin Buzzwords 2016)
A Data Streaming Architecture with Apache Flink (berlin Buzzwords 2016)
 

Viewers also liked

Aggregate Sharing for User-Define Data Stream Windows
Aggregate Sharing for User-Define Data Stream WindowsAggregate Sharing for User-Define Data Stream Windows
Aggregate Sharing for User-Define Data Stream Windows
Paris Carbone
 
Real time machine learning
Real time machine learningReal time machine learning
Real time machine learning
Vinoth Kannan
 
Realtime Analytical Query Processing and Predictive Model Building on High Di...
Realtime Analytical Query Processing and Predictive Model Building on High Di...Realtime Analytical Query Processing and Predictive Model Building on High Di...
Realtime Analytical Query Processing and Predictive Model Building on High Di...
Spark Summit
 

Viewers also liked (20)

Aggregate Sharing for User-Define Data Stream Windows
Aggregate Sharing for User-Define Data Stream WindowsAggregate Sharing for User-Define Data Stream Windows
Aggregate Sharing for User-Define Data Stream Windows
 
Real-Time Machine Learning at Industrial scale (University of Oxford, 9th Oct...
Real-Time Machine Learning at Industrial scale (University of Oxford, 9th Oct...Real-Time Machine Learning at Industrial scale (University of Oxford, 9th Oct...
Real-Time Machine Learning at Industrial scale (University of Oxford, 9th Oct...
 
Real time machine learning
Real time machine learningReal time machine learning
Real time machine learning
 
Apache Storm vs. Spark Streaming – two Stream Processing Platforms compared
Apache Storm vs. Spark Streaming – two Stream Processing Platforms comparedApache Storm vs. Spark Streaming – two Stream Processing Platforms compared
Apache Storm vs. Spark Streaming – two Stream Processing Platforms compared
 
Apache NiFi Meetup - Princeton NJ 2016
Apache NiFi Meetup - Princeton NJ 2016Apache NiFi Meetup - Princeton NJ 2016
Apache NiFi Meetup - Princeton NJ 2016
 
Pivotal CF and Continuous Delivery
Pivotal CF and Continuous DeliveryPivotal CF and Continuous Delivery
Pivotal CF and Continuous Delivery
 
Building the Ideal Stack for Machine Learning
Building the Ideal Stack for Machine LearningBuilding the Ideal Stack for Machine Learning
Building the Ideal Stack for Machine Learning
 
Streaming with Oracle Data Integration
Streaming with Oracle Data IntegrationStreaming with Oracle Data Integration
Streaming with Oracle Data Integration
 
Real-time Twitter Sentiment Analysis and Image Recognition with Apache NiFi
Real-time Twitter Sentiment Analysis and Image Recognition with Apache NiFiReal-time Twitter Sentiment Analysis and Image Recognition with Apache NiFi
Real-time Twitter Sentiment Analysis and Image Recognition with Apache NiFi
 
Hadoop Security
Hadoop SecurityHadoop Security
Hadoop Security
 
Redis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis UsageRedis for Security Data : SecurityScorecard JVM Redis Usage
Redis for Security Data : SecurityScorecard JVM Redis Usage
 
The Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with SparkThe Fast Path to Building Operational Applications with Spark
The Fast Path to Building Operational Applications with Spark
 
Realtime Analytical Query Processing and Predictive Model Building on High Di...
Realtime Analytical Query Processing and Predictive Model Building on High Di...Realtime Analytical Query Processing and Predictive Model Building on High Di...
Realtime Analytical Query Processing and Predictive Model Building on High Di...
 
JustGiving – Serverless Data Pipelines, API, Messaging and Stream Processing
JustGiving – Serverless Data Pipelines,  API, Messaging and Stream ProcessingJustGiving – Serverless Data Pipelines,  API, Messaging and Stream Processing
JustGiving – Serverless Data Pipelines, API, Messaging and Stream Processing
 
Getting started with Azure Event Hubs and Stream Analytics services
Getting started with Azure Event Hubs and Stream Analytics servicesGetting started with Azure Event Hubs and Stream Analytics services
Getting started with Azure Event Hubs and Stream Analytics services
 
Blr hadoop meetup
Blr hadoop meetupBlr hadoop meetup
Blr hadoop meetup
 
Multi-Datacenter Kafka - Strata San Jose 2017
Multi-Datacenter Kafka - Strata San Jose 2017Multi-Datacenter Kafka - Strata San Jose 2017
Multi-Datacenter Kafka - Strata San Jose 2017
 
Storm over gearpump
Storm over gearpumpStorm over gearpump
Storm over gearpump
 
London Apache Kafka Meetup (Jan 2017)
London Apache Kafka Meetup (Jan 2017)London Apache Kafka Meetup (Jan 2017)
London Apache Kafka Meetup (Jan 2017)
 
Driving the On-Demand Economy with Predictive Analytics
Driving the On-Demand Economy with Predictive AnalyticsDriving the On-Demand Economy with Predictive Analytics
Driving the On-Demand Economy with Predictive Analytics
 

Similar to Not Less, Not More: Exactly Once, Large-Scale Stream Processing in Action

Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Severalnines
 

Similar to Not Less, Not More: Exactly Once, Large-Scale Stream Processing in Action (20)

Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
 
When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022When Streaming Needs Batch With Konstantin Knauf | Current 2022
When Streaming Needs Batch With Konstantin Knauf | Current 2022
 
Reactive Streams
Reactive StreamsReactive Streams
Reactive Streams
 
Kudu - Fast Analytics on Fast Data
Kudu - Fast Analytics on Fast DataKudu - Fast Analytics on Fast Data
Kudu - Fast Analytics on Fast Data
 
Automating the Hunt for Non-Obvious Sources of Latency Spreads
Automating the Hunt for Non-Obvious Sources of Latency SpreadsAutomating the Hunt for Non-Obvious Sources of Latency Spreads
Automating the Hunt for Non-Obvious Sources of Latency Spreads
 
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
When it Absolutely, Positively, Has to be There: Reliability Guarantees in Ka...
 
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
9 DevOps Tips for Going in Production with Galera Cluster for MySQL - Slides
 
Best Practice for Achieving High Availability in MariaDB
Best Practice for Achieving High Availability in MariaDBBest Practice for Achieving High Availability in MariaDB
Best Practice for Achieving High Availability in MariaDB
 
ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?ApacheCon BigData - What it takes to process a trillion events a day?
ApacheCon BigData - What it takes to process a trillion events a day?
 
MariaDB High Availability Webinar
MariaDB High Availability WebinarMariaDB High Availability Webinar
MariaDB High Availability Webinar
 
On The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterOn The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL Cluster
 
DBMS Vardhaman.pdf
DBMS Vardhaman.pdfDBMS Vardhaman.pdf
DBMS Vardhaman.pdf
 
Exactly-once Stream Processing Done Right with Matthias J Sax
Exactly-once Stream Processing Done Right with Matthias J SaxExactly-once Stream Processing Done Right with Matthias J Sax
Exactly-once Stream Processing Done Right with Matthias J Sax
 
Kafka Reliability - When it absolutely, positively has to be there
Kafka Reliability - When it absolutely, positively has to be thereKafka Reliability - When it absolutely, positively has to be there
Kafka Reliability - When it absolutely, positively has to be there
 
Apache Kafka Reliability Guarantees StrataHadoop NYC 2015
Apache Kafka Reliability Guarantees StrataHadoop NYC 2015 Apache Kafka Reliability Guarantees StrataHadoop NYC 2015
Apache Kafka Reliability Guarantees StrataHadoop NYC 2015
 
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
2018-04 Kafka Summit London: Stephan Ewen - "Apache Flink and Apache Kafka fo...
 
Debunking Common Myths in Stream Processing
Debunking Common Myths in Stream ProcessingDebunking Common Myths in Stream Processing
Debunking Common Myths in Stream Processing
 
Stephan Ewen - Experiences running Flink at Very Large Scale
Stephan Ewen -  Experiences running Flink at Very Large ScaleStephan Ewen -  Experiences running Flink at Very Large Scale
Stephan Ewen - Experiences running Flink at Very Large Scale
 
02 2017 emea_roadshow_milan_ha
02 2017 emea_roadshow_milan_ha02 2017 emea_roadshow_milan_ha
02 2017 emea_roadshow_milan_ha
 
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQLWebinar slides: An Introduction to Performance Monitoring for PostgreSQL
Webinar slides: An Introduction to Performance Monitoring for PostgreSQL
 

More from Paris Carbone

More from Paris Carbone (6)

Continuous Intelligence - Intersecting Event-Based Business Logic and ML
Continuous Intelligence - Intersecting Event-Based Business Logic and MLContinuous Intelligence - Intersecting Event-Based Business Logic and ML
Continuous Intelligence - Intersecting Event-Based Business Logic and ML
 
Scalable and Reliable Data Stream Processing - Doctorate Seminar
Scalable and Reliable Data Stream Processing - Doctorate SeminarScalable and Reliable Data Stream Processing - Doctorate Seminar
Scalable and Reliable Data Stream Processing - Doctorate Seminar
 
Stream Loops on Flink - Reinventing the wheel for the streaming era
Stream Loops on Flink - Reinventing the wheel for the streaming eraStream Loops on Flink - Reinventing the wheel for the streaming era
Stream Loops on Flink - Reinventing the wheel for the streaming era
 
Asynchronous Epoch Commits for Fast and Reliable Data Stream Execution in Apa...
Asynchronous Epoch Commits for Fast and Reliable Data Stream Execution in Apa...Asynchronous Epoch Commits for Fast and Reliable Data Stream Execution in Apa...
Asynchronous Epoch Commits for Fast and Reliable Data Stream Execution in Apa...
 
A Future Look of Data Stream Processing as an Architecture for AI
A Future Look of Data Stream Processing as an Architecture for AIA Future Look of Data Stream Processing as an Architecture for AI
A Future Look of Data Stream Processing as an Architecture for AI
 
Continuous Deep Analytics
Continuous Deep AnalyticsContinuous Deep Analytics
Continuous Deep Analytics
 

Recently uploaded

一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
pyhepag
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
cyebo
 
一比一原版阿德莱德大学毕业证成绩单如何办理
一比一原版阿德莱德大学毕业证成绩单如何办理一比一原版阿德莱德大学毕业证成绩单如何办理
一比一原版阿德莱德大学毕业证成绩单如何办理
pyhepag
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
cyebo
 
一比一原版西悉尼大学毕业证成绩单如何办理
一比一原版西悉尼大学毕业证成绩单如何办理一比一原版西悉尼大学毕业证成绩单如何办理
一比一原版西悉尼大学毕业证成绩单如何办理
pyhepag
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
pyhepag
 

Recently uploaded (20)

Artificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdfArtificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdf
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
 
How can I successfully sell my pi coins in Philippines?
How can I successfully sell my pi coins in Philippines?How can I successfully sell my pi coins in Philippines?
How can I successfully sell my pi coins in Philippines?
 
how can i exchange pi coins for others currency like Bitcoin
how can i exchange pi coins for others currency like Bitcoinhow can i exchange pi coins for others currency like Bitcoin
how can i exchange pi coins for others currency like Bitcoin
 
Machine Learning for Accident Severity Prediction
Machine Learning for Accident Severity PredictionMachine Learning for Accident Severity Prediction
Machine Learning for Accident Severity Prediction
 
Pre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptxPre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptx
 
MALL CUSTOMER SEGMENTATION USING K-MEANS CLUSTERING.pptx
MALL CUSTOMER SEGMENTATION USING K-MEANS CLUSTERING.pptxMALL CUSTOMER SEGMENTATION USING K-MEANS CLUSTERING.pptx
MALL CUSTOMER SEGMENTATION USING K-MEANS CLUSTERING.pptx
 
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPsWebinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
Webinar One View, Multiple Systems No-Code Integration of Salesforce and ERPs
 
2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call2024 Q1 Tableau User Group Leader Quarterly Call
2024 Q1 Tableau User Group Leader Quarterly Call
 
Supply chain analytics to combat the effects of Ukraine-Russia-conflict
Supply chain analytics to combat the effects of Ukraine-Russia-conflictSupply chain analytics to combat the effects of Ukraine-Russia-conflict
Supply chain analytics to combat the effects of Ukraine-Russia-conflict
 
Slip-and-fall Injuries: Top Workers' Comp Claims
Slip-and-fall Injuries: Top Workers' Comp ClaimsSlip-and-fall Injuries: Top Workers' Comp Claims
Slip-and-fall Injuries: Top Workers' Comp Claims
 
一比一原版阿德莱德大学毕业证成绩单如何办理
一比一原版阿德莱德大学毕业证成绩单如何办理一比一原版阿德莱德大学毕业证成绩单如何办理
一比一原版阿德莱德大学毕业证成绩单如何办理
 
一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理一比一原版纽卡斯尔大学毕业证成绩单如何办理
一比一原版纽卡斯尔大学毕业证成绩单如何办理
 
2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting
 
一比一原版西悉尼大学毕业证成绩单如何办理
一比一原版西悉尼大学毕业证成绩单如何办理一比一原版西悉尼大学毕业证成绩单如何办理
一比一原版西悉尼大学毕业证成绩单如何办理
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
 
AI Imagen for data-storytelling Infographics.pdf
AI Imagen for data-storytelling Infographics.pdfAI Imagen for data-storytelling Infographics.pdf
AI Imagen for data-storytelling Infographics.pdf
 
Easy and simple project file on mp online
Easy and simple project file on mp onlineEasy and simple project file on mp online
Easy and simple project file on mp online
 
basics of data science with application areas.pdf
basics of data science with application areas.pdfbasics of data science with application areas.pdf
basics of data science with application areas.pdf
 

Not Less, Not More: Exactly Once, Large-Scale Stream Processing in Action