1. 工具介紹
1.1. 簡介
一個輕量級、高性能的數據可視化工具
- 官網:https://superset.apache.org/
- GitHub鏈接:https://github.com/apache/superset
- 官方文檔:https://superset.apache.ac.cn/docs/intro/
1.2. 核心功能
- 豐富的可視化庫:支持 40+ 預置可視化類型,包括折線圖、柱狀圖、餅圖、散點圖、地圖等,滿足時序、地理信息等多種分析需求
- 強大的 SQL Lab:內置 Web 化 SQL 編輯器,支持多數據源查詢和結果可視化,無需離開平臺即可完成數據探索
- 自定義可視化插件:支持通過 JavaScript/TypeScript 編寫可視化插件,實現企業級定制,滿足特殊展現需求
2. 安裝Superset
2.1. 系統依賴
ubuntu20.04 系統依賴,其他系統參考官方文檔
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python3-pip libsasl2-dev libldap2-dev default-libmysqlclient-dev
2.2. Python環境
- 建議單獨為SuperSet創建一個虛擬環境,用這個環境將Superset進程后臺執行
conda create -n superset python=3.10
# python環境里安裝superset
pip install --upgrade setuptools pip
pip install apache-superset marshmallow==3.26.1
2.3. Superset數據庫配置
- 初始化數據庫(底層的操作是建庫,建表)
# 添加環境變量
export FLASK_APP=superset
# flask是一個python web框架,superset使用的就是flask框架# 生成隨機的秘鑰
openssl rand -base64 42
# 復制上面生成的秘鑰
# 添加到環境變量(替換"openssl-secret-key"為上面生成的秘鑰)
export SUPERSET_SECRET_KEY="openssl-secret-key"
# 初始化數據庫
superset db upgrade
- 按照顯示來設置用戶名和密碼
superset fab create-admin
- Superset初始化
superset init
3. 使用Superset
3.1. 啟動和停止
- Gunicorn:是一個用于UNIX系統的Python WSGI HTTP服務器,以其易用性、性能優越及與多種Python web框架的兼容性而被廣泛應用于部署Python網絡應用。
pip install gunicorn
# 啟動superset
gunicorn --workers 5 --timeout 120 --bind 127.0.0.1:8787 "superset.app:create_app()" --daemon
–workers:指定進程個數
–timeout:worker進程超時時間,超時會自動重啟
–bind:綁定本機地址,即為Superset訪問地址
–daemon:后臺運行
- 查看本機ip地址
ifconfig
根據自己的需求場景,選擇合適的ip地址,進行bind配置:
場景 | 推薦 --bind 配置 | 說明 |
---|---|---|
本地開發測試 | 127.0.0.1:8000 | 安全且僅本地訪問 |
局域網/公網直接訪問 | 公網ip地址:8000 | 綁定具體網卡IP,需開放防火墻端口 |
生產環境(Nginx代理) | 127.0.0.1:8000 + Nginx配置 | 高安全性和性能優化 |
Docker容器內運行 | 0.0.0.0:8000 | 需映射容器端口到宿主機 |
- 關閉/殺死后臺superset進程
ps -ef |grep superset |grep -v grep |awk '{print $2}' |xargs kill -9
3.2. Web端配置使用
TODO