QuestDB is a relational column-oriented database designed for real-time analytics on time series and event data. It uses the SQL language with some extensions for time series. This documentation will help you to get familiar with QuestDB.
Concepts
This section describes the architecture of QuestDB, how it stores and queries data, and introduces features and capabilities specific to QuestDB.
As a start, we suggest you read about the storage model and about the designated timestamp. To make the most of QuestDB, you should also get familiar with our SQL extensions which allow to make the most of time series capabilities with an efficient non-verbose syntax. You will also find the symbol concept interesting to store and retrieve repetitive strings efficiently.
Get started
This section explains how to install and run QuestDB. There are dedicated pages for Docker, the binaries or Homebrew. Once QuestDB is running you can follow the guide to create your first database.
Develop
In this section you will learn how to connect to QuestDB using popular tools and languages. Importing and/or inserting data are both covered in the insert data page. Finally, you can check the query data page in order to run your queries.
Third-party tools
- Grafana instructions for connecting QuestDB as a datasource for building visualizations and dashboards
- Kafka guide for ingesting data from topics into QuestDB by means of Kafka Connect
- Telegraf guide for collecting system metrics, specifying QuestDB as an output and visualizing the results
Operations
This section contains resources for managing QuestDB instances and has dedicated pages for the following topics:
- Deployment details with information for running locally, on Kubernetes or the AWS AMI
- Data retention strategy to delete old data and save disk space
- Health monitoring endpoint for determining the status of the instance
Reference
This section contains the reference documentation for the following categories:
APIs
Clients
Configuration
The configuration page shows all the properties that can be used to customize QuestDB.
Functions
SQL
- Datatypes
- ALTER TABLE ADD COLUMN
- ALTER TABLE ALTER COLUMN ADD INDEX
- ALTER TABLE DROP COLUMN
- ALTER TABLE DROP PARTITION
- BACKUP
- CASE
- CAST
- COPY
- CREATE TABLE
- DISTINCT
- EXCEPT INTERSECT
- FILL
- DROP
- GROUP BY
- INSERT
- JOIN
- LATEST BY
- LIMIT
- ORDER BY
- RENAME
- SAMPLE BY
- SELECT
- SHOW
- TRUNCATE
- UNION
- WHERE
- WITH
Support
We are happy to help with any question you may have, particularly to help you optimize the performance of your application. Feel free to reach out using the following channels:
- Raise an issue on GitHub
- Join the Community Slack
- QuestDB on Stack Overflow
- or send us an email at hello@questdb.io