DEV.co
Open-Source Databases · questdb

questdb

QuestDB is an open-source, columnar time-series database written in Java and C++ that prioritizes low-latency ingestion and SQL queries for financial and sensor data. It supports multi-tier storage, Postgres wire protocol, REST APIs, and scales to millions of events per second with minimal resource overhead.

Source: GitHub — github.com/questdb/questdb
17.2k
GitHub stars
1.6k
Forks
Java
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryquestdb/questdb
Ownerquestdb
Primary languageJava
LicenseApache-2.0 — OSI-approved
Stars17.2k
Forks1.6k
Open issues865
Latest release9.4.3 (2026-06-15)
Last updated2026-07-08
Sourcehttps://github.com/questdb/questdb

What questdb is

Purpose-built TSDB with zero-GC Java/C++ core, SIMD-accelerated parallel query execution, and WAL → native columnar → Parquet storage tiering. Ingests via InfluxDB Line Protocol, exposes PGwire and REST interfaces, and includes time-series SQL extensions (ASOF JOIN, WINDOW JOIN, SAMPLE BY, LATEST ON) for financial analytics.

Quickstart

Get the questdb source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/questdb/questdb.gitcd questdb# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Financial Tick Data & Market Analytics

Real-time ingestion and querying of trades, order books, OHLC data, and tick streams from exchanges. Order book analytics, finance functions, and low-latency window operations enable rapid market-data analysis without vendor lock-in.

High-Cardinality Sensor & Telemetry

Handles bursty, out-of-order sensor data with schema-on-write flexibility and deduplication semantics. Multi-concurrent query streams with continuous ingest; efficient columnar storage and native Parquet integration for long-term retention.

Real-Time Dashboards & Monitoring

Native Grafana integration, Web Console, and sub-millisecond query latency enable live operational dashboards. Multi-tier storage with object-storage Parquet querying permits scalable historical drill-down alongside hot data queries.

Implementation considerations

  • Schema design must account for time-series partitioning and cardinality; column-oriented layout favors wide, sparse schemas with many numeric metrics over deeply nested structures.
  • Ingestion via InfluxDB Line Protocol or REST; choose client library matching your stack (Python, Go, Node.js, Java, Rust, .NET, C/C++ available). Batch sizes and concurrency tuning affect throughput.
  • Multi-tier storage (WAL → native → Parquet) requires planning retention windows and tiering policies; monitor WAL size and native partition compaction in production.
  • Query patterns differ from SQL OLTP: time-series functions (ASOF JOIN, SAMPLE BY, LATEST ON) require application logic refactoring; traditional SQL subqueries may have performance implications.
  • Capacity planning for cardinality, ingestion rate, and query concurrency; built-in Web Console for management and monitoring, but production requires external observability (metrics, logs).

When to avoid it — and what to weigh

  • Transactional ACID Requirements — QuestDB is optimized for append-heavy, read-heavy analytics workflows. If you need complex multi-row transactions, row-level locking, or strong ACID guarantees across arbitrary schemas, a traditional RDBMS is more appropriate.
  • Ad-Hoc, Unstructured Data — Time-series databases assume time-ordered, append-only data with defined schema. General-purpose document stores or schemaless databases are better for exploratory, highly variable workloads.
  • Very Small Datasets or Infrequent Queries — Operational overhead and columnar storage tuning are wasted on lightweight use cases. SQLite, PostgreSQL, or MySQL are simpler and more cost-effective for low-volume, sporadic access patterns.
  • High Availability Without Enterprise License — Open-source QuestDB lacks built-in replication and failover; HA/read replicas are Enterprise features. Self-managing HA requires external clustering solutions and operational complexity.

License & commercial use

Apache License 2.0 (Apache-2.0) is a permissive OSI-approved license. Grants perpetual, worldwide, royalty-free rights to use, modify, and distribute the software, subject to license retention and liability disclaimers. No patent retaliation clause.

Apache-2.0 explicitly permits commercial use, modification, and redistribution. However, the license does not include warranties, SLAs, or vendor support. Enterprise edition (distinct product with HA, RBAC, TLS, support SLAs) is available separately under commercial terms; review enterprise license before adopting for production SLA-critical workloads.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

Open-source code auditable; Apache-2.0 license includes liability disclaimer. Security features noted in Enterprise tier: TLS encryption, role-based access control (RBAC). Open-source version lacks built-in auth/encryption; network isolation and external authentication layer required for sensitive deployments. No known critical CVE details provided in data; review security advisories and apply patches regularly.

Alternatives to consider

InfluxDB

Purpose-built TSDB with Go implementation; strong Grafana integration. Weaker on complex SQL and financial analytics; higher operational cost at scale. Data format lock-in unless using recent OSS editions.

TimescaleDB

PostgreSQL extension for time-series; familiar SQL dialect and ACID transactions. Slower ingestion and query latency than QuestDB for high-cardinality workloads; less purpose-optimized for financial tick data.

Kdb+ (kdb.com)

Domain-leading time-series database for finance; proprietary, closed-source, expensive. Superior performance on some benchmarks but vendor lock-in, high licensing cost, and smaller ecosystem compared to QuestDB OSS.

Software development agency

Build on questdb with DEV.co software developers

Evaluate QuestDB for your time-series workload with our deployment guides (Docker, AWS, GCP) and live demo. Start with Docker: docker run -p 9000:9000 -p 9009:9009 -p 8812:8812 questdb/questdb. For production HA and enterprise support, contact the QuestDB team.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

questdb FAQ

Can I use QuestDB in production without Enterprise support?
Yes. Apache-2.0 permits unrestricted use. However, open-source lacks HA, read replicas, and SLA support. Self-manage replication and failover using external tooling, or upgrade to Enterprise for production SLAs.
How does QuestDB handle out-of-order and duplicate data?
QuestDB is purpose-built for time-series and includes deduplication and out-of-order data handling semantics. Schema supports designated timestamp column; WAL and native storage layers enforce ordering and dedup policies per table configuration.
What is the learning curve for migrating from SQL to QuestDB?
Standard SQL (SELECT, WHERE, JOIN) works unchanged via PGwire. Time-series extensions (ASOF JOIN, SAMPLE BY, LATEST ON) require learning; documentation and tutorials provided. Grafana, Pandas, and Polars integrations lower barrier for analysts.
Does QuestDB support real-time data federation with other systems?
QuestDB handles ingestion from Kafka, Redpanda, Telegraf, and custom clients via InfluxDB Line Protocol. Outbound federation (querying remote systems) is not natively supported; use ETL pipelines or external orchestration (Flink, dbt, custom agents).

Software development & web development with DEV.co

Adopting questdb is usually one piece of a larger software development effort. As a software development agency, DEV.co provides software development services and web development expertise — pairing senior software developers and web developers with your team to design, build, and operate open-source databases software in production.

Ready to Deploy QuestDB?

Evaluate QuestDB for your time-series workload with our deployment guides (Docker, AWS, GCP) and live demo. Start with Docker: docker run -p 9000:9000 -p 9009:9009 -p 8812:8812 questdb/questdb. For production HA and enterprise support, contact the QuestDB team.