Get Started
Running Firebolt Core locally is the recommended starting point for new users. Local deployment allows you to test queries and familiarize yourself with the system before proceeding to remote cluster configuration (see Deployment and Operational Guide).
Requirements
Software
Software for your host OS:
- Docker Engine, with the Docker Compose plugin if you want to use
docker compose
; if you use the get-core.sh script Docker engine will be installed automatically. - curl or any other HTTP client in order to send SQL queries to Firebolt Core.
Software for your Docker host:
- Linux kernel version >= 6.1. Firebolt Core internally uses the
io_uring
kernel API for fast network and disk I/O, and some required features of this API have only been released in Linux 6.1.
In order to automatically install Docker Engine and run Firebolt Core you can use:
Resources
Resources for each node (either a local machine or a VM instance):
- An amd64 CPU supporting at least SSE 4.2, or an arm64 CPU All published Firebolt Core Docker images are multi-arch images suitable for both
amd64
andarm64
. - At least 16 GB of RAM are recommended in order to run basic queries.
- At least 25 GB of SSD space are recommended in order to run basic queries.
- At least 10 GBit/s of inter-node network bandwidth is recommended for multi-node deployments.
- TCP port
3473
open when using a single node. - TCP ports
3473
,1717
,3434
,5678
,6500
,8122
,3473
,16000
open when using multiple nodes; see Network for more information.
Note that there is no universally correct amount of RAM and disk space for running Firebolt Core, and the above are simply rough guidelines for running some simple queries as a way to get started. The ideal amount of RAM and disk space depends heavily on the specific workload that you are running against a Firebolt Core deployment (see Deployment and Operational Guide for details).
Local Single-Node Deployment
Run the following command to start a single-node Firebolt Core cluster on your local machine (see Deployment and Operational Guide for details on the command-line arguments).
The above command will pull the ghcr.io/firebolt-db/firebolt-core:preview-rc
Docker image and start a single container running one Firebolt Core node, then expose its HTTP endpoint at localhost:3473
on the host system. All persisted data will be stored on a firebolt-core-data
directory mounted through a bind mount; note that this directory will be owned by root
user.
On a new shell you can start the interactive CLI to run queries:
It is also possible to directly send SQL queries to the HTTP endpoint via curl
:
See also:
- additional examples for the different ways to ingest and export data in Firebolt Core.
- Connect for details on connecting to Firebolt Core.
Multi-Node deployment
For multi-node deployments, see Multi-node setups