Building a Real-Time Analytics Database
summary
A practical recipe for a user-facing analytics DB: choose tuples (tables) stored columnar storage, ingest streams from Kafka, expose SQL, and implement multiple indexes (forward, inverted, Bloom, text, geospatial and a star-tree index) so high-cardinality, multi-dimensional queries hit 100ms-scale UI latencies rather than seconds. Apache Pinot-style architecture ships real-time ingestion, pluggable indexes, and distributed scaling; used at LinkedIn and UberEats for location-heavy, low-latency queries and it demonstrably delivers the freshness + concurrency tradeoffs required.
AI-written summary · about
chapters (10)
- 0:00Introduction and context
- 3:31Defining real-time analytics
- 6:19Data storage choices
- 9:16Representing data models
- 12:16The case for tables
- 15:33Row vs. column storage
- 18:25Query languages
- 24:01Storage and immutability
- 31:27Indexing in Apache Pinot
- 41:58Performance and conclusion
related talks
29mRealtime Analytics Unleashed: Unlocking the Potential of Data at Scale
46mOptimizing Speed and Scale of User-Facing Analytics w Kafka and Pinot
44mUSER-FACING, REALTIME ANALYTICS USING APACHE PINOT
34mReal-Time Analytics: Going Beyond Stream Processing with Apache Pinot
38mReal-Time Analytics: Going Beyond Stream Processing with Apache Pinot
47mReal-time Analytics for Your Users with Apache Pinot
47mReal-time analytics for your users with Apache Pinot
33mOptimizing Speed and Scale of Real-Time Analytics Using Apache Pulsar and Apache P...
