How to Build Real-Time Analytics Applications like Netflix, Confluent, and Reddit

confluent
confluentconfluent
©2023, Imply 1
©2023, imply
How to Build Real-Time Analytics Applications
like Netflix, Confluent, and Reddit
1
Eric Tschetter
©2023, Imply 2
Who am I?
Eric Tschetter
Field CTO
Imply Inc.
Previous Lives
Apache Druid - Open Source OLAP
Wrote first lines of code, circa 2010
Since then, Both Built and Used
©2023, Imply 3
Who am I?
Eric Tschetter
Field CTO
Imply Inc.
Previous Lives
Apache Druid - Open Source OLAP
Wrote first lines of code, circa 2010
Since then, Both Built and Used
So What?
©2023, Imply 4
Who am I?
Eric Tschetter
Field CTO
Imply Inc.
Previous Lives
Apache Druid - Open Source OLAP
Wrote first lines of code, circa 2010
Since then, Both Built and Used
So What?
15 years with Data and Applications
Seen a lot of different things
©2023, Imply 5
©2023, Imply 6
©2023, Imply 7
Start from a common base-line: OLTP vs. OLAP
OLTP OLAP
©2023, Imply 8
Build
Applications
Start from a common base-line: OLTP vs. OLAP
OLTP OLAP
©2023, Imply 9
Build
Analytics
Build
Applications
Start from a common base-line: OLTP vs. OLAP
OLTP OLAP
©2023, Imply 10
Build
Analytics
Build
Applications
Start from a common base-line: OLTP vs. OLAP
OLTP OLAP
ETL
©2023, Imply 11
©2023, Imply 12
OLD
©2023, Imply 13
NEW
©2023, Imply 14
Build
Analytics
Build
Applications
OLD
OLTP OLAP
ETL
©2023, Imply 15
OLD -> NEW
Entities Events
©2023, Imply 16
Applications
Analytics
Applications
Analytics
OLD -> NEW
Entities Events
©2023, Imply 17
Applications
Analytics
Applications
Analytics
OLD -> NEW
Entities Events
Stream
©2023, Imply 18
ENTITIES
©2023, Imply 19
What is an Entity?
An “Object” that represents something in the real-world
©2023, Imply 20
What is an Entity?
An “Object” that represents something in the real-world
What are the requirements of working with Entities?
Mutation
→
ACID-compliant
Transactions
©2023, Imply 21
Example of an Entity: A User
Create New User
ID Name Age Gender Address Created Date Updated Date
1 Sally Sue 27 F 123 Street 2023-01-01 2023-01-01
©2023, Imply 22
Example of an Entity: A User
Update Address
ID Name Age Gender Address Created Date Updated Date
1 Sally Sue 27 F 345 Avenue Apt 765 2023-01-01 2023-03-01
©2023, Imply 23
Example of an Entity: A User
Update Address, Again
ID Name Age Gender Address Created Date Updated Date
1 Sally Sue 30 F 1 The Road 2023-01-01 2026-10-10
©2023, Imply 24
Example of an Entity: A User
Update Address, Again
ID Name Age Gender Address Created Date Updated Date
1 Sally Sue 30 F 1 The Road 2023-01-01 2026-10-10
Current Values Only
Ignore History
©2023, Imply 25
Example of an Entity: Order on an E-commerce website
Order is placed
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 ORDER
PLACED
123 Street PayPal 2023-01-01 2023-01-01
©2023, Imply 26
Example of an Entity: Order on an E-commerce website
Payment Rejected
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 PAYMENT
REJECTED
123 Street PayPal 2023-01-01 2023-01-01
©2023, Imply 27
Example of an Entity: Order on an E-commerce website
Payment Updated
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 ORDER
PLACED
123 Street Credit Card 2023-01-01 2023-01-02
©2023, Imply 28
Example of an Entity: Order on an E-commerce website
Payment Received
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 PAYMENT
RECEIVED
123 Street Credit Card 2023-01-01 2023-01-02
©2023, Imply 29
Example of an Entity: Order on an E-commerce website
Awaiting Fulfillment
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 AWAITING
FULFILL
123 Street Credit Card 2023-01-01 2023-01-02
©2023, Imply 30
Example of an Entity: Order on an E-commerce website
Fulfillment Complete
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 FULFILLED 123 Street Credit Card 2023-01-01 2023-01-03
©2023, Imply 31
Example of an Entity: Order on an E-commerce website
Shipped
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 SHIPPED 123 Street Credit Card 2023-01-01 2023-01-04
©2023, Imply 32
Example of an Entity: Order on an E-commerce website
Delivered
ID userId Price Status Address Payment Created Date Updated Date
27 1 $89 DELIVERED 123 Street Credit Card 2023-01-01 2023-01-07
©2023, Imply 33
Example of an Entity: Order on an E-commerce website
One product returned from shipment
ID userId Price Status Address Payment Created Date Updated Date
27 1 $55 PARTIAL
RETURN
123 Street Credit Card 2023-01-01 2023-01-14
©2023, Imply 34
Example of an Entity: Order on an E-commerce website
One product returned from shipment
ID userId Price Status Address Payment Created Date Updated Date
27 1 $55 PARTIAL
RETURN
123 Street Credit Card 2023-01-01 2023-01-14
So much Change!
Ignore It All!
©2023, Imply 35
Infrastructure to work with Entities
Document Stores
Key-Value Stores
RDBMS
Graph DBs
©2023, Imply 36
Trends in Working with Entities
©2023, Imply 37
Trends in Working with Entities
Event-Reactive Microservices
©2023, Imply 38
Trends in Working with Entities
Event-Reactive Microservices In-Place Analytics
©2023, Imply 39
Event-Reactive Microservices
1. User submits order, order service generates “order created event” and puts it on Kafka
2. Payment Processor sees “order created event”, runs payment, pushes success event
3. Order service sees payment success, pushes fulfillment request event
4. Fulfillment service sees fulfillment request event, adds to warehouse queue
5. Warehouse packs package, submits delivery ready event
6. Delivery system notifies carrier that package ready for pickup
a. Connects to delivery tracking notifications and converts to status events
Decoupled services communicating through events
©2023, Imply 40
In-Place Analytics
“Just because I’m Entity-Oriented doesn’t mean I don’t want Analytics”
- Every Product Manager Everywhere
New Entity-Oriented Industry Forming:
Hybrid
Transaction
Analytical
Processing
HTAP provides for both transactions
AND analytics on top of Entities
©2023, Imply 41
Trends in Working with Entities
Event-Reactive Microservices In-Place Analytics
©2023, Imply 42
Future of Entities
Event-Reactive Microservices
©2023, Imply 43
Future of Entities
Event-Reactive Microservices
Entities are great an all,
but all these events that I put
on this stream here…
What can I do with those?
©2023, Imply 44
EVENTS
©2023, Imply 45
What is an Event?
An “Action” that occurred in the real-world
Requirements
Scale
100x+ more events than entities
Auditability
Must see all actions
Recombination
Understand state @ point-in-time
©2023, Imply 46
Example of an Event: A Button Tap
Button Taps in a Mobile App
userId Session
Id
Time OS App version Button Pressed Response Time
xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms
©2023, Imply 47
Example of an Event: A Button Tap
User Cancels!?
userId Session
Id
Time OS App version Button Pressed Response Time
xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms
xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms
©2023, Imply 48
Example of an Event: A Button Tap
User comes back, iPhone this time
userId Session
Id
Time OS App version Button Pressed Response Time
xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms
xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms
xyz-ubc-1 124 2023-05-01T21:03:19Z iPhone 2.847.4z START 10ms
©2023, Imply 49
Example of an Event: A Button Tap
They successfully signup!
userId Session
Id
Time OS App version Button Pressed Response Time
xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms
xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms
xyz-ubc-1 124 2023-05-01T21:03:19Z iPhone 2.847.4z START 10ms
xyz-ubc-1 124 2023-05-01T21:03:21Z iPhone 2.847.4z SIGN_UP 123ms
kdj-udn-3 9483 2023-05-01T21:03:33Z iPhone 2.847.4z PLAY 102ms
psh-jfb-1 47182 2023-05-02T02:57:00Z Android 1.4.0 START 37ms
psh-jfb-1 47182 2023-05-02T02:57:02Z Android 1.4.0 SIGN_UP 57ms
©2023, Imply 50
Example of an Event: Order on an E-commerce website
Order is Placed
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
©2023, Imply 51
Example of an Event: Order on an E-commerce website
Payment Rejected
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
©2023, Imply 52
Example of an Event: Order on an E-commerce website
Payment Updated
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
©2023, Imply 53
Example of an Event: Order on an E-commerce website
Payment Approved
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
©2023, Imply 54
Example of an Event: Order on an E-commerce website
Fulfillment Complete
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
©2023, Imply 55
Example of an Event: Order on an E-commerce website
Picked up for Delivery
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP
©2023, Imply 56
Example of an Event: Order on an E-commerce website
Delivered
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP
1 27 2023-01-07T17:02:46Z DELIVERED
©2023, Imply 57
Example of an Event: Order on an E-commerce website
One Product Returned
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP
1 27 2023-01-07T17:02:46Z DELIVERED
1 27 2023-01-14T04:18:17Z $55 PARTIAL RETURN
©2023, Imply 58
Example of an Event: Order on an E-commerce website
One Product Returned
User
Id
Order
Id
Time Price Payment Address Tracking ID Action
1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP
1 27 2023-01-07T17:02:46Z DELIVERED
1 27 2023-01-14T04:18:17Z $55 PARTIAL RETURN
New values appear as more
events are seen
©2023, Imply 59
Infrastructure to work with Events
Stream
Processors
Data Warehouse
Event
Application DB
©2023, Imply 60
Trends in Working with Events
©2023, Imply 61
Trends in Working with Events
Machine Learning Workbench
©2023, Imply 62
Trends in Working with Events
Machine Learning Workbench Applications Using Events
©2023, Imply 63
Machine Learning Workbench
1. Analyze Events in Data Warehouse to identify Features
2. Use Data Warehouse processing capacity to train model
3. Evaluate Model by running against Events in Data Warehouse
4. Iterate Features, train, repeat
5. Deploy model to a Stream Processor
6. Apply model to events in the stream, generate new events to put in the stream
7. Event-Reactive services listen to ML events and take actions
Train, Predict and connect back to Entities
©2023, Imply 64
Building Applications with Events: Video Streaming Edition
The Setup: You are a Video Streaming Service
The Problem: You want all employees to have clear visibility of usage of your service across devices
The Solution:
1. Generate Logs of usage on devices
2. Collect logs and decorate into telemetry event
3. Flow the events into Event Application DB
©2023, Imply 65
Building Applications with Events: Video Streaming Edition
The Setup: You are a Video Streaming Service
The Problem: You want all employees to have clear visibility of usage of your service across devices
The Solution:
1. Generate Logs of usage on devices
2. Collect logs and decorate into telemetry event
3. Flow the events into Event Application DB
Similar to…
©2023, Imply 66
2M
events /s
1.5T
rows queried
in <1s
2X
reduction
in row count
Log API Servers Kafka Log Topics Real-time
Measure Extraction
Kafka Metric
Topics
Netflix Cloud
LOG
LOG
LOG
User’s Device
Netflix Metrics Pipeline
©2023, Imply 67
Building Applications with Events: SaaS Edition
The Setup: You are a SaaS Business
The Problem: You want to understand usage and billing broken down by service, customer, and
even down to arbitrary tags identified by the customer
The Solution:
1. Generate telemetry of usage
2. Collect telemetry in kafka
3. Flow the events into Event Application DB
4. Expose via API and UI to internal and external users
©2023, Imply 68
Building Applications with Events: SaaS Edition
The Setup: You are a SaaS Business
The Problem: You want to understand usage and billing broken down by service, customer, and
even down to arbitrary tags identified by the customer
The Solution:
1. Generate telemetry of usage
2. Collect telemetry in kafka
3. Flow the events into Event Application DB
4. Expose via API and UI to internal and external users
Similar to…
©2023, Imply 69
5M
events /s
350
queries /s
24TB
/day
©2023, Imply 70
Confluent’s validation of the Kafka-Druid architecture
7
0
"Because of the native
integration between
Apache Kafka and
Apache Druid, we
don't even need a
connector. It just work
out of the box."
Harini Rajendran,
Confluent's Sr. Software
Engineer
©2023, Imply 71
Building Applications with Events: Ads Edition
The Setup: You are an Ad-supported Consumer-facing website
The Problem: You need to provide visibility and understanding of ad views and demographics to
your advertisers
The Solution:
1. Collect Ad Impression and Click data
2. Flow it into Kafka
3. Flow the events into an Event Application DB
4. Expose via API and UI to internal and external users
©2023, Imply 72
Building Applications with Events: Ads Edition
The Setup: You are an Ad-supported Consumer-facing website
The Problem: You need to provide visibility and understanding of ad views and demographics to
your advertisers
The Solution:
1. Collect Ad Impression and Click data
2. Flow it into Kafka
3. Flow the events into an Event Application DB
4. Expose via API and UI to internal and external users
Similar to…
©2023, Imply 73
10+
GB /hr
3X
faster
queries
99.9%
availability
Log Servers
Kafka stream Amazon S3
raw events
Client
Events (views, clicks, etc.)
Hourly
Spark job
Metrics API
Polished raw events
UI
Reddit Metrics Pipeline
©2023, Imply 74
If these types of Event-based Applications sound
interesting to you…
©2023, Imply 75
Imply: The complete experience for Apache Druid
75
Imply Polaris and
hybrid-managed service
DBaaS, Hybrid
or Software
Management, monitoring, and
early features and patches
Commercial
Distribution + +
Plus, Imply Pivot to accelerate application development
24/7 support with 100% of
the original Druid creators
Committer-
Driven Expertise
With Imply, devs get rapid time to value and success with Druid
©2023, Imply 76
76
Imply Polaris
The Cloud Database Service
for Apache Druid
Most
Affordable
Most
Secure
Best Time
to Value
And for OS Druid Users
©2023, Imply 77
And many more!
Leading organizations choose Imply to succeed with Druid
Retail Financial
Gaming Networking/Energy Technology Security
Ad Tech Media
©2023, Imply 78
Applications
Analytics
Applications
Analytics
Future Data Architecture
Entities Events
Stream
©2023, Imply 79
©2023, imply | Confidential
Thank You!
79
Eric Tschetter
1 de 79

Recomendados

Subscribed 2017: Building a Data Pipeline to Engage and Retain Your Subscribers por
Subscribed 2017: Building a Data Pipeline to Engage and Retain Your SubscribersSubscribed 2017: Building a Data Pipeline to Engage and Retain Your Subscribers
Subscribed 2017: Building a Data Pipeline to Engage and Retain Your SubscribersZuora, Inc.
550 vistas17 diapositivas
Webinar widen the scope of your analyses get power and precision beyond 45 ... por
Webinar widen the scope of your analyses   get power and precision beyond 45 ...Webinar widen the scope of your analyses   get power and precision beyond 45 ...
Webinar widen the scope of your analyses get power and precision beyond 45 ...AT Internet
388 vistas37 diapositivas
QCon 2019 - Opportunities and Pitfalls of Event-Driven Utopia por
QCon 2019 - Opportunities and Pitfalls of Event-Driven UtopiaQCon 2019 - Opportunities and Pitfalls of Event-Driven Utopia
QCon 2019 - Opportunities and Pitfalls of Event-Driven UtopiaBernd Ruecker
27.1K vistas90 diapositivas
How Intuit Implented Lightning Connect with Progress DataDirect por
How Intuit Implented Lightning Connect with Progress DataDirectHow Intuit Implented Lightning Connect with Progress DataDirect
How Intuit Implented Lightning Connect with Progress DataDirectSalesforce Developers
6.4K vistas17 diapositivas
Online real estate management system por
Online real estate management systemOnline real estate management system
Online real estate management systemYasmeen Od
29.2K vistas23 diapositivas
Journals Audit.pdf por
Journals Audit.pdfJournals Audit.pdf
Journals Audit.pdfssuser7e6c76
5 vistas11 diapositivas

Más contenido relacionado

Similar a How to Build Real-Time Analytics Applications like Netflix, Confluent, and Reddit

GE E commerce por
GE E commerceGE E commerce
GE E commercesam ran
3.4K vistas27 diapositivas
Reporting dg por
Reporting dgReporting dg
Reporting dgLich Bui
376 vistas271 diapositivas
All about engagement with Universal Analytics @ Google Developer Group NYC Ma... por
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...Nico Miceli
2.2K vistas96 diapositivas
RESTful services and OAUTH protocol in IoT por
RESTful services and OAUTH protocol in IoTRESTful services and OAUTH protocol in IoT
RESTful services and OAUTH protocol in IoTYakov Fain
4K vistas58 diapositivas
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay System por
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay SystemBlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay System
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay SystemJaewoo Park
156 vistas19 diapositivas
Salesforce project por
Salesforce projectSalesforce project
Salesforce projectSiddharth Chaudhary
2.1K vistas24 diapositivas

Similar a How to Build Real-Time Analytics Applications like Netflix, Confluent, and Reddit(20)

GE E commerce por sam ran
GE E commerceGE E commerce
GE E commerce
sam ran3.4K vistas
Reporting dg por Lich Bui
Reporting dgReporting dg
Reporting dg
Lich Bui376 vistas
All about engagement with Universal Analytics @ Google Developer Group NYC Ma... por Nico Miceli
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
All about engagement with Universal Analytics @ Google Developer Group NYC Ma...
Nico Miceli2.2K vistas
RESTful services and OAUTH protocol in IoT por Yakov Fain
RESTful services and OAUTH protocol in IoTRESTful services and OAUTH protocol in IoT
RESTful services and OAUTH protocol in IoT
Yakov Fain4K vistas
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay System por Jaewoo Park
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay SystemBlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay System
BlockXen Co., Ltd. Pitch Deck for the Item_Crypto-pay System
Jaewoo Park156 vistas
Neo4j gokuldaspillai-121018170144-phpapp01 por Gokuldas Pillai
Neo4j gokuldaspillai-121018170144-phpapp01Neo4j gokuldaspillai-121018170144-phpapp01
Neo4j gokuldaspillai-121018170144-phpapp01
Gokuldas Pillai197 vistas
Patterns to Bring Enterprise and Social Identity to the Cloud por CA API Management
Patterns to Bring Enterprise and Social Identity to the Cloud Patterns to Bring Enterprise and Social Identity to the Cloud
Patterns to Bring Enterprise and Social Identity to the Cloud
CA API Management985 vistas
Subscribed 2017: Comprehensive Overview On Fresh, New Zuora APIs por Zuora, Inc.
Subscribed 2017: Comprehensive Overview On Fresh, New Zuora APIsSubscribed 2017: Comprehensive Overview On Fresh, New Zuora APIs
Subscribed 2017: Comprehensive Overview On Fresh, New Zuora APIs
Zuora, Inc.531 vistas
Monetizing your Applications with PayPal X Payments Platform por guest72b121
Monetizing your Applications withPayPal X Payments PlatformMonetizing your Applications withPayPal X Payments Platform
Monetizing your Applications with PayPal X Payments Platform
guest72b121892 vistas
Construction Technology Quarterly, Q3, 2021 por Hugh Seaton
Construction Technology Quarterly, Q3, 2021Construction Technology Quarterly, Q3, 2021
Construction Technology Quarterly, Q3, 2021
Hugh Seaton154 vistas
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-... por Gotransverse
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Internet of Things: How Finance Should Embrace the Coming Flood to Drive Top-...
Gotransverse1.5K vistas
What's New in Deltek Vision 7.1, Invoice Approvals, Overhead Allocation and 5... por BCS ProSoft
What's New in Deltek Vision 7.1, Invoice Approvals, Overhead Allocation and 5...What's New in Deltek Vision 7.1, Invoice Approvals, Overhead Allocation and 5...
What's New in Deltek Vision 7.1, Invoice Approvals, Overhead Allocation and 5...
BCS ProSoft5.1K vistas
Construction Process Proposal PowerPoint Presentation Slides por SlideTeam
Construction Process Proposal PowerPoint Presentation SlidesConstruction Process Proposal PowerPoint Presentation Slides
Construction Process Proposal PowerPoint Presentation Slides
SlideTeam143 vistas
Ch 3 powerpoint por hrpowell
Ch 3 powerpointCh 3 powerpoint
Ch 3 powerpoint
hrpowell3.3K vistas
Best Practices in Catalog Strategies por SAP Ariba
Best Practices in Catalog StrategiesBest Practices in Catalog Strategies
Best Practices in Catalog Strategies
SAP Ariba1.2K vistas
Modernization of Northwood Housing Society using Salesforce CRM por Kaushik Rajan
Modernization of Northwood Housing Society using Salesforce CRMModernization of Northwood Housing Society using Salesforce CRM
Modernization of Northwood Housing Society using Salesforce CRM
Kaushik Rajan173 vistas
Modernization of northwood housing society using salesforce crm por SindhujanDhayalan
Modernization of northwood housing society using salesforce crmModernization of northwood housing society using salesforce crm
Modernization of northwood housing society using salesforce crm
SindhujanDhayalan264 vistas

Más de confluent

Citi TechTalk Session 2: Kafka Deep Dive por
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Diveconfluent
17 vistas60 diapositivas
Build real-time streaming data pipelines to AWS with Confluent por
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluentconfluent
69 vistas53 diapositivas
Q&A with Confluent Professional Services: Confluent Service Mesh por
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Meshconfluent
67 vistas69 diapositivas
Citi Tech Talk: Event Driven Kafka Microservices por
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservicesconfluent
23 vistas29 diapositivas
Confluent & GSI Webinars series - Session 3 por
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3confluent
15 vistas59 diapositivas
Citi Tech Talk: Messaging Modernization por
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernizationconfluent
17 vistas39 diapositivas

Más de confluent(20)

Citi TechTalk Session 2: Kafka Deep Dive por confluent
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent17 vistas
Build real-time streaming data pipelines to AWS with Confluent por confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
confluent69 vistas
Q&A with Confluent Professional Services: Confluent Service Mesh por confluent
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
confluent67 vistas
Citi Tech Talk: Event Driven Kafka Microservices por confluent
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
confluent23 vistas
Confluent & GSI Webinars series - Session 3 por confluent
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
confluent15 vistas
Citi Tech Talk: Messaging Modernization por confluent
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
confluent17 vistas
Citi Tech Talk: Data Governance for streaming and real time data por confluent
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
confluent21 vistas
Confluent & GSI Webinars series: Session 2 por confluent
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
confluent16 vistas
Data In Motion Paris 2023 por confluent
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
confluent224 vistas
The Future of Application Development - API Days - Melbourne 2023 por confluent
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023
confluent68 vistas
The Playful Bond Between REST And Data Streams por confluent
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streams
confluent49 vistas
The Journey to Data Mesh with Confluent por confluent
The Journey to Data Mesh with ConfluentThe Journey to Data Mesh with Confluent
The Journey to Data Mesh with Confluent
confluent70 vistas
Citi Tech Talk: Monitoring and Performance por confluent
Citi Tech Talk: Monitoring and PerformanceCiti Tech Talk: Monitoring and Performance
Citi Tech Talk: Monitoring and Performance
confluent40 vistas
Citi Tech Talk Disaster Recovery Solutions Deep Dive por confluent
Citi Tech Talk  Disaster Recovery Solutions Deep DiveCiti Tech Talk  Disaster Recovery Solutions Deep Dive
Citi Tech Talk Disaster Recovery Solutions Deep Dive
confluent66 vistas
Citi Tech Talk: Hybrid Cloud por confluent
Citi Tech Talk: Hybrid CloudCiti Tech Talk: Hybrid Cloud
Citi Tech Talk: Hybrid Cloud
confluent43 vistas
Confluent Partner Tech Talk with QLIK por confluent
Confluent Partner Tech Talk with QLIKConfluent Partner Tech Talk with QLIK
Confluent Partner Tech Talk with QLIK
confluent90 vistas
Real-time Streaming for Government and the Public Sector por confluent
Real-time Streaming for Government and the Public SectorReal-time Streaming for Government and the Public Sector
Real-time Streaming for Government and the Public Sector
confluent41 vistas
Confluent Partner Tech Talk with SVA por confluent
Confluent Partner Tech Talk with SVAConfluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with SVA
confluent95 vistas
Single View of Data por confluent
Single View of DataSingle View of Data
Single View of Data
confluent71 vistas
Leveraging streaming data in real-time to build a Single View of Customer (SVOC) por confluent
Leveraging streaming data in real-time to build a Single View of Customer (SVOC)Leveraging streaming data in real-time to build a Single View of Customer (SVOC)
Leveraging streaming data in real-time to build a Single View of Customer (SVOC)
confluent21 vistas

Último

Democratising digital commerce in India-Report por
Democratising digital commerce in India-ReportDemocratising digital commerce in India-Report
Democratising digital commerce in India-ReportKapil Khandelwal (KK)
15 vistas161 diapositivas
virtual reality.pptx por
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
11 vistas15 diapositivas
Uni Systems for Power Platform.pptx por
Uni Systems for Power Platform.pptxUni Systems for Power Platform.pptx
Uni Systems for Power Platform.pptxUni Systems S.M.S.A.
56 vistas21 diapositivas
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive por
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
31 vistas35 diapositivas
Scaling Knowledge Graph Architectures with AI por
Scaling Knowledge Graph Architectures with AIScaling Knowledge Graph Architectures with AI
Scaling Knowledge Graph Architectures with AIEnterprise Knowledge
30 vistas15 diapositivas
HTTP headers that make your website go faster - devs.gent November 2023 por
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023Thijs Feryn
22 vistas151 diapositivas

Último(20)

Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive por Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
HTTP headers that make your website go faster - devs.gent November 2023 por Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn22 vistas
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院 por IttrainingIttraining
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
【USB韌體設計課程】精選講義節錄-USB的列舉過程_艾鍗學院
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... por Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
Jasper Oosterveld18 vistas
Ransomware is Knocking your Door_Final.pdf por Security Bootcamp
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdf
Security Bootcamp55 vistas
Unit 1_Lecture 2_Physical Design of IoT.pdf por StephenTec
Unit 1_Lecture 2_Physical Design of IoT.pdfUnit 1_Lecture 2_Physical Design of IoT.pdf
Unit 1_Lecture 2_Physical Design of IoT.pdf
StephenTec12 vistas
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... por Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker37 vistas
Empathic Computing: Delivering the Potential of the Metaverse por Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst478 vistas
Serverless computing with Google Cloud (2023-24) por wesley chun
Serverless computing with Google Cloud (2023-24)Serverless computing with Google Cloud (2023-24)
Serverless computing with Google Cloud (2023-24)
wesley chun11 vistas
PharoJS - Zürich Smalltalk Group Meetup November 2023 por Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi127 vistas

How to Build Real-Time Analytics Applications like Netflix, Confluent, and Reddit

  • 1. ©2023, Imply 1 ©2023, imply How to Build Real-Time Analytics Applications like Netflix, Confluent, and Reddit 1 Eric Tschetter
  • 2. ©2023, Imply 2 Who am I? Eric Tschetter Field CTO Imply Inc. Previous Lives Apache Druid - Open Source OLAP Wrote first lines of code, circa 2010 Since then, Both Built and Used
  • 3. ©2023, Imply 3 Who am I? Eric Tschetter Field CTO Imply Inc. Previous Lives Apache Druid - Open Source OLAP Wrote first lines of code, circa 2010 Since then, Both Built and Used So What?
  • 4. ©2023, Imply 4 Who am I? Eric Tschetter Field CTO Imply Inc. Previous Lives Apache Druid - Open Source OLAP Wrote first lines of code, circa 2010 Since then, Both Built and Used So What? 15 years with Data and Applications Seen a lot of different things
  • 7. ©2023, Imply 7 Start from a common base-line: OLTP vs. OLAP OLTP OLAP
  • 8. ©2023, Imply 8 Build Applications Start from a common base-line: OLTP vs. OLAP OLTP OLAP
  • 9. ©2023, Imply 9 Build Analytics Build Applications Start from a common base-line: OLTP vs. OLAP OLTP OLAP
  • 10. ©2023, Imply 10 Build Analytics Build Applications Start from a common base-line: OLTP vs. OLAP OLTP OLAP ETL
  • 15. ©2023, Imply 15 OLD -> NEW Entities Events
  • 19. ©2023, Imply 19 What is an Entity? An “Object” that represents something in the real-world
  • 20. ©2023, Imply 20 What is an Entity? An “Object” that represents something in the real-world What are the requirements of working with Entities? Mutation → ACID-compliant Transactions
  • 21. ©2023, Imply 21 Example of an Entity: A User Create New User ID Name Age Gender Address Created Date Updated Date 1 Sally Sue 27 F 123 Street 2023-01-01 2023-01-01
  • 22. ©2023, Imply 22 Example of an Entity: A User Update Address ID Name Age Gender Address Created Date Updated Date 1 Sally Sue 27 F 345 Avenue Apt 765 2023-01-01 2023-03-01
  • 23. ©2023, Imply 23 Example of an Entity: A User Update Address, Again ID Name Age Gender Address Created Date Updated Date 1 Sally Sue 30 F 1 The Road 2023-01-01 2026-10-10
  • 24. ©2023, Imply 24 Example of an Entity: A User Update Address, Again ID Name Age Gender Address Created Date Updated Date 1 Sally Sue 30 F 1 The Road 2023-01-01 2026-10-10 Current Values Only Ignore History
  • 25. ©2023, Imply 25 Example of an Entity: Order on an E-commerce website Order is placed ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 ORDER PLACED 123 Street PayPal 2023-01-01 2023-01-01
  • 26. ©2023, Imply 26 Example of an Entity: Order on an E-commerce website Payment Rejected ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 PAYMENT REJECTED 123 Street PayPal 2023-01-01 2023-01-01
  • 27. ©2023, Imply 27 Example of an Entity: Order on an E-commerce website Payment Updated ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 ORDER PLACED 123 Street Credit Card 2023-01-01 2023-01-02
  • 28. ©2023, Imply 28 Example of an Entity: Order on an E-commerce website Payment Received ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 PAYMENT RECEIVED 123 Street Credit Card 2023-01-01 2023-01-02
  • 29. ©2023, Imply 29 Example of an Entity: Order on an E-commerce website Awaiting Fulfillment ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 AWAITING FULFILL 123 Street Credit Card 2023-01-01 2023-01-02
  • 30. ©2023, Imply 30 Example of an Entity: Order on an E-commerce website Fulfillment Complete ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 FULFILLED 123 Street Credit Card 2023-01-01 2023-01-03
  • 31. ©2023, Imply 31 Example of an Entity: Order on an E-commerce website Shipped ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 SHIPPED 123 Street Credit Card 2023-01-01 2023-01-04
  • 32. ©2023, Imply 32 Example of an Entity: Order on an E-commerce website Delivered ID userId Price Status Address Payment Created Date Updated Date 27 1 $89 DELIVERED 123 Street Credit Card 2023-01-01 2023-01-07
  • 33. ©2023, Imply 33 Example of an Entity: Order on an E-commerce website One product returned from shipment ID userId Price Status Address Payment Created Date Updated Date 27 1 $55 PARTIAL RETURN 123 Street Credit Card 2023-01-01 2023-01-14
  • 34. ©2023, Imply 34 Example of an Entity: Order on an E-commerce website One product returned from shipment ID userId Price Status Address Payment Created Date Updated Date 27 1 $55 PARTIAL RETURN 123 Street Credit Card 2023-01-01 2023-01-14 So much Change! Ignore It All!
  • 35. ©2023, Imply 35 Infrastructure to work with Entities Document Stores Key-Value Stores RDBMS Graph DBs
  • 36. ©2023, Imply 36 Trends in Working with Entities
  • 37. ©2023, Imply 37 Trends in Working with Entities Event-Reactive Microservices
  • 38. ©2023, Imply 38 Trends in Working with Entities Event-Reactive Microservices In-Place Analytics
  • 39. ©2023, Imply 39 Event-Reactive Microservices 1. User submits order, order service generates “order created event” and puts it on Kafka 2. Payment Processor sees “order created event”, runs payment, pushes success event 3. Order service sees payment success, pushes fulfillment request event 4. Fulfillment service sees fulfillment request event, adds to warehouse queue 5. Warehouse packs package, submits delivery ready event 6. Delivery system notifies carrier that package ready for pickup a. Connects to delivery tracking notifications and converts to status events Decoupled services communicating through events
  • 40. ©2023, Imply 40 In-Place Analytics “Just because I’m Entity-Oriented doesn’t mean I don’t want Analytics” - Every Product Manager Everywhere New Entity-Oriented Industry Forming: Hybrid Transaction Analytical Processing HTAP provides for both transactions AND analytics on top of Entities
  • 41. ©2023, Imply 41 Trends in Working with Entities Event-Reactive Microservices In-Place Analytics
  • 42. ©2023, Imply 42 Future of Entities Event-Reactive Microservices
  • 43. ©2023, Imply 43 Future of Entities Event-Reactive Microservices Entities are great an all, but all these events that I put on this stream here… What can I do with those?
  • 45. ©2023, Imply 45 What is an Event? An “Action” that occurred in the real-world Requirements Scale 100x+ more events than entities Auditability Must see all actions Recombination Understand state @ point-in-time
  • 46. ©2023, Imply 46 Example of an Event: A Button Tap Button Taps in a Mobile App userId Session Id Time OS App version Button Pressed Response Time xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms
  • 47. ©2023, Imply 47 Example of an Event: A Button Tap User Cancels!? userId Session Id Time OS App version Button Pressed Response Time xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms
  • 48. ©2023, Imply 48 Example of an Event: A Button Tap User comes back, iPhone this time userId Session Id Time OS App version Button Pressed Response Time xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms xyz-ubc-1 124 2023-05-01T21:03:19Z iPhone 2.847.4z START 10ms
  • 49. ©2023, Imply 49 Example of an Event: A Button Tap They successfully signup! userId Session Id Time OS App version Button Pressed Response Time xyz-ubc-1 123 2023-05-01T20:43:12Z Android 1.3.9 START 10ms xyz-ubc-1 123 2023-05-01T20:43:19Z Android 1.3.9 CANCEL 5840ms xyz-ubc-1 124 2023-05-01T21:03:19Z iPhone 2.847.4z START 10ms xyz-ubc-1 124 2023-05-01T21:03:21Z iPhone 2.847.4z SIGN_UP 123ms kdj-udn-3 9483 2023-05-01T21:03:33Z iPhone 2.847.4z PLAY 102ms psh-jfb-1 47182 2023-05-02T02:57:00Z Android 1.4.0 START 37ms psh-jfb-1 47182 2023-05-02T02:57:02Z Android 1.4.0 SIGN_UP 57ms
  • 50. ©2023, Imply 50 Example of an Event: Order on an E-commerce website Order is Placed User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED
  • 51. ©2023, Imply 51 Example of an Event: Order on an E-commerce website Payment Rejected User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED
  • 52. ©2023, Imply 52 Example of an Event: Order on an E-commerce website Payment Updated User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED
  • 53. ©2023, Imply 53 Example of an Event: Order on an E-commerce website Payment Approved User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED
  • 54. ©2023, Imply 54 Example of an Event: Order on an E-commerce website Fulfillment Complete User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED 1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE
  • 55. ©2023, Imply 55 Example of an Event: Order on an E-commerce website Picked up for Delivery User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED 1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE 1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP
  • 56. ©2023, Imply 56 Example of an Event: Order on an E-commerce website Delivered User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED 1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE 1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP 1 27 2023-01-07T17:02:46Z DELIVERED
  • 57. ©2023, Imply 57 Example of an Event: Order on an E-commerce website One Product Returned User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED 1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE 1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP 1 27 2023-01-07T17:02:46Z DELIVERED 1 27 2023-01-14T04:18:17Z $55 PARTIAL RETURN
  • 58. ©2023, Imply 58 Example of an Event: Order on an E-commerce website One Product Returned User Id Order Id Time Price Payment Address Tracking ID Action 1 27 2023-01-01T03:19:02Z $89 PayPal 123 Street ORDER PLACED 1 27 2023-01-01T03:19:03Z PAYMENT REJECTED 1 27 2023-01-02T04:01:57Z Credit Card PAYMENT CHANGED 1 27 2023-01-02T04:01:58Z PAYMENT APPROVED 1 27 2023-01-03T23:59:59Z FULFILLMENT COMPLETE 1 27 2023-01-04T08:17:11Z 837012384 DELIVERY PICK UP 1 27 2023-01-07T17:02:46Z DELIVERED 1 27 2023-01-14T04:18:17Z $55 PARTIAL RETURN New values appear as more events are seen
  • 59. ©2023, Imply 59 Infrastructure to work with Events Stream Processors Data Warehouse Event Application DB
  • 60. ©2023, Imply 60 Trends in Working with Events
  • 61. ©2023, Imply 61 Trends in Working with Events Machine Learning Workbench
  • 62. ©2023, Imply 62 Trends in Working with Events Machine Learning Workbench Applications Using Events
  • 63. ©2023, Imply 63 Machine Learning Workbench 1. Analyze Events in Data Warehouse to identify Features 2. Use Data Warehouse processing capacity to train model 3. Evaluate Model by running against Events in Data Warehouse 4. Iterate Features, train, repeat 5. Deploy model to a Stream Processor 6. Apply model to events in the stream, generate new events to put in the stream 7. Event-Reactive services listen to ML events and take actions Train, Predict and connect back to Entities
  • 64. ©2023, Imply 64 Building Applications with Events: Video Streaming Edition The Setup: You are a Video Streaming Service The Problem: You want all employees to have clear visibility of usage of your service across devices The Solution: 1. Generate Logs of usage on devices 2. Collect logs and decorate into telemetry event 3. Flow the events into Event Application DB
  • 65. ©2023, Imply 65 Building Applications with Events: Video Streaming Edition The Setup: You are a Video Streaming Service The Problem: You want all employees to have clear visibility of usage of your service across devices The Solution: 1. Generate Logs of usage on devices 2. Collect logs and decorate into telemetry event 3. Flow the events into Event Application DB Similar to…
  • 66. ©2023, Imply 66 2M events /s 1.5T rows queried in <1s 2X reduction in row count Log API Servers Kafka Log Topics Real-time Measure Extraction Kafka Metric Topics Netflix Cloud LOG LOG LOG User’s Device Netflix Metrics Pipeline
  • 67. ©2023, Imply 67 Building Applications with Events: SaaS Edition The Setup: You are a SaaS Business The Problem: You want to understand usage and billing broken down by service, customer, and even down to arbitrary tags identified by the customer The Solution: 1. Generate telemetry of usage 2. Collect telemetry in kafka 3. Flow the events into Event Application DB 4. Expose via API and UI to internal and external users
  • 68. ©2023, Imply 68 Building Applications with Events: SaaS Edition The Setup: You are a SaaS Business The Problem: You want to understand usage and billing broken down by service, customer, and even down to arbitrary tags identified by the customer The Solution: 1. Generate telemetry of usage 2. Collect telemetry in kafka 3. Flow the events into Event Application DB 4. Expose via API and UI to internal and external users Similar to…
  • 69. ©2023, Imply 69 5M events /s 350 queries /s 24TB /day
  • 70. ©2023, Imply 70 Confluent’s validation of the Kafka-Druid architecture 7 0 "Because of the native integration between Apache Kafka and Apache Druid, we don't even need a connector. It just work out of the box." Harini Rajendran, Confluent's Sr. Software Engineer
  • 71. ©2023, Imply 71 Building Applications with Events: Ads Edition The Setup: You are an Ad-supported Consumer-facing website The Problem: You need to provide visibility and understanding of ad views and demographics to your advertisers The Solution: 1. Collect Ad Impression and Click data 2. Flow it into Kafka 3. Flow the events into an Event Application DB 4. Expose via API and UI to internal and external users
  • 72. ©2023, Imply 72 Building Applications with Events: Ads Edition The Setup: You are an Ad-supported Consumer-facing website The Problem: You need to provide visibility and understanding of ad views and demographics to your advertisers The Solution: 1. Collect Ad Impression and Click data 2. Flow it into Kafka 3. Flow the events into an Event Application DB 4. Expose via API and UI to internal and external users Similar to…
  • 73. ©2023, Imply 73 10+ GB /hr 3X faster queries 99.9% availability Log Servers Kafka stream Amazon S3 raw events Client Events (views, clicks, etc.) Hourly Spark job Metrics API Polished raw events UI Reddit Metrics Pipeline
  • 74. ©2023, Imply 74 If these types of Event-based Applications sound interesting to you…
  • 75. ©2023, Imply 75 Imply: The complete experience for Apache Druid 75 Imply Polaris and hybrid-managed service DBaaS, Hybrid or Software Management, monitoring, and early features and patches Commercial Distribution + + Plus, Imply Pivot to accelerate application development 24/7 support with 100% of the original Druid creators Committer- Driven Expertise With Imply, devs get rapid time to value and success with Druid
  • 76. ©2023, Imply 76 76 Imply Polaris The Cloud Database Service for Apache Druid Most Affordable Most Secure Best Time to Value And for OS Druid Users
  • 77. ©2023, Imply 77 And many more! Leading organizations choose Imply to succeed with Druid Retail Financial Gaming Networking/Energy Technology Security Ad Tech Media
  • 79. ©2023, Imply 79 ©2023, imply | Confidential Thank You! 79 Eric Tschetter