SlideShare a Scribd company logo
EVENT STREAMING
ARCHITECTURE - DEEP
DIVE
KARTHIKEYAN VK
@KARTHIK3030
WHY EVENT STREAMING?
Realtime
processing
Realtime
analytics
Live
dashboarding
Solves
Microservices
drawbacks
Faster
developme
nt
PROBLEMS WITH CURRENT ANALYTICS
Not Realtime
ETL was created during a
period of monolithic
architectures, data warehouses
and relational databases.
PROBLEMS WITH CURRENT MICROSERVICES
ARCHITECTURE
• Client more details about our
service
• Too many details to be
exposed
• Chatty communication
PROBLEMS WITH CURRENT MICROSERVICES
ARCHITECTURE
• Gateway can take care of
authentication.
• Rate limiting possible
• Things seems ok.
ANTIPATTERN – GOD
SIDECAR PATTERN
CHANGES ARE STILL HARD
• Adding a new service needs to
communicated to other services of
its presence.
• Chatty communication between
services
• REST+JSON is SLOW
• GRPC better, but not a complete
solution
• Adding services adds new changes
to the other services.
EVENT DRIVEN/STREAMING
COMPARISON
EVENT STREAMING PATTERN
ONLINE SHOP
1. No Knowledge of other services
2. Communication at services will.
3. Rest calls reduced.
4. Broadcast your events and can be
ignored by other services or
consumed.
ONLINE SHOPPING USING R.E.S.T
1.Order should know about
shipment services
2.Shipment should get details
of the customer from the
customer service
3.What if there is customer
details are changed ?
EVENT ARE BOTH FACTS AND TRIGGERS
PRODUCT ORDERED - FACT
1.Order submitted
2.Event sent to Kafka
3.Shipment reacts to the order
being placed
4.No REST communication
between order and shipment
5.Product updates itself based
on process result
ADDRESS CHANGED - TRIGGER
1.Customer changes address
2.Event sent to Kafka
3.Shipment reacts to changes
4.Order does not have to care
about any changes once it is
placed.
5.Shipment updates its database
6.Other services will not react if it
is not pertained to them,
IGNORE
DEMO
AZURE EVENT HUBS - SETUP
DEMO
EVENT STREAMING -
DEEPDIVE
BOOKS TO READ
BASICS OF EVENT STREAMING
• Databases vs streams
• Command vs Events
• Immutable Events
• State, Streams and Immutability
• Stream Joins
DATABASE VS STREAMS
• Concept wise it is same
• Every action takes places is stored as logs
• Restore happens from reading the logs again and creating
the database
COMMAND VS EVENTS VS IMMUTABLE
EVENTS
• Any request is a command.
• After integrity check it becomes an Event.
• Booking an air ticket is command, if there is ticket
available, it becomes an event. It also becomes a fact.
• When the ticket is cancelled, it is still an event, that is
immutable and recorded in our system.
STATE, STREAMS AND IMMUTABILITY
• When the ticket is booked, the State is saved.
• When the ticket date is changed and ticket class is
upgraded, there is a Stream of events that changes the
state.
• Ticket can even be cancelled but the history of the ticket
booking will remain and recorded as logs and each event
is Immutable.
STREAM JOINS
• Joining different datasets to perform analysis
• Stream-Stream Join
• Stream-Table Join
• Table-Table Join
STREAM-STREAM JOINS
• User searches for a book and he clicks the search result.
• You need to map the book searched and clicked book.
• Now the search is recorded as one event and click is
another event.
• If you want to analyse the click through rate you need to
bring together the search and click action, which can be
connected by Session ID
STREAM-TABLE JOINS
• User searches for a book
• You need to show some recommendation based on his
search
• Now you need to join the search which is an event and his
search history which is saved as table.
• You can copy the table to local cache and join the search.
But cache can become stale. Better is to subscribe the
cache to the stream of user history
DEMO
AZURE EVENT HUBS – ANOMALY
DETECTION ON STREAMING DATA
REFERENCES
• https://www.infoq.com/presentations/microservices-streams-state-
scalability/
• https://docs.microsoft.com/en-in/azure/event-hubs/event-hubs-about
• https://docs.microsoft.com/en-in/azure/event-hubs/event-hubs-tutorial-
visualize-anomalies
• https://github.com/Azure/azure-event-
hubs/tree/master/samples/DotNet/Azure.Messaging.EventHubs
Q&A

More Related Content

What's hot

Cloud Based Rights Management with Azure RMS
Cloud Based Rights Management with Azure RMSCloud Based Rights Management with Azure RMS
Cloud Based Rights Management with Azure RMS
Morgan Simonsen
 
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
Digital Transformation EXPO Event Series
 
Introduction to Active Directory
Introduction to Active DirectoryIntroduction to Active Directory
Introduction to Active Directory
Jalpesh Vadgama
 
Azure operational insights
Azure operational insightsAzure operational insights
Azure operational insights
Ilyas F ☁☁☁
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud Services
David J Rosenthal
 
Azure security and Compliance
Azure security and ComplianceAzure security and Compliance
Azure security and Compliance
Karina Matos
 
SQL Server 2008 Security Overview
SQL Server 2008 Security OverviewSQL Server 2008 Security Overview
SQL Server 2008 Security Overviewukdpe
 
Data Architecture not Just for Microservices
Data Architecture not Just for MicroservicesData Architecture not Just for Microservices
Data Architecture not Just for Microservices
Eberhard Wolff
 
Deep thoughts from the real world of azure
Deep thoughts from the real world of azureDeep thoughts from the real world of azure
Deep thoughts from the real world of azure
Michele Leroux Bustamante
 
Security Architecture Best Practices for SaaS Applications
Security Architecture Best Practices for SaaS ApplicationsSecurity Architecture Best Practices for SaaS Applications
Security Architecture Best Practices for SaaS Applications
Techcello
 
Enterprise-class security with PostgreSQL - 2
Enterprise-class security with PostgreSQL - 2Enterprise-class security with PostgreSQL - 2
Enterprise-class security with PostgreSQL - 2
Ashnikbiz
 
Enterprise-class security with PostgreSQL - 1
Enterprise-class security with PostgreSQL - 1Enterprise-class security with PostgreSQL - 1
Enterprise-class security with PostgreSQL - 1
Ashnikbiz
 
Work with data in ASP.NET
Work with data in ASP.NETWork with data in ASP.NET
Work with data in ASP.NET
Peter Gfader
 
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL DatabaseModern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
WinWire Technologies Inc
 
التقنيات المستخدمة لتطوير المكتبات
التقنيات المستخدمة لتطوير المكتباتالتقنيات المستخدمة لتطوير المكتبات
التقنيات المستخدمة لتطوير المكتبات
Mohammed El Rafie Tarabay
 
Building Secure Extranets with Claims-Based Authentication #SPEvo13
Building Secure Extranets with Claims-Based Authentication #SPEvo13Building Secure Extranets with Claims-Based Authentication #SPEvo13
Building Secure Extranets with Claims-Based Authentication #SPEvo13
Gus Fraser
 
Decentralization of internet of things with blockchain architecture
Decentralization of internet of things with blockchain architectureDecentralization of internet of things with blockchain architecture
Decentralization of internet of things with blockchain architecture
V C
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
Chris Patterson
 
Azure Security Overview
Azure Security OverviewAzure Security Overview
Azure Security Overview
Allen Brokken
 
Search for all with Elastic Enterprise Search
Search for all with Elastic Enterprise Search Search for all with Elastic Enterprise Search
Search for all with Elastic Enterprise Search
Elasticsearch
 

What's hot (20)

Cloud Based Rights Management with Azure RMS
Cloud Based Rights Management with Azure RMSCloud Based Rights Management with Azure RMS
Cloud Based Rights Management with Azure RMS
 
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
Bringing Enterprise to the Blockchain - Moving from Science Experiment to Pra...
 
Introduction to Active Directory
Introduction to Active DirectoryIntroduction to Active Directory
Introduction to Active Directory
 
Azure operational insights
Azure operational insightsAzure operational insights
Azure operational insights
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud Services
 
Azure security and Compliance
Azure security and ComplianceAzure security and Compliance
Azure security and Compliance
 
SQL Server 2008 Security Overview
SQL Server 2008 Security OverviewSQL Server 2008 Security Overview
SQL Server 2008 Security Overview
 
Data Architecture not Just for Microservices
Data Architecture not Just for MicroservicesData Architecture not Just for Microservices
Data Architecture not Just for Microservices
 
Deep thoughts from the real world of azure
Deep thoughts from the real world of azureDeep thoughts from the real world of azure
Deep thoughts from the real world of azure
 
Security Architecture Best Practices for SaaS Applications
Security Architecture Best Practices for SaaS ApplicationsSecurity Architecture Best Practices for SaaS Applications
Security Architecture Best Practices for SaaS Applications
 
Enterprise-class security with PostgreSQL - 2
Enterprise-class security with PostgreSQL - 2Enterprise-class security with PostgreSQL - 2
Enterprise-class security with PostgreSQL - 2
 
Enterprise-class security with PostgreSQL - 1
Enterprise-class security with PostgreSQL - 1Enterprise-class security with PostgreSQL - 1
Enterprise-class security with PostgreSQL - 1
 
Work with data in ASP.NET
Work with data in ASP.NETWork with data in ASP.NET
Work with data in ASP.NET
 
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL DatabaseModern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
 
التقنيات المستخدمة لتطوير المكتبات
التقنيات المستخدمة لتطوير المكتباتالتقنيات المستخدمة لتطوير المكتبات
التقنيات المستخدمة لتطوير المكتبات
 
Building Secure Extranets with Claims-Based Authentication #SPEvo13
Building Secure Extranets with Claims-Based Authentication #SPEvo13Building Secure Extranets with Claims-Based Authentication #SPEvo13
Building Secure Extranets with Claims-Based Authentication #SPEvo13
 
Decentralization of internet of things with blockchain architecture
Decentralization of internet of things with blockchain architectureDecentralization of internet of things with blockchain architecture
Decentralization of internet of things with blockchain architecture
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Azure Security Overview
Azure Security OverviewAzure Security Overview
Azure Security Overview
 
Search for all with Elastic Enterprise Search
Search for all with Elastic Enterprise Search Search for all with Elastic Enterprise Search
Search for all with Elastic Enterprise Search
 

Similar to Event Streaming Architecture - Deep Dive

Events in a microservices architecture
Events in a microservices architectureEvents in a microservices architecture
Events in a microservices architecture
Saul Caganoff
 
StructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptxStructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptx
GianCarloPoggiEscoba1
 
StructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptxStructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptx
MiloudMihoubi
 
Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling Microservices
Bradley Irby
 
Patterns of Distributed Application Design
Patterns of Distributed Application DesignPatterns of Distributed Application Design
Patterns of Distributed Application Design
Orkhan Gasimov
 
Azure stream analytics by Nico Jacobs
Azure stream analytics by Nico JacobsAzure stream analytics by Nico Jacobs
Azure stream analytics by Nico Jacobs
ITProceed
 
Events & Microservices
Events & MicroservicesEvents & Microservices
Events & Microservices
Yamen Sader
 
Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018
Bradley Irby
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
confluent
 
Reliable and Scalable Data Ingestion at Airbnb
Reliable and Scalable Data Ingestion at AirbnbReliable and Scalable Data Ingestion at Airbnb
Reliable and Scalable Data Ingestion at Airbnb
DataWorks Summit/Hadoop Summit
 
Observability – the good, the bad, and the ugly
Observability – the good, the bad, and the uglyObservability – the good, the bad, and the ugly
Observability – the good, the bad, and the ugly
Timetrix
 
WebAction-Sami Abkay
WebAction-Sami AbkayWebAction-Sami Abkay
WebAction-Sami Abkay
Inside Analysis
 
CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applications
Michael Blackstock
 
Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven ArchitecturesAvinash Ramineni
 
Patterns of Distributed Application Design
Patterns of Distributed Application DesignPatterns of Distributed Application Design
Patterns of Distributed Application Design
GlobalLogic Ukraine
 
Assessing New Databases– Translytical Use Cases
Assessing New Databases– Translytical Use CasesAssessing New Databases– Translytical Use Cases
Assessing New Databases– Translytical Use Cases
DATAVERSITY
 
Billions of Rows, Millions of Insights, Right Now
Billions of Rows, Millions of Insights, Right NowBillions of Rows, Millions of Insights, Right Now
Billions of Rows, Millions of Insights, Right Now
Rob Winters
 
Tableau Seattle BI Event How Tableau Changed My Life
Tableau Seattle BI Event How Tableau Changed My LifeTableau Seattle BI Event How Tableau Changed My Life
Tableau Seattle BI Event How Tableau Changed My Life
Russell Spangler
 
StreamCentral Information System Overview
StreamCentral Information System OverviewStreamCentral Information System Overview
StreamCentral Information System OverviewRaheel Retiwalla
 
Understanding event data
Understanding event dataUnderstanding event data
Understanding event data
yalisassoon
 

Similar to Event Streaming Architecture - Deep Dive (20)

Events in a microservices architecture
Events in a microservices architectureEvents in a microservices architecture
Events in a microservices architecture
 
StructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptxStructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptx
 
StructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptxStructuredStreaming webinar slides.pptx
StructuredStreaming webinar slides.pptx
 
Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling Microservices
 
Patterns of Distributed Application Design
Patterns of Distributed Application DesignPatterns of Distributed Application Design
Patterns of Distributed Application Design
 
Azure stream analytics by Nico Jacobs
Azure stream analytics by Nico JacobsAzure stream analytics by Nico Jacobs
Azure stream analytics by Nico Jacobs
 
Events & Microservices
Events & MicroservicesEvents & Microservices
Events & Microservices
 
Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018Event Driven Architectures - Net Conf UY 2018
Event Driven Architectures - Net Conf UY 2018
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
 
Reliable and Scalable Data Ingestion at Airbnb
Reliable and Scalable Data Ingestion at AirbnbReliable and Scalable Data Ingestion at Airbnb
Reliable and Scalable Data Ingestion at Airbnb
 
Observability – the good, the bad, and the ugly
Observability – the good, the bad, and the uglyObservability – the good, the bad, and the ugly
Observability – the good, the bad, and the ugly
 
WebAction-Sami Abkay
WebAction-Sami AbkayWebAction-Sami Abkay
WebAction-Sami Abkay
 
CQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applicationsCQRS and Event Sourcing for IoT applications
CQRS and Event Sourcing for IoT applications
 
Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven Architectures
 
Patterns of Distributed Application Design
Patterns of Distributed Application DesignPatterns of Distributed Application Design
Patterns of Distributed Application Design
 
Assessing New Databases– Translytical Use Cases
Assessing New Databases– Translytical Use CasesAssessing New Databases– Translytical Use Cases
Assessing New Databases– Translytical Use Cases
 
Billions of Rows, Millions of Insights, Right Now
Billions of Rows, Millions of Insights, Right NowBillions of Rows, Millions of Insights, Right Now
Billions of Rows, Millions of Insights, Right Now
 
Tableau Seattle BI Event How Tableau Changed My Life
Tableau Seattle BI Event How Tableau Changed My LifeTableau Seattle BI Event How Tableau Changed My Life
Tableau Seattle BI Event How Tableau Changed My Life
 
StreamCentral Information System Overview
StreamCentral Information System OverviewStreamCentral Information System Overview
StreamCentral Information System Overview
 
Understanding event data
Understanding event dataUnderstanding event data
Understanding event data
 

More from Karthikeyan VK

GCD ChatGPT.pptx
GCD ChatGPT.pptxGCD ChatGPT.pptx
GCD ChatGPT.pptx
Karthikeyan VK
 
DataScience-101
DataScience-101DataScience-101
DataScience-101
Karthikeyan VK
 
How to become a Software Architect.pptx
How to become a Software Architect.pptxHow to become a Software Architect.pptx
How to become a Software Architect.pptx
Karthikeyan VK
 
Blockchain workshop 101
Blockchain workshop 101Blockchain workshop 101
Blockchain workshop 101
Karthikeyan VK
 
Anti patterns
Anti patternsAnti patterns
Anti patterns
Karthikeyan VK
 
How to double your productivity as a developer
How to double your productivity as a developerHow to double your productivity as a developer
How to double your productivity as a developer
Karthikeyan VK
 
How to be an expert in Debugging .Net Applications
How to be an expert in Debugging .Net ApplicationsHow to be an expert in Debugging .Net Applications
How to be an expert in Debugging .Net Applications
Karthikeyan VK
 
Chat bot LUIS
Chat bot LUISChat bot LUIS
Chat bot LUIS
Karthikeyan VK
 
Cloud design pattern using azure
Cloud design pattern using azureCloud design pattern using azure
Cloud design pattern using azure
Karthikeyan VK
 
Enterprise security kubernetes
Enterprise security kubernetesEnterprise security kubernetes
Enterprise security kubernetes
Karthikeyan VK
 
Save Azure Cost
Save Azure CostSave Azure Cost
Save Azure Cost
Karthikeyan VK
 
Learning graphql .Net
Learning graphql .NetLearning graphql .Net
Learning graphql .Net
Karthikeyan VK
 
Azure devspaces
Azure devspacesAzure devspaces
Azure devspaces
Karthikeyan VK
 
Azure Event Grid
Azure Event Grid Azure Event Grid
Azure Event Grid
Karthikeyan VK
 
Machine Learning Basics using Azure ML
Machine Learning Basics using Azure MLMachine Learning Basics using Azure ML
Machine Learning Basics using Azure ML
Karthikeyan VK
 
Convert monolithic .Net Applications to microservices With Principles
Convert monolithic .Net Applications to microservices With PrinciplesConvert monolithic .Net Applications to microservices With Principles
Convert monolithic .Net Applications to microservices With Principles
Karthikeyan VK
 
Cognitive Intelligence using azure search
Cognitive Intelligence using azure searchCognitive Intelligence using azure search
Cognitive Intelligence using azure search
Karthikeyan VK
 
Convert monolithic .Net Applications to microservices
Convert monolithic .Net Applications to microservicesConvert monolithic .Net Applications to microservices
Convert monolithic .Net Applications to microservices
Karthikeyan VK
 
Azure container instances
Azure container instancesAzure container instances
Azure container instances
Karthikeyan VK
 
Azure Durable Functions
Azure Durable FunctionsAzure Durable Functions
Azure Durable Functions
Karthikeyan VK
 

More from Karthikeyan VK (20)

GCD ChatGPT.pptx
GCD ChatGPT.pptxGCD ChatGPT.pptx
GCD ChatGPT.pptx
 
DataScience-101
DataScience-101DataScience-101
DataScience-101
 
How to become a Software Architect.pptx
How to become a Software Architect.pptxHow to become a Software Architect.pptx
How to become a Software Architect.pptx
 
Blockchain workshop 101
Blockchain workshop 101Blockchain workshop 101
Blockchain workshop 101
 
Anti patterns
Anti patternsAnti patterns
Anti patterns
 
How to double your productivity as a developer
How to double your productivity as a developerHow to double your productivity as a developer
How to double your productivity as a developer
 
How to be an expert in Debugging .Net Applications
How to be an expert in Debugging .Net ApplicationsHow to be an expert in Debugging .Net Applications
How to be an expert in Debugging .Net Applications
 
Chat bot LUIS
Chat bot LUISChat bot LUIS
Chat bot LUIS
 
Cloud design pattern using azure
Cloud design pattern using azureCloud design pattern using azure
Cloud design pattern using azure
 
Enterprise security kubernetes
Enterprise security kubernetesEnterprise security kubernetes
Enterprise security kubernetes
 
Save Azure Cost
Save Azure CostSave Azure Cost
Save Azure Cost
 
Learning graphql .Net
Learning graphql .NetLearning graphql .Net
Learning graphql .Net
 
Azure devspaces
Azure devspacesAzure devspaces
Azure devspaces
 
Azure Event Grid
Azure Event Grid Azure Event Grid
Azure Event Grid
 
Machine Learning Basics using Azure ML
Machine Learning Basics using Azure MLMachine Learning Basics using Azure ML
Machine Learning Basics using Azure ML
 
Convert monolithic .Net Applications to microservices With Principles
Convert monolithic .Net Applications to microservices With PrinciplesConvert monolithic .Net Applications to microservices With Principles
Convert monolithic .Net Applications to microservices With Principles
 
Cognitive Intelligence using azure search
Cognitive Intelligence using azure searchCognitive Intelligence using azure search
Cognitive Intelligence using azure search
 
Convert monolithic .Net Applications to microservices
Convert monolithic .Net Applications to microservicesConvert monolithic .Net Applications to microservices
Convert monolithic .Net Applications to microservices
 
Azure container instances
Azure container instancesAzure container instances
Azure container instances
 
Azure Durable Functions
Azure Durable FunctionsAzure Durable Functions
Azure Durable Functions
 

Recently uploaded

Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 

Recently uploaded (20)

Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 

Event Streaming Architecture - Deep Dive

  • 1. EVENT STREAMING ARCHITECTURE - DEEP DIVE KARTHIKEYAN VK @KARTHIK3030
  • 3. PROBLEMS WITH CURRENT ANALYTICS Not Realtime ETL was created during a period of monolithic architectures, data warehouses and relational databases.
  • 4. PROBLEMS WITH CURRENT MICROSERVICES ARCHITECTURE • Client more details about our service • Too many details to be exposed • Chatty communication
  • 5. PROBLEMS WITH CURRENT MICROSERVICES ARCHITECTURE • Gateway can take care of authentication. • Rate limiting possible • Things seems ok.
  • 8. CHANGES ARE STILL HARD • Adding a new service needs to communicated to other services of its presence. • Chatty communication between services • REST+JSON is SLOW • GRPC better, but not a complete solution • Adding services adds new changes to the other services.
  • 12. ONLINE SHOP 1. No Knowledge of other services 2. Communication at services will. 3. Rest calls reduced. 4. Broadcast your events and can be ignored by other services or consumed.
  • 13. ONLINE SHOPPING USING R.E.S.T 1.Order should know about shipment services 2.Shipment should get details of the customer from the customer service 3.What if there is customer details are changed ?
  • 14. EVENT ARE BOTH FACTS AND TRIGGERS
  • 15. PRODUCT ORDERED - FACT 1.Order submitted 2.Event sent to Kafka 3.Shipment reacts to the order being placed 4.No REST communication between order and shipment 5.Product updates itself based on process result
  • 16. ADDRESS CHANGED - TRIGGER 1.Customer changes address 2.Event sent to Kafka 3.Shipment reacts to changes 4.Order does not have to care about any changes once it is placed. 5.Shipment updates its database 6.Other services will not react if it is not pertained to them, IGNORE
  • 20. BASICS OF EVENT STREAMING • Databases vs streams • Command vs Events • Immutable Events • State, Streams and Immutability • Stream Joins
  • 21. DATABASE VS STREAMS • Concept wise it is same • Every action takes places is stored as logs • Restore happens from reading the logs again and creating the database
  • 22. COMMAND VS EVENTS VS IMMUTABLE EVENTS • Any request is a command. • After integrity check it becomes an Event. • Booking an air ticket is command, if there is ticket available, it becomes an event. It also becomes a fact. • When the ticket is cancelled, it is still an event, that is immutable and recorded in our system.
  • 23. STATE, STREAMS AND IMMUTABILITY • When the ticket is booked, the State is saved. • When the ticket date is changed and ticket class is upgraded, there is a Stream of events that changes the state. • Ticket can even be cancelled but the history of the ticket booking will remain and recorded as logs and each event is Immutable.
  • 24. STREAM JOINS • Joining different datasets to perform analysis • Stream-Stream Join • Stream-Table Join • Table-Table Join
  • 25. STREAM-STREAM JOINS • User searches for a book and he clicks the search result. • You need to map the book searched and clicked book. • Now the search is recorded as one event and click is another event. • If you want to analyse the click through rate you need to bring together the search and click action, which can be connected by Session ID
  • 26. STREAM-TABLE JOINS • User searches for a book • You need to show some recommendation based on his search • Now you need to join the search which is an event and his search history which is saved as table. • You can copy the table to local cache and join the search. But cache can become stale. Better is to subscribe the cache to the stream of user history
  • 27. DEMO AZURE EVENT HUBS – ANOMALY DETECTION ON STREAMING DATA
  • 28. REFERENCES • https://www.infoq.com/presentations/microservices-streams-state- scalability/ • https://docs.microsoft.com/en-in/azure/event-hubs/event-hubs-about • https://docs.microsoft.com/en-in/azure/event-hubs/event-hubs-tutorial- visualize-anomalies • https://github.com/Azure/azure-event- hubs/tree/master/samples/DotNet/Azure.Messaging.EventHubs
  • 29. Q&A