QuestDB
QuestDB is the world's fastest growing open-source time-series database.
questdb/questdb
questdb/questdb:latest
Just deployed
Deploy and Host QuestDB on Railway
QuestDB is the fastest growing open-source time-series database offering blazingly fast, high throughput ingestion and dynamic, low-latency SQL queries. Built from the ground up in Java, C++, and Rust with zero dependencies and garbage collection.
About Hosting QuestDB
Hosting QuestDB provides a high-performance time-series database solution optimized for financial market data, IoT sensors, and real-time dashboards. With its column-oriented storage model, parallelized vector execution, and SIMD instructions, QuestDB delivers exceptional performance on limited hardware. The database implements ANSI SQL with native time-series extensions, making it simple to analyze, filter, and downsample data. Features include high-speed ingestion via InfluxDB Line Protocol, responsive Web Console for data management, and excellent performance with high data cardinality workloads.
Common Use Cases
- Financial Market Data: Store and analyze high-frequency trading data, market feeds, and financial time-series with sub-millisecond query performance
- IoT Sensor Analytics: Handle massive volumes of sensor data from devices with high cardinality, supporting real-time monitoring and historical analysis
- Real-time Dashboards: Power live monitoring dashboards and alerting systems with low-latency queries over streaming time-series data
- Performance Monitoring: Track application metrics, infrastructure monitoring, and business KPIs with efficient storage and fast aggregation queries
Dependencies for QuestDB Hosting
- Storage Volume: Persistent storage for time-series data and database files
- Memory: Sufficient RAM for query processing and data caching (recommended 4GB+ for production)
Deployment Dependencies
Implementation Details
Default ports and interfaces:
# Web Console and REST API
PORT=9000
# InfluxDB Line Protocol (ingestion)
ILP_PORT=9009
# PostgreSQL Wire Protocol (queries)
PG_PORT=8812
Basic Docker deployment:
docker run -p 9000:9000 -p 9009:9009 -p 8812:8812 questdb/questdb
Connection examples:
# Python ingestion client
from questdb import Client
client = Client(host='your-questdb-host', port=9009)
client.row('sensors', columns={'temperature': 25.5}, at=datetime.now())
client.flush()
-- Time-series SQL queries
SELECT avg(temperature)
FROM sensors
WHERE timestamp > '2024-01-01'
SAMPLE BY 1h;
-- Latest values by partition
SELECT * FROM sensors
LATEST ON timestamp
PARTITION BY device_id;
Performance optimization:
- Use columnar storage with time-based partitioning
- Leverage SIMD-optimized aggregations
- Implement proper indexing for high-cardinality data
Why Deploy QuestDB on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying QuestDB on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
questdb/questdb
questdb/questdb:latest