- Published on
Chatbot - Visualization service
- Authors

- Name
- Zee Lu
Introduction
In the previous blog, we have planned the architecture for the chatbot, and we have chosen Apache Superset as the visualization service. In this blog, we will plan on how to build bridge services to access the superset functions.
Functions Required
For the chatbot, the following functions are required from the superset:
- Execute SQL query
- Visualize the data(Create charts)
- Import Data(Link database or upload files)
- Show dataset details(columns, etc.)
All the services will be accessed via superset's REST API. We will build several functions to make sure the client does not directly access the superset API.
Preperation
NOTE
It is not mandatory to setup superset in remote kubernetes cluster, you can also run the container locally in docker. If you wish to set up it on a managed kubernetes service, please check these two blogs:
Step 1: Setup Superset
Option 1: Local Setup
If you are setting up superset locally, I highly recommend to follow this document: Installation - Using Docker Compose
Option 2: Remote Setup
Please refer to Installation - Kubernetes, or check out my delpoyed instance:
- domain: https://superset.do.zeelu.me/
- username: guestuser
- password: guestuser
Step 2: Choose a dataset for testing
Feel free to use any dataset you get, in my case, I am using London Bike Sharing Dataset from Kaggle. You can check out the dataset below:
IMPORTANT
The iframe is not avaliable until December 2025 due to the maintenance of my kubernetes cluster.
Step 3: Develop bridge services
NOTE
Please check the blog Visualization service - Design serverless function for the detail. It documents all the process I built the serverless function for the visualization service.
Next Phase
In the next phase, we will start to build the frontend for the chatbot, and integrate the serverless functions.