SlideShare a Scribd company logo
Stephan Ewen – data Artisans CTO, Apache Flink PMC
UNLOCKING THE NEXT WAVE
OF STREAMING APPLICATIONS
© 2018 data Artisans2
Streaming Applications over Time
Real time
Approximate
Analytics Fraud
Detection
Online
Machine Learning
Data pipelines
Realtime ETL
Intrusion
Prevention
Financial Risk &
Reporting
Real time
dashboards
Anomaly
Detection
Logistics
Tracking
Recommender
Systems
Web
Applications
Masterdata
Management
Continuous
Processing
Continuous Processing
and Analytics
Unification of
Analytics and Applications
Data-driven
Applications
© 2018 data Artisans3
Enablers of new Applications
Abstractions, APIs Consistency
Event-time, streaming SQL,
state & time, CEP
Exactly-once, savepoints
Scalability
high parallelism, large state
Interoperability
Deployment, Connectors, Operations
© 2018 data Artisans4
Enablers of new Applications
Abstractions, APIs Consistency
Event-time, streaming SQL,
state & time, CEP
Exactly-once, savepoints
Interoperability
Deployment, Connectors, Operations
Steam SQL,
Time-versioned Table Joins,
SQL+CEP, …
Framework and Library,
REST-ified Flink,
SQL Client, …Scalability
high parallelism, large state
Scalable timers,
dynamic scaling,
local recovery, …
© 2018 data Artisans5
Exactly-once Changed Applications
Stateless
Application
K/V Store
CRUD / request/response
Applications
Streaming
Application
State
Stateful Stream
Processing Applications
… become …
© 2018 data Artisans6
Some Applications don't move to Stream Processing
Application
Relational Database
© 2018 data Artisans7
Limitation of Current Stream Processors
Transferring money from one account (key) to another
with transactional guarantees is not feasible
The Limitation Example
All stream processors so far can
update a single key-at-a-time
with correctness guarantees
(exactly once)
© 2018 data Artisans8
Wouldn't it be great if Stream Processors could…
• … access and update state with multiple keys at the same time
• … maintain full isolation/correctness for the multi-key operations
• … operate on multiple states at the same time
• … share the states between multiple streams
© 2018 data Artisans9
TODAY WE ANNOUNCE
The first system for
serializable multi-row ACID transactions
on streaming data
© 2018 data Artisans10
© 2018 data Artisans11
‒ Atomicity: the transfer affects
either both accounts or none
‒ Consistency: the transfer must
only happen if the account have
sufficient funds
‒ Isolation: no other operation can
interfere and cause an incorrect
result
‒ Durability: the result of the
transfer is durable
ACID Transactions for Multi-key Stream Processing
Streaming Ledger provides ACID guarantees
across multiple states, rows, and streams
© 2018 data Artisans12
The Evolution of Stream Processing
accurate single-key applications
Flink pioneered exactly once guarantees on true streaming:
accurate analytics and applications, consistent single key at a time
At-least-once
guarantees
Exactly-once
guarantees
approximate real time analytics
No data loss but possible duplications to support real-time
approximate analytics in a "speed layer" (lamda)
ACID
guarantees
consistent general applications
Streaming Ledger provides ACID guarantees supporting
applications that read and modify several keys
© 2018 data Artisans13
Stateful Streaming vs. Streaming Ledger
Storage
Computing
Single datum /
key at a time
Consistent
total view
data Artisans
Streaming
Ledger
exactly-once
stateful
streaming
Key/Value
Stores
Relational
Databases
© 2018 data Artisans14
Tables, Streams, Transactions
Account Balance Asset Qty.
Deposit Function
Transfer Function
Xfer: A  B: $
Swap: X Y
Deposit: A: $
SUCCESS
A=$, B=$
Transaction Event Streams Transaction Functions Result Streams
© 2018 data Artisans15
Example: Transferring Cash/Assets between Accounts
© 2018 data Artisans16
Example: Position-keeping, Reporting, Risk Management
in Investment Banking
© 2018 data Artisans17
A Library on top of Apache Flink
• No additional dependencies needed
• Seamlessly integrates and composes with
DataStream API and SQL
• Read from- and write to all Flink connectors
• Supports savepoints for upgrades
© 2018 data Artisans18
How does it work?
© 2018 data Artisans19
Relational Database embedded? No!
© 2018 data Artisans20
First-of-a-kind - Unique Approach
Logical Clocks
to define schedule
event re-ordering &
out-of-order processing
Iterative streaming
dataflows
(0xf876ab78|0x0b7cc7a3)
© 2018 data Artisans21
Conflict-free Schedule
Txn: (A,B,C) -> A
Txn: (A,B,C) -> C
Txn: (D,E) -> (D,F)
transaction events
define ordering
for schedule
reorder events to obey schedule
B CA A
D E D F
A CB CA
© 2018 data Artisans22
Performance (early results) - Scalability
(parallelism)
200 million rows
100% update queries
4 rows written/query
© 2018 data Artisans23
Performance (early results) – Key Contention
Artificial case of
extreme contention:
4 x 200,000
= 800,000 updates/sec
on the same 1,000 keys
Slowdown, but does not
break like optimistic
concurrency approaches
100% update queries
4 written/query
© 2018 data Artisans24
Running a distributed setup
… and because we can…
…we run a globally
distributed setup
© 2018 data Artisans25
© 2018 data Artisans26
Apache Flink: The heavy lifter
This technology is possible, because Apache Flink offers such
powerful building blocks
• Continuous processing
• Iterative flows
• Flexible state abstraction
• Asynchronous checkpoints
• Sophisticated event-time/watermarks
© 2018 data Artisans27
Part of data Artisans Platform River Edition
Streaming Ledger is part of data Artisans Platform
• Stream Edition: Apache Flink, Application Manager
• River Edition: Apache Flink, Application Manager, Streaming Ledger
API and single-node implementation under Apache 2.0 license
© 2018 data Artisans28
Learn more at
At the booth
Thank you!
Enjoy the conference!

More Related Content

What's hot (20)

PPTX
Flink Forward Berlin 2018: Timo Walther - "Flink SQL in Action"
Flink Forward
 
PDF
Tuning Flink For Robustness And Performance
Stefan Richter
 
PDF
Big Data LDN 2018: STREAM PROCESSING TAKES ON EVERYTHING
Matt Stubbs
 
PPTX
Using InfluxDB for Full Observability of a SaaS Platform by Aleksandr Tavgen,...
InfluxData
 
PDF
Flink Forward Berlin 2018: Xiaowei Jiang - Keynote: "Unified Engine for Data ...
Flink Forward
 
PPTX
Kurt Schneider [Discover Financial] | How Discover Modernizes Observability w...
InfluxData
 
PDF
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
confluent
 
PDF
Digital Transformation in Healthcare with Kafka—Building a Low Latency Data P...
confluent
 
PPTX
Building Value - Understanding the TCO and ROI of Apache Kafka & Confluent
confluent
 
PPTX
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward
 
PDF
Flink Forward Berlin 2017: Gyula Fora - Building and operating large-scale st...
Flink Forward
 
PDF
Fully-Managed, Multi-Tenant Kafka Clusters: Tips, Tricks, and Tools (Christop...
confluent
 
PPTX
Support Office Hour Webinar - LivePerson API
LivePerson
 
PDF
Getting into the flow building applications with reactive streams
Tim van Eijndhoven
 
PPTX
Flink Forward San Francisco 2018: Andrew Gao & Jeff Sharpe - "Finding Bad Ac...
Flink Forward
 
PDF
Ingesting IoT data in Food Processing
confluent
 
PDF
Flink Forward Berlin 2017: Mihail Vieru - A Materialization Engine for Data I...
Flink Forward
 
PDF
Flink Forward San Francisco 2018: Andrew Torson - "Extending Flink metrics: R...
Flink Forward
 
PDF
Scaling stream data pipelines with Pravega and Apache Flink
Till Rohrmann
 
PDF
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
confluent
 
Flink Forward Berlin 2018: Timo Walther - "Flink SQL in Action"
Flink Forward
 
Tuning Flink For Robustness And Performance
Stefan Richter
 
Big Data LDN 2018: STREAM PROCESSING TAKES ON EVERYTHING
Matt Stubbs
 
Using InfluxDB for Full Observability of a SaaS Platform by Aleksandr Tavgen,...
InfluxData
 
Flink Forward Berlin 2018: Xiaowei Jiang - Keynote: "Unified Engine for Data ...
Flink Forward
 
Kurt Schneider [Discover Financial] | How Discover Modernizes Observability w...
InfluxData
 
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
confluent
 
Digital Transformation in Healthcare with Kafka—Building a Low Latency Data P...
confluent
 
Building Value - Understanding the TCO and ROI of Apache Kafka & Confluent
confluent
 
Flink Forward San Francisco 2018: Fabian Hueske & Timo Walther - "Why and how...
Flink Forward
 
Flink Forward Berlin 2017: Gyula Fora - Building and operating large-scale st...
Flink Forward
 
Fully-Managed, Multi-Tenant Kafka Clusters: Tips, Tricks, and Tools (Christop...
confluent
 
Support Office Hour Webinar - LivePerson API
LivePerson
 
Getting into the flow building applications with reactive streams
Tim van Eijndhoven
 
Flink Forward San Francisco 2018: Andrew Gao & Jeff Sharpe - "Finding Bad Ac...
Flink Forward
 
Ingesting IoT data in Food Processing
confluent
 
Flink Forward Berlin 2017: Mihail Vieru - A Materialization Engine for Data I...
Flink Forward
 
Flink Forward San Francisco 2018: Andrew Torson - "Extending Flink metrics: R...
Flink Forward
 
Scaling stream data pipelines with Pravega and Apache Flink
Till Rohrmann
 
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
confluent
 

Similar to Flink Forward Berlin 2018: Stephan Ewen - Keynote: "Unlocking the next wave of applications with Stream Processing" (20)

PPTX
Why and how to leverage the simplicity and power of SQL on Flink
DataWorks Summit
 
PPTX
Stream processing for the practitioner: Blueprints for common stream processi...
Aljoscha Krettek
 
PPTX
Apache Flink and what it is used for
Aljoscha Krettek
 
PDF
Pivotal Digital Transformation Forum: Journey to Become a Data-Driven Enterprise
VMware Tanzu
 
PDF
Continuous Intelligence - Intersecting Event-Based Business Logic and ML
Paris Carbone
 
PDF
Enterprise Data Lakes
Farid Gurbanov
 
PDF
EDA Meets Data Engineering – What's the Big Deal?
confluent
 
PDF
Fast Data – Fast Cars: Wie Apache Kafka die Datenwelt revolutioniert
confluent
 
PPTX
(Past), Present, and Future of Apache Flink
Aljoscha Krettek
 
DOCX
HIA - Autonomic and General Collecting of Real-time Data Streams(commit)
Andrew Chen
 
PPTX
Big Data Berlin v8.0 Stream Processing with Apache Apex
Apache Apex
 
PPTX
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Dataconomy Media
 
PDF
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Paris Data Engineers !
 
PPTX
The Past, Present, and Future of Apache Flink®
Aljoscha Krettek
 
PPTX
[DSC Europe 23] Pramod Immaneni - Real-time analytics at IoT scale
DataScienceConferenc1
 
PDF
Deep Dive into Concepts and Tools for Analyzing Streaming Data on AWS
AWS Germany
 
PDF
Big Data Analytics Platforms by KTH and RISE SICS
Big Data Value Association
 
PDF
Santander Stream Processing with Apache Flink
confluent
 
PDF
Insights and Graph-based ML Anomaly Detection for eBay Edge Services
Hanzhang Wang
 
PPTX
Microsoft SQL Server - StreamInsight Overview Presentation
Microsoft Private Cloud
 
Why and how to leverage the simplicity and power of SQL on Flink
DataWorks Summit
 
Stream processing for the practitioner: Blueprints for common stream processi...
Aljoscha Krettek
 
Apache Flink and what it is used for
Aljoscha Krettek
 
Pivotal Digital Transformation Forum: Journey to Become a Data-Driven Enterprise
VMware Tanzu
 
Continuous Intelligence - Intersecting Event-Based Business Logic and ML
Paris Carbone
 
Enterprise Data Lakes
Farid Gurbanov
 
EDA Meets Data Engineering – What's the Big Deal?
confluent
 
Fast Data – Fast Cars: Wie Apache Kafka die Datenwelt revolutioniert
confluent
 
(Past), Present, and Future of Apache Flink
Aljoscha Krettek
 
HIA - Autonomic and General Collecting of Real-time Data Streams(commit)
Andrew Chen
 
Big Data Berlin v8.0 Stream Processing with Apache Apex
Apache Apex
 
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Dataconomy Media
 
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Paris Data Engineers !
 
The Past, Present, and Future of Apache Flink®
Aljoscha Krettek
 
[DSC Europe 23] Pramod Immaneni - Real-time analytics at IoT scale
DataScienceConferenc1
 
Deep Dive into Concepts and Tools for Analyzing Streaming Data on AWS
AWS Germany
 
Big Data Analytics Platforms by KTH and RISE SICS
Big Data Value Association
 
Santander Stream Processing with Apache Flink
confluent
 
Insights and Graph-based ML Anomaly Detection for eBay Edge Services
Hanzhang Wang
 
Microsoft SQL Server - StreamInsight Overview Presentation
Microsoft Private Cloud
 
Ad

More from Flink Forward (20)

PDF
Building a fully managed stream processing platform on Flink at scale for Lin...
Flink Forward
 
PPTX
Evening out the uneven: dealing with skew in Flink
Flink Forward
 
PPTX
“Alexa, be quiet!”: End-to-end near-real time model building and evaluation i...
Flink Forward
 
PDF
Introducing BinarySortedMultiMap - A new Flink state primitive to boost your ...
Flink Forward
 
PDF
Introducing the Apache Flink Kubernetes Operator
Flink Forward
 
PPTX
Autoscaling Flink with Reactive Mode
Flink Forward
 
PDF
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Flink Forward
 
PPTX
One sink to rule them all: Introducing the new Async Sink
Flink Forward
 
PPTX
Tuning Apache Kafka Connectors for Flink.pptx
Flink Forward
 
PDF
Flink powered stream processing platform at Pinterest
Flink Forward
 
PPTX
Apache Flink in the Cloud-Native Era
Flink Forward
 
PPTX
Where is my bottleneck? Performance troubleshooting in Flink
Flink Forward
 
PPTX
Using the New Apache Flink Kubernetes Operator in a Production Deployment
Flink Forward
 
PPTX
The Current State of Table API in 2022
Flink Forward
 
PDF
Flink SQL on Pulsar made easy
Flink Forward
 
PPTX
Dynamic Rule-based Real-time Market Data Alerts
Flink Forward
 
PPTX
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Flink Forward
 
PPTX
Processing Semantically-Ordered Streams in Financial Services
Flink Forward
 
PDF
Tame the small files problem and optimize data layout for streaming ingestion...
Flink Forward
 
PDF
Batch Processing at Scale with Flink & Iceberg
Flink Forward
 
Building a fully managed stream processing platform on Flink at scale for Lin...
Flink Forward
 
Evening out the uneven: dealing with skew in Flink
Flink Forward
 
“Alexa, be quiet!”: End-to-end near-real time model building and evaluation i...
Flink Forward
 
Introducing BinarySortedMultiMap - A new Flink state primitive to boost your ...
Flink Forward
 
Introducing the Apache Flink Kubernetes Operator
Flink Forward
 
Autoscaling Flink with Reactive Mode
Flink Forward
 
Dynamically Scaling Data Streams across Multiple Kafka Clusters with Zero Fli...
Flink Forward
 
One sink to rule them all: Introducing the new Async Sink
Flink Forward
 
Tuning Apache Kafka Connectors for Flink.pptx
Flink Forward
 
Flink powered stream processing platform at Pinterest
Flink Forward
 
Apache Flink in the Cloud-Native Era
Flink Forward
 
Where is my bottleneck? Performance troubleshooting in Flink
Flink Forward
 
Using the New Apache Flink Kubernetes Operator in a Production Deployment
Flink Forward
 
The Current State of Table API in 2022
Flink Forward
 
Flink SQL on Pulsar made easy
Flink Forward
 
Dynamic Rule-based Real-time Market Data Alerts
Flink Forward
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Flink Forward
 
Processing Semantically-Ordered Streams in Financial Services
Flink Forward
 
Tame the small files problem and optimize data layout for streaming ingestion...
Flink Forward
 
Batch Processing at Scale with Flink & Iceberg
Flink Forward
 
Ad

Recently uploaded (20)

PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PPTX
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 

Flink Forward Berlin 2018: Stephan Ewen - Keynote: "Unlocking the next wave of applications with Stream Processing"

  • 1. Stephan Ewen – data Artisans CTO, Apache Flink PMC UNLOCKING THE NEXT WAVE OF STREAMING APPLICATIONS
  • 2. © 2018 data Artisans2 Streaming Applications over Time Real time Approximate Analytics Fraud Detection Online Machine Learning Data pipelines Realtime ETL Intrusion Prevention Financial Risk & Reporting Real time dashboards Anomaly Detection Logistics Tracking Recommender Systems Web Applications Masterdata Management Continuous Processing Continuous Processing and Analytics Unification of Analytics and Applications Data-driven Applications
  • 3. © 2018 data Artisans3 Enablers of new Applications Abstractions, APIs Consistency Event-time, streaming SQL, state & time, CEP Exactly-once, savepoints Scalability high parallelism, large state Interoperability Deployment, Connectors, Operations
  • 4. © 2018 data Artisans4 Enablers of new Applications Abstractions, APIs Consistency Event-time, streaming SQL, state & time, CEP Exactly-once, savepoints Interoperability Deployment, Connectors, Operations Steam SQL, Time-versioned Table Joins, SQL+CEP, … Framework and Library, REST-ified Flink, SQL Client, …Scalability high parallelism, large state Scalable timers, dynamic scaling, local recovery, …
  • 5. © 2018 data Artisans5 Exactly-once Changed Applications Stateless Application K/V Store CRUD / request/response Applications Streaming Application State Stateful Stream Processing Applications … become …
  • 6. © 2018 data Artisans6 Some Applications don't move to Stream Processing Application Relational Database
  • 7. © 2018 data Artisans7 Limitation of Current Stream Processors Transferring money from one account (key) to another with transactional guarantees is not feasible The Limitation Example All stream processors so far can update a single key-at-a-time with correctness guarantees (exactly once)
  • 8. © 2018 data Artisans8 Wouldn't it be great if Stream Processors could… • … access and update state with multiple keys at the same time • … maintain full isolation/correctness for the multi-key operations • … operate on multiple states at the same time • … share the states between multiple streams
  • 9. © 2018 data Artisans9 TODAY WE ANNOUNCE The first system for serializable multi-row ACID transactions on streaming data
  • 10. © 2018 data Artisans10
  • 11. © 2018 data Artisans11 ‒ Atomicity: the transfer affects either both accounts or none ‒ Consistency: the transfer must only happen if the account have sufficient funds ‒ Isolation: no other operation can interfere and cause an incorrect result ‒ Durability: the result of the transfer is durable ACID Transactions for Multi-key Stream Processing Streaming Ledger provides ACID guarantees across multiple states, rows, and streams
  • 12. © 2018 data Artisans12 The Evolution of Stream Processing accurate single-key applications Flink pioneered exactly once guarantees on true streaming: accurate analytics and applications, consistent single key at a time At-least-once guarantees Exactly-once guarantees approximate real time analytics No data loss but possible duplications to support real-time approximate analytics in a "speed layer" (lamda) ACID guarantees consistent general applications Streaming Ledger provides ACID guarantees supporting applications that read and modify several keys
  • 13. © 2018 data Artisans13 Stateful Streaming vs. Streaming Ledger Storage Computing Single datum / key at a time Consistent total view data Artisans Streaming Ledger exactly-once stateful streaming Key/Value Stores Relational Databases
  • 14. © 2018 data Artisans14 Tables, Streams, Transactions Account Balance Asset Qty. Deposit Function Transfer Function Xfer: A  B: $ Swap: X Y Deposit: A: $ SUCCESS A=$, B=$ Transaction Event Streams Transaction Functions Result Streams
  • 15. © 2018 data Artisans15 Example: Transferring Cash/Assets between Accounts
  • 16. © 2018 data Artisans16 Example: Position-keeping, Reporting, Risk Management in Investment Banking
  • 17. © 2018 data Artisans17 A Library on top of Apache Flink • No additional dependencies needed • Seamlessly integrates and composes with DataStream API and SQL • Read from- and write to all Flink connectors • Supports savepoints for upgrades
  • 18. © 2018 data Artisans18 How does it work?
  • 19. © 2018 data Artisans19 Relational Database embedded? No!
  • 20. © 2018 data Artisans20 First-of-a-kind - Unique Approach Logical Clocks to define schedule event re-ordering & out-of-order processing Iterative streaming dataflows (0xf876ab78|0x0b7cc7a3)
  • 21. © 2018 data Artisans21 Conflict-free Schedule Txn: (A,B,C) -> A Txn: (A,B,C) -> C Txn: (D,E) -> (D,F) transaction events define ordering for schedule reorder events to obey schedule B CA A D E D F A CB CA
  • 22. © 2018 data Artisans22 Performance (early results) - Scalability (parallelism) 200 million rows 100% update queries 4 rows written/query
  • 23. © 2018 data Artisans23 Performance (early results) – Key Contention Artificial case of extreme contention: 4 x 200,000 = 800,000 updates/sec on the same 1,000 keys Slowdown, but does not break like optimistic concurrency approaches 100% update queries 4 written/query
  • 24. © 2018 data Artisans24 Running a distributed setup … and because we can… …we run a globally distributed setup
  • 25. © 2018 data Artisans25
  • 26. © 2018 data Artisans26 Apache Flink: The heavy lifter This technology is possible, because Apache Flink offers such powerful building blocks • Continuous processing • Iterative flows • Flexible state abstraction • Asynchronous checkpoints • Sophisticated event-time/watermarks
  • 27. © 2018 data Artisans27 Part of data Artisans Platform River Edition Streaming Ledger is part of data Artisans Platform • Stream Edition: Apache Flink, Application Manager • River Edition: Apache Flink, Application Manager, Streaming Ledger API and single-node implementation under Apache 2.0 license
  • 28. © 2018 data Artisans28 Learn more at At the booth
  • 29. Thank you! Enjoy the conference!