This topic describes how to start RisingWave using Docker Compose on a single machine. With this option, data is persisted in your preferred storage service, and observability is enabled for enhanced monitoring and analysis.
docker
directory.
docker compose
. See details in the Docker docs.If you’re using Compose V1, use docker-compose
instead.docker-compose.yaml
file. Here are examples of some typical settings.Memory for RisingWave container (resource.limits.memory ) | 8 GiB | 14 GiB | 28 GiB | 58 GiB |
---|---|---|---|---|
compute-opts.total-memory-bytes | 6 GiB | 10 GiB | 20 GiB | 46 GiB |
frontend-opts.frontend-total-memory-bytes | 1 GiB | 2 GiB | 4 GiB | 6 GiB |
compactor-opts.compactor-total-memory-bytes | 1 GiB | 2 GiB | 4 GiB | 6 GiB |
compute-opts.memory-manager-target-bytes | 5.6 GiB | 9.8 GiB | 20.8 GiB | 44.8 GiB |
I'd like to start RisingWave components separately in a multi-node cluster.
/docker/aws.env
.
To use S3-compatible storage options like Tencent Cloud COS, you need to configure the endpoint via the RW_S3_ENDPOINT
parameter in /docker/aws.env
. Don’t include the bucket name in the endpoint.
In docker-compose-with-s3.yml
, specify the bucket name via the hummock+s3
parameter.
/docker/multiple_object_storage.env
.
In the corresponding docker-compose-with-service_name.yml
file (for example, docker-compose-with-gcs.yml
for Google Cloud Storage), specify the bucket name via the hummock+<service_name>
parameter.
HADOOP_HOME
to the volume <$HADOOP_HOME>:/opt/hadoop/
, see docker-compose-with-hdfs.yml for more information.
multiple_object_storage.env
file. Uncomment and set the following environment variables: OBS_ENDPOINT
, OBS_ACCESS_KEY_ID
, and OBS_SECRET_ACCESS_KEY
. Don’t include the bucket name in the endpoint.
In the docker-compose-with-obs.yml
file, specify the bucket name via the hummock+obs
parameter. Replace <bucket-name>
with the name of your OBS bucket.
--backend
: The meta store backend you want to use.--sql-endpoint
: The target SQL backend endpoint.--backend
: Set to postgres
.--sql-endpoint
: Configure in format {host}:{port}
.--sql-username
: Username of SQL backend.--sql-password
: Password of SQL backend.--sql-database
: Database of SQL backend.--backend
: Set to sqlite
.--sql-endpoint
: Should be the file path.--backend
: Set to mysql
.--sql-endpoint
: Configure in format {host}:{port}
. In docker-compose-with-sqlite.yml, specify the storage backend via mysql
parameter.--sql-username
: Username of SQL backend.--sql-password
: Password of SQL backend.--sql-database
: Database of SQL backend.docker-compose-with-storage_backend_name.yml
with the full file name of the corresponding configuration file.
psql
so that you can issue queries to RisingWave and see the query results. If you don’t have psql
installed, install psql first.
psql
options:
-h
option is used to specify the hostname or IP address of the PostgreSQL server to connect to.-p
option is used to specify the port number that the server is listening on.-d
option is used to specify the name of the database to connect to.-U
option is used to specify the name of the database user to connect as.root
user account to authenticate connections to the dev
database. Note that this user account does not require a password to connect.risingwave_dashboard
. In this dashboard, you can view the internal metrics such as node count, memory consumption, throughput, and latencies. You can use these metrics to troubleshoot and optimize the cluster performance.
hummockadmin
hummockadmin