QuestDB: Fast Open Source Time Series Database
summary
QuestDB implements a zero-GC Java with off-heap arrays engine that stores column values in their in-memory layout on disk, uses time-partitioned, append-only files, and chooses between append vs merge paths based on overlap to keep ingestion fast while supporting out-of-order writes. Queries run in a single multi-threaded JVM with JIT/AVX-compiled where clauses, a dictionary symbol type for low-cost dimension lookups, per-column snapshot/versioning for cheap updates and backups, and planned features: replication, cold storage, and cloud managed service.
AI-written summary · about
chapters (20)
- 0:00Introduction
- 1:27About me
- 2:42Java
- 4:23Problem
- 5:22TSBS Benchmark
- 6:58QuestDB Overview
- 11:15Storage
- 13:39Data Types
- 14:52File System
- 15:36Columns
- 16:31Partitioning
- 17:22Data Paths
- 24:00Snapshots
- 31:37Adding Columns
- 34:33Storage API
- 37:51SQL Engine
- 40:56Optimization
- 42:37Data Reduction
- 49:59Recap
- 52:49Questions
related talks
40mAccelerating QuestDB: Lessons from a 6x Performance Boost
43mIngesting over 4 million rows a second on a single instance
01h 12mHidden pearls for high-performance-persistence in Java
39mTimescaleDB: Re-engineering PostgreSQL as a time-series database
40mDatomic: The Most Innovative DB You've Never Heard Of
36mRicher SQL — Steering SQL's Future Towards Clojure's Philosophy
32m"State of XTDB"
30mSurrealDB: The Database Revolution ✨ NewSQL ✨
