SlideShare a Scribd company logo
Simon Crosby, CTO
swim.ai
simon@swim.ai
1
Swim is an Apache 2.0 licensed platform that makes it
easy to build applications that deliver continuous
intelligence from streaming data, at massive scale
swimos.org
Swim is a Stateful, Real-time Stream Processor
• Builds and scales apps from event data, creating a graph of stateful,
concurrent actors that continuously compute – driven by data
• Automates distributed application infrastructure operation
• Load balances, secures, persists and auto-scales the application
 App: Distributed, stateful, graph
of concurrent Web Agents (actors),
streaming APIs & real-time UIs
 Infrastructure: Distributed, p2p mesh of
instances on k8s using WebSockets
Fabric
>
Jacksonville, FL
Predict real-time traffic flow
traffic.swim.ai
Deliver a continuous stream of predictions
Continuous Intelligence
Analyze, learn & predict, driven by streaming data
Respond in real-time – in sync with the real-world
Continuously evaluate parametric functions and causal
relationships eg: “near to” or “predicted to be within”
Build the app from streaming data by linking sources into
a fluid graph of real-world relationships
Continuous Intelligence
Continuously evaluate complex parametric relationships
• Find trucks that are in or approaching a banned area
• Find trucks with bad braking behavior and alert the nearest inspector
9
Benefits
Use 90% less infrastructure
Apps are easy to develop and operate
Do data science on live data
Deliver answers a million times faster…
Client
Client
Client
Client
Streaming analytics (solved!)
☞ polling  not real-time
(a, b) < 290
Ω(b, t) > 188
Ψ(c,t-1) < ¾
Complements Kafka Streaming & kSQL
Entity relationships are often
parametric in time and space
Evaluations are at huge scale,
stateful and interdependent
Application
Swim – Continuous Intelligence
Developer builds an object-
oriented Java application &
deploys with standard tools
Web Agents link to represent
relationships and share state
Swim uses streaming data to build a
stateful graph of concurrent actors –
Web Agents- one per object (source)
.. to respond in sync with the real
world, & deliver continuously
updated insights to UIs / apps
They continuously analyze, learn
& predict from their state and the
states of linked Agents
… and stream their analysis
and predictions in real-time
over their links …
Swim is like for the real world
• Creates a stateful, concurrent Web Agent for each data
source, that continuously and statefully analyzes data from its
real-world sibling (actors – like Akka without messaging)
• Each Agent dynamically links to related Web Agents, builiding
a fluid in-memory graph that tracks complex relationships eg:
• Containment, proximity - “neighbor” or ”is approaching”
• Computed - “correlated to” or ”predicted to be within”
• Linked Agents use each others’ state to continuously analyze,
learn and predict
• And stream their insights to apps, real-time UIs, storage
Web Agents are stateful, concurrent, distributed
(Java) actors
• Lanes are object members
– Properties and methods eg: “average”
– Hold state, have logic eg “reduce”
– Streamed as updates over links
• Links are relationships between web agents
• Schema derived: contains, average
• Computed: maps, joins, correlations,
membership, “predicted to be”, “near”,
“correlated”
– Build a graph
– A link to a lane lets the linker continuously
observe lane state
Data Lanes Links
(data, old_state)  new_state
Developer View: Web Agents
Streamed
Inputs
λ(i1, i2,.. in, ) → (o1,…oj, )
St-1 St
Streamed
Outputs
Continuously Current Materialized Views
λ(ỉ, ●) → (ỏ, ◙)
• A Web Agent can analyze millions of
(concurrent) updates to Agents it is linked to
• “Debounced” to allow bursts of state changes
• Changed input invalidates dependent outputs
• Does not immediately trigger recomputation
• Use timers to enforce latency bounds
• Informed of partitions
millions
of links
1
5
Agents Continuously Analyze, Learn & Predict
MapReduce
Graph
Analysis
Learn &
Predict
Spark / Flink / Jupyter etc
Relational
Queries
A Swim Application is an Active Graph
1000m
A Graph of Linked Web Agents
A Computational Graph
That Computes as Data
Flows
Edge Fog Cloud
k8s
P2p Mesh
Where?
Edge Fog Cloud
k8s
P2p Mesh
Web Agents Distribute Over Instances
 React in real-time
Easy to develop, deploy & run
Enable data science on live data
Continuous Intelligence for Apache Kafka
Use 90% less infrastructure
Always have the answer
Analyze, learn & predict on-the-fly
Deliver answers a million times faster…

More Related Content

PDF
How to Define and Share your Event APIs using AsyncAPI and Event API Products...
PDF
Delivering Cloud-Native Data Pipelines with Kafka Connect on Kubernetes | Vik...
PPTX
Real time analytics in Azure IoT
PPTX
Introducing Tupilak, Snowplow's unified log fabric
PDF
Should we manage events like APIs? | Alan Chatt and Kim Clark, IBM
PDF
Operational Analytics on Event Streams in Kafka
PDF
QAing in a data platform project - Kalyan Muthiah
PPTX
Real-World Pulsar Architectural Patterns
How to Define and Share your Event APIs using AsyncAPI and Event API Products...
Delivering Cloud-Native Data Pipelines with Kafka Connect on Kubernetes | Vik...
Real time analytics in Azure IoT
Introducing Tupilak, Snowplow's unified log fabric
Should we manage events like APIs? | Alan Chatt and Kim Clark, IBM
Operational Analytics on Event Streams in Kafka
QAing in a data platform project - Kalyan Muthiah
Real-World Pulsar Architectural Patterns

What's hot (20)

PDF
Kafka in practice
PDF
Continuous Intelligence for Customer Service Using Kafka Event Streams | Simo...
PDF
CICD in the World of Serverless
PPTX
Scala eXchange: Building robust data pipelines in Scala
PDF
Why Kafka Works the Way It Does (And Not Some Other Way) | Tim Berglund, Conf...
PDF
Building a Streaming Pipeline on Kubernetes Using Kafka Connect, KSQLDB & Apa...
PDF
Building a Real-Time Forecasting Engine with Scala and Akka
PDF
Patterns of Distributed Application Design
PDF
Testing Event Driven Architectures: How to Broker the Complexity | Frank Kilc...
PDF
GCP for Apache Kafka® Users: Stream Ingestion and Processing
PDF
Event & Data Mesh as a Service: Industrializing Microservices in the Enterpri...
PDF
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
PDF
Deploy your machine learning models to production with Kubernetes
PDF
Events Everywhere: Enabling Digital Transformation in the Public Sector
PPTX
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
PDF
Observability for developer ( Inny So & Andrew Jones, ThoughtWorks) Kafka Su...
PDF
HOP! Airlines Jets to Real Time
PPTX
Tech Talk on Autoscaling in Apache Stratos
PDF
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
PDF
SpringOne Tour St. Louis - Cloud Event Driven Architectures with Spring Cloud...
Kafka in practice
Continuous Intelligence for Customer Service Using Kafka Event Streams | Simo...
CICD in the World of Serverless
Scala eXchange: Building robust data pipelines in Scala
Why Kafka Works the Way It Does (And Not Some Other Way) | Tim Berglund, Conf...
Building a Streaming Pipeline on Kubernetes Using Kafka Connect, KSQLDB & Apa...
Building a Real-Time Forecasting Engine with Scala and Akka
Patterns of Distributed Application Design
Testing Event Driven Architectures: How to Broker the Complexity | Frank Kilc...
GCP for Apache Kafka® Users: Stream Ingestion and Processing
Event & Data Mesh as a Service: Industrializing Microservices in the Enterpri...
Best Practices for Streaming IoT Data with MQTT and Apache Kafka®
Deploy your machine learning models to production with Kubernetes
Events Everywhere: Enabling Digital Transformation in the Public Sector
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
Observability for developer ( Inny So & Andrew Jones, ThoughtWorks) Kafka Su...
HOP! Airlines Jets to Real Time
Tech Talk on Autoscaling in Apache Stratos
Chris Anderson and Yochay Kiriaty - Serverless Patterns with Azure Functions
SpringOne Tour St. Louis - Cloud Event Driven Architectures with Spring Cloud...
Ad

Similar to Continuous Intelligence - Streaming Apps That Are Always In Sync | Simon Crosby, Swim (20)

PDF
NATS Connect Live | SwimOS & NATS
PDF
Easily Build a Smart Pulsar Stream Processor_Simon Crosby
PDF
Building Big Data Streaming Architectures
PPTX
WebAction In-Memory Computing Summit 2015
PDF
Internet of Things Chicago - Meetup
PDF
WSO2Con ASIA 2016: An Introduction to the WSO2 Analytics Platform
PDF
Building end to end streaming application on Spark
PPT
Introduction to Large Scale Data Analysis with WSO2 Analytics Platform
PPTX
Trivento summercamp masterclass 9/9/2016
PDF
Streaming Analytics and Internet of Things - Geesara Prathap
PPTX
Software architecture for data applications
PPTX
Introduction to WSO2 Data Analytics Platform
PDF
IMCSummit 2015 - Day 2 Developer Track - The Internet of Analytics – Discover...
PDF
WSO2Con USA 2017: Driving Insights for Your Digital Business With Analytics
PDF
Building your big data solution
PPTX
INTRODUCTION TO BIG DATA ANALYTICS.pptx
PPTX
Data streaming fundamentals
PDF
Introduction to Streaming Analytics
PPTX
Shikha fdp 62_14july2017
PDF
Cloud Lambda Architecture Patterns
NATS Connect Live | SwimOS & NATS
Easily Build a Smart Pulsar Stream Processor_Simon Crosby
Building Big Data Streaming Architectures
WebAction In-Memory Computing Summit 2015
Internet of Things Chicago - Meetup
WSO2Con ASIA 2016: An Introduction to the WSO2 Analytics Platform
Building end to end streaming application on Spark
Introduction to Large Scale Data Analysis with WSO2 Analytics Platform
Trivento summercamp masterclass 9/9/2016
Streaming Analytics and Internet of Things - Geesara Prathap
Software architecture for data applications
Introduction to WSO2 Data Analytics Platform
IMCSummit 2015 - Day 2 Developer Track - The Internet of Analytics – Discover...
WSO2Con USA 2017: Driving Insights for Your Digital Business With Analytics
Building your big data solution
INTRODUCTION TO BIG DATA ANALYTICS.pptx
Data streaming fundamentals
Introduction to Streaming Analytics
Shikha fdp 62_14july2017
Cloud Lambda Architecture Patterns
Ad

More from HostedbyConfluent (20)

PDF
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
PDF
Renaming a Kafka Topic | Kafka Summit London
PDF
Evolution of NRT Data Ingestion Pipeline at Trendyol
PDF
Ensuring Kafka Service Resilience: A Dive into Health-Checking Techniques
PDF
Exactly-once Stream Processing with Arroyo and Kafka
PDF
Fish Plays Pokemon | Kafka Summit London
PDF
Tiered Storage 101 | Kafla Summit London
PDF
Building a Self-Service Stream Processing Portal: How And Why
PDF
From the Trenches: Improving Kafka Connect Source Connector Ingestion from 7 ...
PDF
Future with Zero Down-Time: End-to-end Resiliency with Chaos Engineering and ...
PDF
Navigating Private Network Connectivity Options for Kafka Clusters
PDF
Apache Flink: Building a Company-wide Self-service Streaming Data Platform
PDF
Explaining How Real-Time GenAI Works in a Noisy Pub
PDF
TL;DR Kafka Metrics | Kafka Summit London
PDF
A Window Into Your Kafka Streams Tasks | KSL
PDF
Mastering Kafka Producer Configs: A Guide to Optimizing Performance
PDF
Data Contracts Management: Schema Registry and Beyond
PDF
Code-First Approach: Crafting Efficient Flink Apps
PDF
Debezium vs. the World: An Overview of the CDC Ecosystem
PDF
Beyond Tiered Storage: Serverless Kafka with No Local Disks
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Renaming a Kafka Topic | Kafka Summit London
Evolution of NRT Data Ingestion Pipeline at Trendyol
Ensuring Kafka Service Resilience: A Dive into Health-Checking Techniques
Exactly-once Stream Processing with Arroyo and Kafka
Fish Plays Pokemon | Kafka Summit London
Tiered Storage 101 | Kafla Summit London
Building a Self-Service Stream Processing Portal: How And Why
From the Trenches: Improving Kafka Connect Source Connector Ingestion from 7 ...
Future with Zero Down-Time: End-to-end Resiliency with Chaos Engineering and ...
Navigating Private Network Connectivity Options for Kafka Clusters
Apache Flink: Building a Company-wide Self-service Streaming Data Platform
Explaining How Real-Time GenAI Works in a Noisy Pub
TL;DR Kafka Metrics | Kafka Summit London
A Window Into Your Kafka Streams Tasks | KSL
Mastering Kafka Producer Configs: A Guide to Optimizing Performance
Data Contracts Management: Schema Registry and Beyond
Code-First Approach: Crafting Efficient Flink Apps
Debezium vs. the World: An Overview of the CDC Ecosystem
Beyond Tiered Storage: Serverless Kafka with No Local Disks

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPT
Teaching material agriculture food technology
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Cloud computing and distributed systems.
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Encapsulation theory and applications.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Reach Out and Touch Someone: Haptics and Empathic Computing
Teaching material agriculture food technology
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Network Security Unit 5.pdf for BCA BBA.
Building Integrated photovoltaic BIPV_UPV.pdf
Encapsulation_ Review paper, used for researhc scholars
Cloud computing and distributed systems.
Per capita expenditure prediction using model stacking based on satellite ima...
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
20250228 LYD VKU AI Blended-Learning.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Review of recent advances in non-invasive hemoglobin estimation
Encapsulation theory and applications.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Digital-Transformation-Roadmap-for-Companies.pptx

Continuous Intelligence - Streaming Apps That Are Always In Sync | Simon Crosby, Swim

  • 2. Swim is an Apache 2.0 licensed platform that makes it easy to build applications that deliver continuous intelligence from streaming data, at massive scale swimos.org
  • 3. Swim is a Stateful, Real-time Stream Processor • Builds and scales apps from event data, creating a graph of stateful, concurrent actors that continuously compute – driven by data • Automates distributed application infrastructure operation • Load balances, secures, persists and auto-scales the application  App: Distributed, stateful, graph of concurrent Web Agents (actors), streaming APIs & real-time UIs  Infrastructure: Distributed, p2p mesh of instances on k8s using WebSockets Fabric
  • 5. Predict real-time traffic flow traffic.swim.ai Deliver a continuous stream of predictions
  • 7. Analyze, learn & predict, driven by streaming data Respond in real-time – in sync with the real-world Continuously evaluate parametric functions and causal relationships eg: “near to” or “predicted to be within” Build the app from streaming data by linking sources into a fluid graph of real-world relationships Continuous Intelligence
  • 8. Continuously evaluate complex parametric relationships • Find trucks that are in or approaching a banned area • Find trucks with bad braking behavior and alert the nearest inspector
  • 9. 9 Benefits Use 90% less infrastructure Apps are easy to develop and operate Do data science on live data Deliver answers a million times faster…
  • 10. Client Client Client Client Streaming analytics (solved!) ☞ polling  not real-time (a, b) < 290 Ω(b, t) > 188 Ψ(c,t-1) < ¾ Complements Kafka Streaming & kSQL Entity relationships are often parametric in time and space Evaluations are at huge scale, stateful and interdependent Application
  • 11. Swim – Continuous Intelligence Developer builds an object- oriented Java application & deploys with standard tools Web Agents link to represent relationships and share state Swim uses streaming data to build a stateful graph of concurrent actors – Web Agents- one per object (source) .. to respond in sync with the real world, & deliver continuously updated insights to UIs / apps They continuously analyze, learn & predict from their state and the states of linked Agents … and stream their analysis and predictions in real-time over their links …
  • 12. Swim is like for the real world • Creates a stateful, concurrent Web Agent for each data source, that continuously and statefully analyzes data from its real-world sibling (actors – like Akka without messaging) • Each Agent dynamically links to related Web Agents, builiding a fluid in-memory graph that tracks complex relationships eg: • Containment, proximity - “neighbor” or ”is approaching” • Computed - “correlated to” or ”predicted to be within” • Linked Agents use each others’ state to continuously analyze, learn and predict • And stream their insights to apps, real-time UIs, storage
  • 13. Web Agents are stateful, concurrent, distributed (Java) actors • Lanes are object members – Properties and methods eg: “average” – Hold state, have logic eg “reduce” – Streamed as updates over links • Links are relationships between web agents • Schema derived: contains, average • Computed: maps, joins, correlations, membership, “predicted to be”, “near”, “correlated” – Build a graph – A link to a lane lets the linker continuously observe lane state Data Lanes Links (data, old_state)  new_state Developer View: Web Agents
  • 14. Streamed Inputs λ(i1, i2,.. in, ) → (o1,…oj, ) St-1 St Streamed Outputs Continuously Current Materialized Views λ(ỉ, ●) → (ỏ, ◙) • A Web Agent can analyze millions of (concurrent) updates to Agents it is linked to • “Debounced” to allow bursts of state changes • Changed input invalidates dependent outputs • Does not immediately trigger recomputation • Use timers to enforce latency bounds • Informed of partitions millions of links
  • 15. 1 5 Agents Continuously Analyze, Learn & Predict MapReduce Graph Analysis Learn & Predict Spark / Flink / Jupyter etc Relational Queries
  • 16. A Swim Application is an Active Graph
  • 17. 1000m A Graph of Linked Web Agents
  • 18. A Computational Graph That Computes as Data Flows
  • 19. Edge Fog Cloud k8s P2p Mesh Where?
  • 20. Edge Fog Cloud k8s P2p Mesh Web Agents Distribute Over Instances
  • 21.  React in real-time Easy to develop, deploy & run Enable data science on live data Continuous Intelligence for Apache Kafka Use 90% less infrastructure Always have the answer Analyze, learn & predict on-the-fly Deliver answers a million times faster…