本节内容是关于Apache Superset可视化平台的搭建,Apache Superset是一个现代的数据探索和可视化平台 。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数据分析引擎,拥有丰富的图表展示形式,并且支持自定义仪表盘。本节内容使用的操作系统是centos7,使用的数据源是mysql,需要提前安装好mysql数据库,这里关于mysql数据库的安装不做介绍。由于Superset是python语言编写,我们需要预先安装python3.7的依赖版本,这里通过使用Miniconda管理工具安装。
①下载Miniconda的python管理工具
命令:
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
②安装Miniconda工具包,用户python的管理工具包安装
命令:
sh Miniconda3-latest-Linux-x86_64.sh
③刷新环境变量配置生效,使miniconda配置生效,查看安装的python版本
④默认环境下取消激活base环境
命令:
conda config --set auto_activate_base false
⑤配置conda的国内镜像地址
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
⑥使用conda创建一个superset平台环境,并激活superset环境
命令:
# 创建环境
conda create --name python=3.11
# 查看创建的环境
conda info --envs
# 删除环境
conda remove -n --all
# 激活环境
conda activate
# 退出环境
conda deactivate
⑦安装superset的依赖
命令:
sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
⑧ 更新pip的安装地址为豆瓣的镜像地址
命令:
pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/
⑨ 使用pip命令安装superset平台
命令:
pip install apache-superset -i https://pypi.douban.com/simple/
⑩ 初始化superset平台数据库,创建管理用户,完成superset平台的初始化
- 导入superset环境变量:export FLASK_APP=superset
- 生成SECRET_KEY并导入该环境变量:
export SUPERSET_SECRET_KEY='L7QX0yFya8mZDNZLgNHQ89ATFzk6BhVhevAJi1gMd8+HGFfbgI20VuWC'
- 初始化superset数据库:superset db upgrade
- 创建管理员用户:superset fab create-admin
- 初始化superset:superset init
⑪安装gunicorn的web容器,用于启动superset
pip install gunicorn -i https://pypi.douban.com/simple/
⑫启动superset平台,并访问
命令:
gunicorn --workers 5 --timeout 120 --bind hadoop101:8787 "superset.app:create_app()" --daemon
⑬关闭superset平台
命令:
ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9
⑭在bin目录下创建一个superset启停脚本superset.sh
#!/bin/bash
#查看superset状态
superset_status(){
result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`
if [[ $result -eq 0 ]]; then
return 0
else
return 1
fi
}
#启动superset
superset_start(){
source ~/.bashrc
superset_status >/dev/null 2>&1
if [[ $? -eq 0 ]]; then
conda activate superset ;
gunicorn --workers 5 --timeout 120 --bind hadoop101:8787 --daemon 'superset.app:create_app()'
else
echo "superset 正在运行"
fi
}
#停止superset
superset_stop(){
superset_status >/dev/null 2>&1
if [[ $? -eq 0 ]]; then
echo "superset 未在运行"
else
ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9
fi
}
case $1 in
start )
echo " 启动 Superset"
superset_start
;;
stop )
echo " 停止 Superset"
superset_stop
;;
restart )
echo "重启 Superset"
superset_stop
superset_start
;;
status )
superset_status >/dev/null 2>&1
if [[ $? -eq 0 ]]; then
echo "superset 未在运行"
else
echo "superset 正在运行"
fi
esac
⑮授予superset脚本可执行权限,并验证脚本
⑯创建一个superset视图可视化监控面板
- 在mysql数据库中创建一个superset数据库及一些测试表
- 使用conda安装mysql客户端,注意要在superset环境下安装:conda install mysqlclient
- 重启superset,使mysqlclient客户端生效
- 在superset浏览器界面添加superset数据源
- 创建一个数据集
- 根据数据集创建一个图表
- 将创建的图标添加到dashboard页面展示
至此,关于Superset可视化平台搭建的内容到这里就结束了,我们下期见。。。。。。