工作总结个人总结,自动app优化下载,微信怎么开店铺,网页制作基础教程教案前言 最近在准备一个小的项目#xff0c;需要对 Hive 的数据进行展示#xff0c;所以想到了把 Hive 的数据导出到 MySQL 然后用 Superset 进行展示。
Superset
1.1 Superset概述 Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用#xff0c;可对接…前言 最近在准备一个小的项目需要对 Hive 的数据进行展示所以想到了把 Hive 的数据导出到 MySQL 然后用 Superset 进行展示。
Superset
1.1 Superset概述 Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用可对接各种数据源比如 Hive、Durid包括很多现代的大数据分析引擎拥有丰富的图表展示形式并且支持自定义仪表盘。 1.2 Superset安装
1.2.1、安装Python环境 这里废话少说按照某谷的配置文档配的话一堆问题毕竟当时的版本和现在可能不一样以及镜像地址有的已经不能用了。
1、安装 Miniconda
下载地址https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
安装命令
bash Miniconda3-latest-Linux-x86_64.sh
2、加载环境变量配置文件使之生效
source ~/.bashrc
3、取消激活 base 环境conda 自己的 python 环境 Miniconda安装完成后每次打开终端都会激活其默认的base环境我们可通过以下命令禁止激活默认base环境。
conda config --set auto_activate_base false
4、配置 Python 环境
CentOS 7 自带的是 2.7 版本的明显太低但是又不能把它删了或者覆盖我们得在 conda 下再建一个 python 环境。
修改镜像源
vi ~/.condarc
然后把下面的东西直接复制进去文件里原本有的配置留一个就行
channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
show_channel_urls: true
ssl_verify: false
5、创建Python3.9环境!
注意是 3.9 别用 3.7 了不然一堆报错我觉得是教程出的那会 superset 版本比较低所以 3.7 安装的时候没问题但是我今天安装一堆毛病换了3.9还没出问题。
conda create --name superset python3.9
安装完了 pythpn -V 看一下
6、激活 superset 环境
注意之后所有关于 superset 的操作尽量都在 superset 环境下操作
(base) [lyhhadoop102 ~]$ conda activate superset
1.2.2、Superset 部署
1、安装 Superset 需要的依赖
(superset) [lyhhadoop102 ~]$ sudo yum install -y gcc gcc-c libffi-devel python-devel python-pip python-wheel python-setuptools openssl-devel cyrus-sasl-devel openldap-devel
2、更新 setuptools 和 pip
直接用下面这个命令
(superset) [lyhhadoop102 ~]$ pip install --upgrade setuptools pip -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn不行就换源
3、安装 Superset
(superset) [lyhhadoop102 ~]$ pip install apache-superset pip -i https://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn
4、初始化 Superset 数据库
(superset) [lyhhadoop102 ~]$ export FLASK_APPsuperset
(superset) [lyhhadoop102 ~]$ superset db upgrade
这里容易报错如果自己是 python 3.7 我反正是换了 3.9 后就没报错了。
5、创建管理员用户
(superset) [lyhhadoop102 ~]$ superset fab create-admin
这里会让我们创建用户名和密码
6、superset 初始化
(superset) [lyhhadoop102 ~]$ superset init
1.2.3、启动 Superset
1、安装gunicorn
(superset) [lyhhadoop102 ~]$ pip install gunicorn -i https://pypi.douban.com/simple/
我是自带的提示已存在还是那句话不行就去换源-i 镜像源地址
2、启动 Superset 注意一定要确保当前 conda 环境为 superset
(superset) [lyhhadoop102 ~]$ gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 superset.app:create_app() --daemon
workers指定进程个数timeoutworker进程超时时间超时会自动重启bind绑定本机地址即为Superset访问地址daemon后台运行
3、登录 Superset
打开 hadoop102:8087 用上面创建的用户名和密码登录 4、停止 superset
(superset) [lyhhadoop102 ~]$ ps -ef | awk /superset/ !/awk/{print $2} | xargs kill -9
1.2.4、Superset 启停脚本
#!/bin/bashsuperset_status(){resultps -ef | awk /gunicorn/ !/awk/{print $2} | wc -lif [[ $result -eq 0 ]]; thenreturn 0elsereturn 1fi
}
superset_start(){source ~/.bashrcsuperset_status /dev/null 21if [[ $? -eq 0 ]]; thenconda activate superset ; gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 --daemon superset.app:create_app()elseecho superset正在运行fi}superset_stop(){superset_status /dev/null 21if [[ $? -eq 0 ]]; thenecho superset未在运行elseps -ef | awk /gunicorn/ !/awk/{print $2} | xargs kill -9fi
}case $1 instart )echo 启动Supersetsuperset_start;;stop )echo 停止Supersetsuperset_stop;;restart )echo 重启Supersetsuperset_stopsuperset_start;;status )superset_status /dev/null 21if [[ $? -eq 0 ]]; thenecho superset未在运行elseecho superset正在运行fi
esac
1.2.5、退出 Superset
superset.sh stop
conda deactivate
总结 这是我安装过最麻烦的软件了让我把 Hadoop、Flink、Spark 全重装我不怕但这东西是真tm恶心啊。
无法打开网页问题解决
打不开网页的话在 conda 的 superset 环境下输入下面的命令
superset run --host 0.0.0.0发现报错 export FLASK_APPsuperset
继续测试还有警告 export SUPERSET_SECRET_KEY“oh-so-secret”
所以建议把这两个环境变量放到启动脚本中去
解决不得不说这是第一次把我恶心到的软件版本依赖是真的多配置起来是真麻烦。