superset部署与实践

1. 项目目标

(1)了解superset的概况和特点

(2)掌握直接安装superset

(3)掌握使用docker安装superset

(4)掌握superset的基本使用

2. 项目准备

2.1. 规划节点

主机名

主机IP

节点规划

superset

10.0.1.140

superset

2.2. 基础准备

系统镜像:CentOS 7.9

安装包下载网址:https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

环境准备:docker环境,MySQL数据库

3. 项目实施

3.1. Superset入门

Superset 是一个由 Airbnb 开发并开源的数据可视化工具,目前属于 Apache 软件基金会的孵化项目。它主要设计用于数据分析师,帮助他们通过创建交互式的数据仪表盘来可视化数据。Superset 支持多种数据源,包括但不限于 MySQL、PostgreSQL、SQLite、Druid 等,并且提供了丰富的图表类型以满足不同的数据可视化需求。

3.1.1. Superset的特点
  1. 数据可视化与交互式看板制作:Superset 允许用户创建交互式的数据看板和报表,将复杂的数据转换为直观的图表,便于理解和分享。
  2. 丰富的可视化效果:提供多种图表类型,如折线图、柱状图、饼图、热力图等,以及地图可视化,帮助用户以美观的方式展示数据。
  3. 无代码数据查询与可视化:用户可以通过图形界面进行数据查询和可视化操作,无需编写代码,降低了使用门槛。
  4. SQL Lab:内置的 SQL Lab 功能强大,支持日常的 SQL 查询、数据清洗以及元数据浏览,非常适合数据分析师和开发人员使用。
  5. 自定义维度与指标:数据分析师可以快速定义自定义的维度和指标,以适应不同的分析需求。
  6. 支持大数据中间件和数据库:Superset 支持多种大数据解决方案和数据库,适合企业级生产环境。
  7. 内存异步缓存和查询:通过无缝衔接的内存异步缓存机制,提高查询效率,优化用户体验。
  8. 高度定制化的安全模型:提供细粒度的安全和权限模型,允许配置复杂的访问规则,决定不同用户对产品功能和数据集的访问权限。
  9. 自定义登录验证:支持多种登录验证方式,包括数据库、OpenID、LDAP、OAuth、REMOTE_USER 等,满足不同企业的认证需求。
  10. 可视化组件自定义:允许用户根据需要自定义可视化组件,提供个性化的数据展示方式。
  11. 后端 API 支持:提供丰富的后端 API,方便进行定制化开发和集成。
  12. 云原生架构:设计考虑了云环境的部署,支持高可用架构,适合云原生应用场景。

Superset 的安装可以通过多种方式进行,包括直接安装、使用 Docker 容器化安装等。

3.2. 直接安装Superset

3.2.1. 安装Python环境

1)下载Miniconda(Python3版本)

mkdir /opt/soft
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

2)安装Miniconda

bash Miniconda3-latest-Linux-x86_64.sh

回车之后,一直按空格,提示Please answer 'yes' or 'no':' 输入yes。

指定安装路径/opt/soft/conda,回车默认

>>>/opt/soft/conda
PREFIX=/opt/soft/conda

初始化conda3,输入yes

Do you wish the installer to initialize Miniconda3
[no] >>> yes

3) 配置系统环境变量

vim /etc/profile
export CONDA_HOME=/opt/soft/conda
export PATH=$PATH:$CONDA_HOME/bin

source /etc/profile
source ~/.bashrc

可以发现前面多了(base),python版本是3.11

4)取消激活base环境

conda config --set auto_activate_base false

5)查看conda版本

conda --version
conda 24.3.0

6)配置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 --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

conda config --set show_channel_urls yes

conda config --show channels

7)创建python3.9环境

conda create --name superset python=3.9
y

8)激活superset环境

conda activate superset

若要退出环境使用以下命令:

conda deactivate
3.2.2. Superset部署

1)安装准备依赖

 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

pip install --upgrade setuptools pip

3)安装supetest

pip install apache-superset --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple

4)初始化数据库

superset db upgrade

5)创建管理员用户

export FLASK_APP=superset
superset fab create-admin

Username [admin]: 
User first name [admin]: 
User last name [user]: 
Email [admin@fab.org]: 
Password:
Repeat for confirmation:
Recognized Database Authentications.

6)Superset初始化

 superset init

7)安装gunicorn

pip install gunicorn -i https://pypi.douban.com/simple/

8)启动superset

gunicorn --workers 5 --timeout 120 --bind [ip]:[port] "superset.app:create_app()" --daemon

[ip]:[port],ip填本机ip,port填想部署到的端口。并开放这个端口。

若要停止superset使用以下命令:

ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9

9)登录 Superset

访问 [ip]:[port],并使用前面创建的管理员账号进行登录。

现在还没有数据,所以是空的。

3.3. 使用docker安装Superset

Docker 下载并查看superset镜像

docker search superset
docker pull apache/superset
docker images

运行superset并挂载到本地/opt/superset:

mkdir /opt/superset
docker run --name my_superset -d -p 8088:8088 -v /opt/superset:/home/superset apache/superset

进入容器:

docker ps
docker exec -it my_superset /bin/bash

初始化数据库和superset

superset db upgrade
superset init

superset 设置管理员账户

export FLASK_APP=superset
flask fab create-admin

设置superset 管理员账户为:admin 密码:123456

3.4. Superset基础使用

3.4.1. 导入数据库

导入准备好的数据库表:

MySQL示例数据库

mysql -uroot -p000000 < mysqldemo.sql

登录superset后,依次单击“Date”>“Databases”>“+DATABASE”

可以选择直接填写信息,然后单击“connect”

或者使用URL的填写方式:(填写格式:mysql://{username}:{password}@{host}/{database})

这里我设置名字为mysqldemo,连接成功后可以查看到刚刚添加的数据库。

3.4.2. 拉取库

依次单击“Date”>“Datasets”>“+DATASET”添加数据源

依次选择“数据源”>“数据库”>“表”。

将所有的源添加好。

3.4.3. 创建仪表盘

依次点击“Dashboard”>“+Dashboard”

单击顶部名称修改,可以选择拖动组件和图表自定义看板,自定义完毕后点击“保存”。

添加完毕后,如图所示。

3.4.4. 创建图表

依次点击“charts”>“+图表”

依次“选择数据源”>“选择图表样式”>“创建图表”

输入查询条件,限定分组和指标,可以根据参考右下角的数据。设置完成后点击执行。

设置完成之后单击“保存”,依次设置图表名称和添加到的看板。

可以到添加到的看板查看刚刚添加的图表。

3.4.5. 可视化(图表)的实时刷新

进入到图表依次点击“...”>“设置自动刷新”

设置刷新间隔:

3.4.6. 用户权限管理

进入用户列表:

单击"+"添加。

设置用户名密码等信息,设置角色可以分组进行权限限制。

进入角色列表进行添加:

设置名称,添加权限,例如只给予read权限。

4. 项目总结

本博客简要介绍了superset这个BI工具,使用两种方法来部署superset,并简单介绍了superset的使用。

  • 36
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值