Quix · Cinematic Series
A short story about streaming data.
A keynote-style opener — large display type, drifting nebulae, soft gradient mesh, letter-by-letter reveals. For audience-facing moments where the first impression has to land.
01
The pipeline problem.
Why real-time systems break the assumptions that batch architectures were built on.
Core idea
State is the bottleneck, not throughput.
Most teams scale compute first and discover, six months later, that the real ceiling is how state is stored, shared, and replayed across operators. The fix is architectural, not infrastructural — and it's the part nobody puts on a slide.
This template demonstrates how body copy, headings, and emphasised metrics share the same page without competing.
latency p99 = 42ms
throughput = 1.2M msg/s
state size = 18 GB
SLA met
Results
Three numbers that explain the shift.
Median latency
42 ms
↓ 78% vs. batch
Cost per million events
$0.18
↓ 64% vs. v0
Streaming isn't faster batch. It's a different shape of problem.
— principal engineer, infra team
Agenda
What we'll cover.
01
Why streaming breaks batch assumptionsThe mental model shift, in one diagram.
12 min
02
State as a first-class objectHow operator state shapes everything downstream.
18 min
03
Failure modes nobody documentsThe three bugs that kill production pipelines.
15 min
04
Live walkthrough · Q&AEnd on something working, not something theoretical.
20 min
Your host
JB
Speaker · Quix
Javier Blanco.
Engineer, writer, and reluctant ops person.
- Eight years building streaming systems in production.
- Burned by Kafka in three different ways. Still recommends Kafka.
- Lives at javier@quix.io when not breaking pipelines.
What we built
Three pieces, one system.
Each card describes one capability — short headline, three lines of body, accent rotation across blue, purple, orange.
◆
Stateful operators
Rocks-backed key/value state replicated across the cluster. Exactly-once semantics, no manual checkpoint dance.
◇
Adaptive backpressure
Watermarks propagate upstream automatically. The system slows itself before it has to drop or buffer.
▲
Materialized views
Continuously updated derived tables, queryable from SQL. The dashboard reads from state, not from history.
Before / After
What the rewrite actually changed.
Before · v0
Batch on a schedule.
- 15-minute pipeline cadence.
- Recovery measured in tens of minutes.
- State rebuilt from scratch on every job.
- Dashboards lagged behind reality.
vs
After · v1
Continuous and stateful.
- Sub-second event-to-view latency.
- Recovery in seconds, not minutes.
- State held in the operator, not the DB.
- Dashboards reflect live system state.
Live code
Five lines, one streaming aggregation.
1# pipeline.py · sliding window over click events
2from quixstreams import Application
3
4app = Application(broker_address="localhost:9092")
5sdf = app.dataframe(topic=app.topic("clicks"))
6out = sdf.tumbling_window(60).count().final()
7out.to_topic(app.topic("clicks_per_minute"))
8app.run() # exactly-once, no checkpoint config needed
The whole pipeline, in the language the data team already speaks.
How it works
From raw event to live view in four steps.
01
Ingest
Producers write to a Kafka topic. Schema enforced at the broker.
02
Transform
Streaming SQL filters, joins, and enriches each event in flight.
03
Aggregate
Windowed counts and reductions held in stateful operators.
04
Serve
Materialized views surface to dashboards and downstream consumers.
Key takeaways
Four things to remember when the slides are gone.
01
State is the bottleneck.Compute scales horizontally. State doesn't, until you treat it as a primary object.
02
Backpressure is a design choice.If you didn't pick where it accumulates, the system picked for you — usually the worst place.
03
Recovery time defines availability.p99 latency is what your users see. MTTR is what your on-call sees. Both are the same problem.
04
Document the thing you wish someone handed you.The runbook you write at 2am is the only one anyone ever reads.
End of deck
Questions?
Let's talk.
Emailjavier@quix.io
Slidesquix.io/webinar
GitHubgithub.com/quixio