【电商数仓】数仓可视化之Spark历史服务器配置、Superset安装及使用

一 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安装

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”

如配置无误,可出现可视化图表

命名该图表,并保存至仪表盘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OneTenTwo76

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值