QuestDB logo

QuestDB

Blazing‑fast time‑series database for real‑time analytics with low‑latency SQL

QuestDB delivers sub‑millisecond ingestion and low‑latency SQL on columnar storage, supporting financial, IoT, and monitoring workloads via Docker, REST, PostgreSQL, and Grafana integrations.

QuestDB banner

Overview

Who Benefits

QuestDB is designed for engineers and data teams that need to ingest high‑velocity time‑series data and run instant analytics. It shines in financial market data, IoT sensor streams, and real‑time monitoring dashboards where low latency and schema‑on‑the‑fly changes are essential.

Core Capabilities

The engine uses a column‑oriented, zero‑GC Java/C++ core with SIMD‑accelerated vector execution, delivering sub‑millisecond ingestion of millions of rows per second. SQL is extended with time‑series functions such as ASOF JOIN, SAMPLE BY, and LATEST ON, while materialized views and n‑dimensional arrays support complex analytics like order‑book depth. Multi‑tier storage moves data from a write‑ahead log to native columnar files and finally to Parquet on object storage, enabling hot‑warm‑cold data tiers without vendor lock‑in.

Deploy Anywhere

QuestDB runs from a single Docker container, Homebrew on macOS, or via Helm charts on Kubernetes, and is available as AMIs on AWS and images on GCP and DigitalOcean. Clients connect through PostgreSQL wire protocol, REST, or InfluxDB line protocol, and integrations with Grafana, Kafka, and popular data‑science libraries make it easy to build end‑to‑end pipelines.

Highlights

Sub‑millisecond ingestion of millions of rows per second
Vectorized, SIMD‑accelerated SQL engine with time‑series extensions
Multi‑tier storage: WAL → native columnar → Parquet on object storage
Native PostgreSQL wire protocol, REST API, and Web console

Pros

  • Extremely low ingestion latency
  • SQL familiarity with time‑series functions
  • Hardware‑efficient columnar engine
  • Flexible deployment options (Docker, Helm, cloud images)

Considerations

  • Enterprise features require paid license
  • Java/C++ core may increase memory footprint vs pure Rust solutions
  • Limited built‑in visualization (relies on external tools)
  • Advanced clustering only in Enterprise edition

Managed products teams compare with

When teams consider QuestDB, these hosted platforms usually appear on the same shortlist.

Amazon Timestream logo

Amazon Timestream

Serverless time-series database for IoT, metrics, and operational telemetry

Azure Data Explorer logo

Azure Data Explorer

Fast analytics database for logs, telemetry, and time-series (Kusto)

KX kdb+ logo

KX kdb+

High-performance time-series database and real-time analytics engine

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • High‑frequency trading platforms needing real‑time analytics
  • IoT sensor fleets generating bursty telemetry
  • Operations teams building live dashboards for monitoring
  • Developers preferring SQL over proprietary query languages

Not ideal when

  • Workloads requiring deep graph queries
  • Environments that need only key‑value stores
  • Teams that cannot adopt a Java/C++ runtime
  • Projects that need built‑in BI dashboards

How teams use it

Real‑time crypto trade analytics

Ingests millions of trade events per second and serves sub‑second queries for live price charts via Grafana.

Fleet sensor telemetry monitoring

Collects high‑cardinality IoT data streams, enabling instant anomaly detection dashboards.

Financial order‑book depth visualization

Stores 2‑D array order‑book data and provides fast ASOF JOIN queries for market depth analysis.

Historical taxi trip analysis

Archives billions of rows in Parquet for cost‑effective cold storage while supporting ad‑hoc SQL queries.

Tech snapshot

Java92%
C++4%
Rust2%
C1%
Assembly1%
Shell1%

Tags

tsdbkdbfinancial-analysisgrafanacpptime-series-databaselow-latencypostgresqltime-seriestick-dataolapsqlsimddatabasejavareal-time-analyticsparquetcapital-marketsquestdbmarket-data

Frequently asked questions

How does QuestDB handle out‑of‑order data?

It automatically reorders rows during ingestion and deduplicates them, preserving exactly‑once semantics.

Can I query Parquet files directly?

Yes, the engine can query native Parquet files stored in object storage without loading them first.

What protocols are supported for client connections?

QuestDB offers PostgreSQL wire protocol, REST API, and InfluxDB line protocol for streaming ingestion.

Is there a graphical interface for managing data?

The Web Console provides an interactive SQL editor, schema browser, and CSV import tools.

How do I achieve high availability?

High‑availability and read‑replica features are available in the Enterprise edition.

Project at a glance

Active
Stars
16,592
Watchers
16,592
Forks
1,528
LicenseApache-2.0
Repo age11 years old
Last commit12 hours ago
Primary languageJava

Last synced 12 hours ago