前言
本节内容是关于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 <env_name> python=3.11
# 查看创建的环境
conda info --envs
# 删除环境
conda remove -n <env_name> --all
# 激活环境
conda activate <env_name>
# 退出环境
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 0elsereturn 1fi
}
#启动superset
superset_start(){source ~/.bashrc superset_status >/dev/null 2>&1 if [[ $? -eq 0 ]]; thenconda activate superset ; gunicorn --workers 5 --timeout 120 --bind hadoop101:8787 --daemon 'superset.app:create_app()'elseecho "superset 正在运行"fi
}
#停止superset
superset_stop(){superset_status >/dev/null 2>&1 if [[ $? -eq 0 ]]; thenecho "superset 未在运行" elseps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9fi
}case $1 instart )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 ]]; thenecho "superset 未在运行" elseecho "superset 正在运行"fi
esac
⑮授予superset脚本可执行权限,并验证脚本
⑯创建一个superset视图可视化监控面板
- 在mysql数据库中创建一个superset数据库及一些测试表
- 使用conda安装mysql客户端,注意要在superset环境下安装:conda install mysqlclient
- 重启superset,使mysqlclient客户端生效
- 在superset浏览器界面添加superset数据源
- 创建一个数据集
- 根据数据集创建一个图表
- 将创建的图标添加到dashboard页面展示
结语
至此,关于Superset可视化平台搭建的内容到这里就结束了,我们下期见。。。。。。