Run RisingWave for testing purposes
Select an installation or running method.
- Overview
- Playground
- Homebrew
- Binaries
- Docker
- Docker Compose
RisingWave offers two running modes and several installation or running options. See the table below for comparisons.
Comparison \ Mode | Playground mode | Full-featured mode |
---|---|---|
Purpose | Quick tests | Advanced tests |
Starts in | A single-node instance | A full-featured, multi-node cluster |
Data persistence | Data is stored solely in memory and will not be persisted after the service is terminated. | Data is persisted in storage. |
Choose a method to run RisingWave | Try out from browser Playground Install directly Homebrew Binaries Run in container Docker | Set up a local cluster Docker Compose |
Try out RisingWave from browser
Try out RisingWave without the need for any installation or setup with RisingWave Playground, an interactive web application. You can access RisingWave Playground directly from your browser.
RisingWave Playground is intended for quick testing purposes only. Your data will not persist after a session expires. Some functionality may be limited.
![RisingWave Playground Overview](/assets/images/playground-overview-af40f92a419a28807f570e96305ce7ca.png)
Install RisingWave with Homebrew
Start a RisingWave standalone instance in your local environment with Homebrew.
This method starts RisingWave in playground mode, where data is temporarily stored in memory. The service automatically terminates after 30 minutes of inactivity, causing all data to be lost. To persist your data, use the RisingWave Kubernetes Operator or RisingWave Cloud.
-
Install and start RisingWave
Install Homebrew and run the following commands.
brew tap risingwavelabs/risingwave # Tap the repository
brew install risingwave # Install the latest release of RisingWave. Replace with `brew install risingwave --HEAD` if you want to install the latest development version of RisingWave.
risingwave playground # Start RisingWave in playground mode
-
Connect to RisingWave
After RisingWave is up and running, you need to connect to it via the Postgres interactive terminal psql
so that you can issue queries to RisingWave and see the query results. If you don't have psql
installed, Install psql
first.
Open a new terminal window and run:
psql -h localhost -p 4566 -d dev -U root
Notes about the psql
options:
- The
-h
option is used to specify the host name or IP address of the PostgreSQL server to connect to. - The
-p
option is used to specify the port number that the server is listening on. - The
-d
option is used to specify the name of the database to connect to. - The
-U
option is used to specify the name of the database user to connect as. - By default, the PostgreSQL server uses the
root user
account to authenticate connections to thedev
database. Note that this user account does not require a password to connect.
Install RisingWave from the binaries
Start a RisingWave standalone instance in your local environment with the pre-built binary.
This method starts RisingWave in playground mode, where data is temporarily stored in memory. The service automatically terminates after 30 minutes of inactivity, causing all data to be lost. To persist your data, use the RisingWave Kubernetes Operator or RisingWave Cloud.
-
Download the binaries
wget https://github.com/risingwavelabs/risingwave/releases/download/v1.1.1/risingwave-v1.1.3-x86_64-unknown-linux.tar.gz
You can find previous binary releases in Release notes.
-
Extract the tarball
tar xvf risingwave-v1.1.1-x86_64-unknown-linux.tar.gz
-
Start RisingWave
./risingwave playground
If you see the logs, you have successfully started RisingWave.
![RisingWave Playground Logs](/assets/images/risedev_playground_logs-7cdf2696ef86998cc9747dd828975bde.png)
-
Connect to RisingWave
After RisingWave is up and running, you need to connect to it via the Postgres interactive terminal psql
so that you can issue queries to RisingWave and see the query results. If you don't have psql
installed, Install psql
first.
Open a new terminal window and run:
psql -h localhost -p 4566 -d dev -U root
Notes about the psql
options:
- The
-h
option is used to specify the host name or IP address of the PostgreSQL server to connect to. - The
-p
option is used to specify the port number that the server is listening on. - The
-d
option is used to specify the name of the database to connect to. - The
-U
option is used to specify the name of the database user to connect as. - By default, the PostgreSQL server uses the
root user
account to authenticate connections to thedev
database. Note that this user account does not require a password to connect.
-
Optional: Enable the connector node
The RisingWave connector node is a separate Java component that allows RisingWave to be integrated with external systems. It can be used to consume CDC events and sink data to downstream databases.
To enable the connector node:
-
Navigate to where your
risingwave
directory is located and run./risedev configure
. -
Enable the [Build] Build RisingWave Connector (Java) option.
-
Uncomment
use connector-node
in the risedev.yml file like below.
The connector node will now be enabled when you run RisingWave.
Run RisingWave in Docker
Pull a RisingWave image and run it as a Docker container.
This method starts RisingWave in playground mode, where data is temporarily stored in memory. The service automatically terminates after 30 minutes of inactivity, causing all data to be lost. To persist your data, use the RisingWave Kubernetes Operator or RisingWave Cloud.
-
Pull and run RisingWave
As prerequisites, you need to install and run Docker Desktop in your environment.
Run the following command to pull and start the latest release of RisingWave in single-binary playground mode.
docker run -it --pull=always -p 4566:4566 -p 5691:5691 risingwavelabs/risingwave:latest playground
You can find the previous releases and nightly builds on Docker Hub.
If you want to run a particular version, replace latest
with the actual version name (for example, v0.19.0
)
If you see the logs, you have successfully started RisingWave.
![RisingWave Docker Logs](/assets/images/risedev_docker_image_logs-2c2a707558b02c583562b424b329aa2c.png)
-
Connect to RisingWave
After RisingWave is up and running, you need to connect to it via the Postgres interactive terminal psql
so that you can issue queries to RisingWave and see the query results. If you don't have psql
installed, Install psql
first.
Open a new terminal window and run:
psql -h localhost -p 4566 -d dev -U root
Notes about the psql
options:
- The
-h
option is used to specify the host name or IP address of the PostgreSQL server to connect to. - The
-p
option is used to specify the port number that the server is listening on. - The
-d
option is used to specify the name of the database to connect to. - The
-U
option is used to specify the name of the database user to connect as. - By default, the PostgreSQL server uses the
root user
account to authenticate connections to thedev
database. Note that this user account does not require a password to connect.
Set up a local RisingWave cluster with Docker Compose
Use the pre-defined Docker Compose configuration file to set up a multi-node RisingWave cluster.
If you intend to deploy RisingWave in production environments, please use RisingWave Cloud or the RisingWave Kubernetes Operator. This is because it has better support for resource management and we conduct comprehensive tests for it.
The cluster is composed of multiple RisingWave components, including:
- A frontend node
- A compute node
- A meta node
- A compactor node
- A connector node
RisingWave also incorporates these third-party components:
- Grafana
- Etcd
- MinIO
- Prometheus
-
Download the source file and start a cluster
As prerequisites, you need to install Docker Desktop in your environment. Ensure that it is running before launching the cluster.
Then, clone the risingwave repository.
git clone https://github.com/risingwavelabs/risingwave.git
Now run the following commands to navigate to the docker
directory and start the cluster from the pre-defined docker-compose file.
cd docker
docker compose up -d
-
Connect to RisingWave
After RisingWave is up and running, you need to connect to it via the Postgres interactive terminal 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 -h localhost -p 4566 -d dev -U root
Notes about the psql
options:
- The
-h
option is used to specify the host name or IP address of the PostgreSQL server to connect to. - The
-p
option is used to specify the port number that the server is listening on. - The
-d
option is used to specify the name of the database to connect to. - The
-U
option is used to specify the name of the database user to connect as. - By default, the PostgreSQL server uses the
root user
account to authenticate connections to thedev
database. Note that this user account does not require a password to connect.
-
Manage your RisingWave cluster
When the cluster is running, you can monitor the status of RisingWave and the additional components and make adjustments when necessary.
- RisingWave Dashboard
Access the RisingWave Dashboard at http://127.0.0.1:5691/. RisingWave Dashboard displays an overview of the cluster, as well as sources, sinks, tables, materialized views, and indexes available on the cluster.
- Grafana
Access Grafana at http://127.0.0.1:3001/, and search for risingwave_dashboard
. In this dashboard, you can view the internal metrics such as node count, memory consumption, thoroughputs, and latencies. You can use these metrics to troubleshoot and optimize the cluster performance.
- MinIO
Access the MinIO instance at http://127.0.0.1:9400/. Use the following credentials to log in.
-
User name:
hummockadmin
-
Password:
hummockadmin
-
Prometheus
Access Prometheus at http://127.0.0.1:9500/. No credentials are needed. You can use Prometheus for real-time alerting.