Why QuestDB?
QuestDB is a high-performance time-series database built for speed and efficiency.
Ready to try it? Jump to the quick start.
When to use QuestDB
QuestDB is designed for workloads where:
- You're ingesting time-stamped data continuously — sensor readings, financial ticks, application metrics, logs, events
- You need fast aggregations over time — dashboards, real-time analytics, OHLC charts, downsampling
- You want SQL, not a new query language — standard SQL with time-series extensions
- Hardware efficiency matters — get more from less infrastructure
Common use cases
| Domain | Examples |
|---|---|
| Financial services | Market data, tick-by-tick analysis, risk calculations |
| Space exploration | Telemetry processing, satellite monitoring, mission analytics |
| Energy | Grid monitoring, smart meter data, renewable output tracking |
What makes QuestDB fast
Ingestion performance
QuestDB ingests millions of rows per second on commodity hardware.

On a Raspberry Pi 5, QuestDB ingests ~270,000 rows per second.
Built-in handling for real-world data
Time-series data is messy. QuestDB handles it automatically:
- Out-of-order data — late-arriving records are merged efficiently
- Deduplication — duplicates are detected and handled at ingestion
- High cardinality — millions of unique series without performance degradation
SQL with time-series extensions
No proprietary query language. Use SQL you already know, extended for time-series:
OHLC aggregation with SAMPLE BYDemo this query
SELECT
timestamp, symbol,
first(price) AS open,
last(price) AS close,
min(price),
max(price),
sum(amount) AS volume
FROM trades
WHERE timestamp > dateadd('d', -1, now())
SAMPLE BY 15m;
Key extensions:
SAMPLE BY— aggregate by time buckets (1 minute, 1 hour, 1 day, etc.)LATEST ON— get the most recent value per seriesASOF JOIN— join time-series by closest timestamp- Materialized Views — pre-compute aggregations automatically
When QuestDB might not be the right fit
QuestDB is optimized for time-series. Consider alternatives if:
- You need general-purpose OLTP — frequent updates, deletes, complex transactions → PostgreSQL
- Your data isn't time-series — no timestamp column, no time-based queries → traditional RDBMS
- You need full-text search — log text searching → Elasticsearch or Loki
Get started
The quick start gets you running in minutes.
Choose a client library to start ingesting:
Python
Python is a programming language that lets you work quickly and integrate systems more effectively.
Or explore more:
- Ingestion overview — all ingestion options
- Query & SQL overview — SQL reference
- Web Console — built-in SQL editor and charting
- Grafana integration — dashboards and visualization
- Capacity planning — production deployment
Support
We're happy to help:
- GitHub Issues — bug reports and feature requests
- Community Forum — questions and discussion
- Stack Overflow — tagged questions
- hello@questdb.io — direct contact