Quick start

This guide will get your first QuestDB instance running.

As the goal is to, well, start quickly, we'll presume defaults.

Once running, we'll provide guides for inserting data, configuration and production hosting.

Install QuestDB#

Choose from the following options:

Docker#

To use Docker, one must have Docker. You can installation find guides for your platform on the official documentation.

Once Docker is installed, you will need to pull QuestDB's image from Docker Hub and create a container:

docker run \
-p 9000:9000 -p 9009:9009 -p 8812:8812 -p 9003:9003 \
questdb/questdb:7.3.10

For deeper instructions, see the Docker deployment guide.

Homebrew#

To install QuestDB via Homebrew, run the following command:

brew install questdb

On macOS, the location of the root directory of QuestDB and server configuration files depending on the chip:

  • Apple Silicon (M1/M2/M*) chip: /opt/homebrew/var/questdb

  • Intel chip: /usr/local/var/questdb

Binaries#

Download and run QuestDB via binaries.

  • Linux or FreeBSD versions include questdb.sh script
  • Windows version has questdb.exe executable

questdb-7.3.10-no-jre-bin.tar.gz

This package does not embed Java.

Use if there is no package for your platform, such as ARM Linux.

Requires local Java 17.

To check your installed version:

java -version

If you do not have Java, install one of the following:

  • AdoptOpenJDK
  • Amazon Corretto
  • OpenJDK
  • Oracle Java

Other Java distributions might work but are not tested.

JAVA_HOME environment variable#

Point JAVA_HOME to your Java 17 installation folder.

Extract the tarballs:

tar -xvf questdb-7.3.10-no-jre-bin.tar.gz

And then run with the following:

./questdb.sh start

The default root directory will then be:

$HOME/.questdb

Run QuestDB#

./questdb.sh [start|stop|status] [-d dir] [-f] [-t tag]
OptionDescription
-dExpects a dir directory value which is a folder that will be used as QuestDB's root directory. For more information and the default values, see the default root section below.
-tExpects a tag string value which will be as a tag for the service. This option allows users to run several QuestDB services and manage them separately. If this option is omitted, the default tag will be questdb.
-fForce re-deploying the Web Console. Without this option, the Web Console is cached and deployed only when missing.

Enjoy QuestDB#

Congratulations! ๐ŸŽ‰ QuestDB is now running.

The QuestDB Web Console is available by default at: http://localhost:9000.

Also by default, QuestDB will use the following ports:

With that, you're ready to bring your data and enjoy the high performance and reliability of QuestDB.

QuestDB Cloud#

Don't want to self-host?

Looking for additional security and operational features?

Consider signing up at QuestDB Cloud. There's $200 credit!

Bring your data#

Now... Time to really blast-off. ๐Ÿš€

Next up: Bring your data - the life blood of any database.

The Ingestion Primer is your best next step.

Within it you will learn about:

... and more!


No data yet and still want to trial QuestDB?

There are several quick options:

  1. QuestDB demo instance: Hosted, fully loaded and ready to go. Quickly explore the Web Console and SQL syntax.
  2. Create my first data set guide: create tables, use rnd_ functions and make your own data.
  3. Sample dataset repos: IoT, e-commerce, finance or git logs? Check them out!
  4. Quick start repos: Code-based quick starts that cover ingestion, querying and data visualization using common programming languages and use cases. Also, a cat in a tracksuit.
  5. Time series streaming analytics template: A handy template for near real-time analytics using open source technologies.

There are also one-click sample data sets available in QuestDB Cloud.

Get deeper#

For operators or developers looking for next steps to run an efficient instance, see:


โญ Something missing? Page not helpful? Please suggest an edit on GitHub.