文章目录
- 大数据相关工具
- Superset简介
- SuperSet基于Linux安装
- SuperSet使用
- 配置MySQL数据源
- 添加MySQL数据库表并编辑
- 绘制图表
- 绘制柱状图
- 绘制折线图
大数据相关工具
Superset简介
- Superset 是一款由 Airbnb 开源的“现代化的企业级 BI(商业智能) Web 应用程序”,其通过创建和分享 dashboard,为数据分析提供了轻量级的数据查询和可视化方案。
- Superset 的前端主要用到了 React 和 NVD3/D3,而后端则基于 Python 的 Flask 框架和 Pandas、SQLAlchemy 等依赖库,主要提供了这几方面的功能:
- 集成数据查询功能,支持多种数据库,包括 MySQL、PostgresSQL、Oracle、SQL Server、SQLite、SparkSQL 等,并深度支持 Druid。
- 通过 NVD3/D3 预定义了多种可视化图表,满足大部分的数据展示功能。如果还有其他需求,也可以自开发更多的图表类型,或者嵌入其他的 JavaScript 图表库(如 HighCharts、ECharts)。
- 提供细粒度安全模型,可以在功能层面和数据层面进行访问控制。支持多种鉴权方式(如数据库、OpenID、LDAP、OAuth、REMOTE_USER 等)。
SuperSet基于Linux安装
- 参考官网:https://superset.apache.org/docs/installation/installing-superset-from-scratch
- 安装 SuperSet 之前安装基础依赖:
yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
- 官方强烈建议将 superset 安装到一个虚拟环境 virtualenv
pip3 install virtualenv
# 创建并激活虚拟环境
python3 -m venv venv
. venv/bin/activate
# deactivate 退出虚拟环境
- 安装并初始化 superset
(venv) [root@centos130 tools]# pip3 install apache-superset
# 初始化DB
superset db upgrade
# 可能会出现报错:`ImportError: cannot import name '_ColumnEntity'`
#执行:
pip install sqlalchemy==1.3.24
pip install dataclasses
# 在元数据数据库中创建管理员用户 (use `admin` as username to be able to load the examples)
$ export FLASK_APP=superset
superset fab create-admin
Username [admin]:
User first name [admin]:
User last name [user]:
Email [admin@fab.org]:
Password: 123456
Repeat for confirmation: 123456
Recognized Database Authentications.
Admin User admin created.
# 加载样例数据
superset load_examples
# 创建默认角色和权限
superset init
# 启动superset,注意:-p 8088来指定端口启动服务,-h 0.0.0.0是避免只能本地访问superset服务。
superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger
- 浏览器访问:http://192.168.254.130:8088/,输入账号密码完成登录
SuperSet使用
配置MySQL数据源
- 参考官方文档:https://superset.apache.org/docs/databases/installing-database-drivers,在 venv 环境中安装 MySQL 驱动
pip3 install mysqlclient
- 添加数据源
- 记录添加成功:
添加MySQL数据库表并编辑
- 添加数据集:点击 Data => Datasets,选择右上角加号,增加数据集。
- 编辑表:点击创建好的 song 表,点击编辑,可以对列进行修改
- 在编辑中,选择“列”标签下的编辑,可以对列信息进行修改
- 选择“指标”标签下的编辑,可以对统计的“指标”进行修改
绘制图表
- 点击右上角 New,选择图表,进行“创建新图表”。
- 选择数据源、可视化类型。
- 创建新图表,在弹出的页面中准备表显示的指标
- 新建 Dashboard:
- 保存图表结果到面板中,方便之后查询:
- 在 Dashboard 查看图标结果:
绘制柱状图
- 点击数据集 Datasets,再点击需要制作图表的表名称,在面板“图表类型”中,选择柱状图:
- 在图表配置页面进行编辑:
- 保存并查看 Dashboard 中的图表数据:
绘制折线图
- 新建数据集
machine_local_info
- machine_local_info 中的 sale_time 销售时间格式为20201231格式,可以通过编辑列,对数据进行表达式转换,当做时间列,后期在superset中方便展示与时间相关的图表。
- 点击“编辑”,对“machine_local_time”数据“sale_time”列进行编辑
- 最后点击保存修改,点击表“machine_local_info”进行制作折线图
- 新建一个Dashboard,命名为“我的数据看板”,并保存制作的折线图图表