文章目录
一 spark历史服务器配置
cp /opt/module/hive/conf/spark-defaults.conf /opt/module/spark/conf/
vim spark-defaults.conf
# 添加历史服务器地址
sprak.history.fs.logDirectory=hdfs://mucluster/spark/history
cd /opt/module/spark/conf/
cp spark-env.sh.template spark-env.sh
vim spark-env.sh
# 添加如下内容
HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
cd ..
start-history-server.sh
历史服务器地址
二 Superset入门
Apache Superset是一个开源的、现代的、轻量级BI分析工具,能够对接多种数据源、拥有丰富的图标展示形式、支持自定义仪表盘,且拥有友好的用户界面,十分易用。
由于Superset能够对接常用的大数据分析工具,如Hive、Kylin、Druid等,且支持自定义仪表盘,故可作为数仓的可视化工具。
三 Superset安装
1 安装Python环境
Superset是由Python语言编写的Web应用,要求Python3.6的环境。
(1)安装Miniconda
conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同Python版本的软件包及其依赖,并能够在不同的Python环境之间切换,Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,Miniconda包括Conda、Python。
此处,不需要如此多的工具包,故选择MiniConda。
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh
# 按照提示信息进行安装
出现下图信息,可以指定安装路径
# 安装地址
/opt/module/miniconda3
加载环境变量配置文件,使之生效
source ~/.bashrc
取消激活base环境
Miniconda安装完成后,每次打开终端都会激活其默认的base环境,我们可通过以下命令,禁止激活默认base环境。
conda config --set auto_activate_base false
(2) 创建Python3.7环境
配置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 config --set show_channel_urls yes
创建Python3.7环境
conda create --name superset python=3.7
说明:conda环境管理常用命令
创建环境:conda create -n env_name
查看所有环境:conda info --envs
删除一个环境:conda remove -n env_name --all
激活superset环境
conda activate superset
# 退出当前环境
conda deactivate
执行python命令查看python版本
python
2 Superset部署
(1)安装依赖
安装Superset之前,需安装以下所需依赖
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)安装Superset
# 安装(更新)setuptools和pip
pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/
# 说明:pip是python的包管理工具,可以和centos中的yum类比
# 安装Supetset
pip install apache-superset -i https://pypi.douban.com/simple/
# 说明:-i的作用是指定镜像,这里选择国内镜像
# 初始化Supetset数据库
superset db upgrade
# 创建管理员用户
export FLASK_APP=superset
superset fab create-admin
# 按照提示输入一些信息
hzy
h
zy
hzy@hzy.org
hzy
hzy
# 说明:flask是一个python web框架,Superset使用的就是flask
# Superset初始化
superset init
(3)启动Supterset
# 安装gunicorn
pip install gunicorn -i https://pypi.douban.com/simple/
# 说明:gunicorn是一个Python Web Server,可以和java中的TomCat类比
# 启动Superset
# 确保当前conda虚拟环境为superset
# 启动
gunicorn --workers 5 --timeout 120 --bind hadoop101:8787 "superset.app:create_app()" --daemon
# 说明:
# --workers:指定进程个数
# --timeout:worker进程超时时间,超时会自动重启
# --bind:绑定本机地址,即为Superset访问地址
# --daemon:后台运行
# 登录Superset
# 访问http://hadoop101:8787,并使用之前创建的管理员账号进行登录。
# 停止superset
# 停掉gunicorn进程
ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9
# 退出superset环境
conda deactivate
(4)superset启停脚本
cd home/hzy/bin
vim superset.sh
内容如下
#!/bin/bash
superset_status(){
result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`
if [[ $result -eq 0 ]]; then
return 0
else
return 1
fi
}
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_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
# 加执行权限
chmod +x superset.sh
# 测试
# 启动superset
superset.sh start
# 停止superset
superset.sh stop
四 Superset使用
1 对接MySQL数据源
(1)Database配置
# 安装依赖
conda install mysqlclient
说明:对接不同的数据源,需安装不同的依赖,官网说明
# 重启Superset
superset.sh restart
数据源配置
Step1:点击Data/Databases
Step2:点击+DATABASE
Step3:点击填写Database及SQL Alchemy URI
注:SQL Alchemy URI编写规范:mysql://用户名:密码@主机名:端口号/数据库名称
此处填写:
mysql://root:000000@hadoop101:3306/gmall_report?charset=utf8
**Step4:**点击Test Connection,出现“Connection looks good!”提示即表示连接成功
**Step5:**点击ADD
(2)Table配置
Step1:点击Data/Datasets
Step2:点击 +DATASET
Step3:配置Table
点击add
2 制作仪表盘
(1)创建空白仪表盘
点击Dashboards/+DASHBOARDS
命名并保存(save)
(2)创建图表
点击Charts/+CHART
选择数据源及图表类型
选择何使的图表类型
创建图表
按照说明配置图表
点击“Run Query”
如配置无误,可出现可视化图表
命名该图表,并保存至仪表盘