Superset
Integrate with Superset
Docker
1. Run below command to start a standalone Superset deployment
docker run \
--network pinot-demo \
--name=superset \
-p 8088:8088 \
-d apachepinot/pinot-superset:latest
2.1. (First time) Set up Admin account by running below command and follow instructions to set password.
docker exec -it superset superset fab create-admin \
--username admin \
--firstname Superset \
--lastname Admin \
--email [email protected] \
--password admin
2.2. (First time) DB upgrade and Initialize Superset
docker exec -it superset superset db upgrade
docker exec -it superset superset init
3. Import Pre-defined Pinot Datasources and Dashboard
docker exec \
-t superset \
bash -c 'superset import_datasources -p /etc/examples/pinot/pinot_example_datasource_quickstart.yaml && \
superset import_dashboards -p /etc/examples/pinot/pinot_example_dashboard.json'
In order to add Pinot cluster as a database, a SQLAlchemy URI is required.
The format of URI is:
pinot://<pinot-broker-host>:<pinot-broker-port><pinot-broker-path>?controller=<pinot-controller-host>:<pinot-controller-port>
E.g.
pinot://pinot-broker:8099/query/sql?controller=http://pinot-controller:9000/
Below is an example for the QuickStart cluster, you can click
TEST CONNECTION
button to check if Pinot cluster is successfully connected.
Add Pinot cluster as a new Database
User can add an existing table into Superset:

Add Table Definition

Table Definition
User can edit table/column definition by clicking the
edit
button left to the table name.User can configure an existing column
mergedTimeMillis
as temporal and set Datetime Format
accordingly.
Configure time column
User can also add a new column by setting the expression.

Add a simple derived column
Another example:

Add a derived column with Pinot UDFs
Last modified 2mo ago