QuestDB is an open-source time-series database written primarily in Java with C++ components, designed for high-performance ingestion and low-latency SQL queries on time-series data. The core engine is implemented in zero-GC Java and C++, with additional Rust components available in the enterprise version. The database employs a column-oriented storage model with parallelized vector execution and SIMD instruction support to achieve its performance characteristics.
The storage architecture implements a multi-tier system progressing from write-ahead logs (WAL) to native columnar format to Parquet files on object storage. This design enables efficient handling of both streaming ingestion at millions of events per second and complex analytical queries. QuestDB provides multiple query interfaces including a web console on port 9000, PostgreSQL Wire Protocol compatibility on port 8812, REST API support, and InfluxDB Line Protocol for streaming ingestion. The database includes specialized time-series SQL extensions such as ASOF JOIN, WINDOW JOIN, HORIZON JOIN, SAMPLE BY, and LATEST ON operations.
The repository shows active development with 955 tracked issues and pull requests. The most frequently addressed issue categories are SQL-related (293 items), bugs (253 items), and new feature requests (252 items). The median response latency across these items is 0.0 hours, indicating rapid triage, though the mean response time of 3935.5 hours reflects the full lifecycle of issues from creation to resolution. The project's core contributors include nwoolmer with 799 tracked events, puzpuzpuz with 508 events, and bluestreak01 with 460 events. GitGenius analysis identifies overlapping contributors with ClickHouse, PHP, and CPython repositories, suggesting cross-pollination of expertise in database systems and performance optimization.
QuestDB targets financial market data including tick data, trades, order books, and OHLC information, as well as sensor and telemetry data with high cardinality. The database includes built-in finance functions and order book analytics capabilities. A public demo environment provides access to live datasets including crypto trades from the OKX exchange with over 30 million rows monthly, FX order book data, and historical NYC taxi trip data spanning ten years with 1.6 billion rows. Real-time dashboards powered by a native Grafana plugin showcase crypto trading and FX order book analytics.
The project supports ingestion clients across seven programming languages: Python, .NET, C/C++, Go, Java, NodeJS, and Rust. Integration capabilities extend to popular data infrastructure tools including Kafka, Redpanda, Apache Flink, Telegraf, and visualization platforms like Grafana, PowerBI, and Superset. Data processing libraries such as Polars and Pandas can interact with QuestDB through its standard interfaces.
QuestDB Enterprise provides additional features for production deployments including high availability with read replicas, multi-primary ingestion, cold storage integration, role-based access control, TLS encryption, and native Parquet querying via object storage. The open-source version is licensed under Apache 2.0 with no vendor lock-in. The project maintains active community engagement through a Discourse forum, public Slack channel, and GitHub issue tracking, with contribution guidelines and build instructions documented in the repository.