How to get Apache SuperSet connected to StarRocks

Prerequisites
For this tutorial you need to:

  • Have Docker Desktop or podman container runtime installed.
  • A StarRocks or CelerData database.
  • Configure Apache SuperSet.
  • Added database connection info and query the data.

Have Docker Desktop or podman container runtime installed

This is out of scope for the tutorial.

A StarRocks or CelerData database cluster

This is out of scope for the tutorial.

Configure Apache SuperSet

Use Installing Locally Using Docker Compose | Superset to provision your Apache SuperSet environment.

Tip

If you’re using Mac ARM, you have to use docker compose -f docker-compose-non-dev.yml up. The other docker compose (dev) will not work.

Add the database

Before running docker compose -f docker-compose-non-dev.yml up, you need to run the following commands to inject the StarRocks driver into superset.

atwong@Albert-CelerData superset % touch ./docker/requirements-local.txt
atwong@Albert-CelerData superset % echo "starrocks" >> ./docker/requirements-local.txt

Run Superset

Run docker compose -f docker-compose-non-dev.yml up. It will take a while for all the assets to load up. Once up, you can login to http://localhost:8088/ with admin:admin

Added database connection info and query the data

Add a new database. StarRocks should be listed as an option.
Screenshot 2023-05-24 at 10 23 53 AM

The connection string for StarRocks should have the following format: starrocks://admin:XXXXXXXXXX@6dihxzedg.cloud-app.celerdata.com:9030/default_catalog.some_database?charset=utf8 where starrocks://<user>:<password>@ip:port/<catalog>.<db> or or starrocks://<user>:<password>@ip:port/<db> for tables in default_catalog. Make sure you test your connection!
Screenshot 2023-05-24 at 10 25 46 AM

From there you can now use SQL Lab to query data.
Screenshot 2023-05-24 at 10 27 47 AM

Or you can load a data set like NYC Taxi (see tutorial at #24504) and then create a charts with them.

Screenshot 2023-05-31 at 10 24 25 AM

1 Like