文章目录

  • 1. Superset简介
  • 2. Superset环境搭建步骤
  • 2.1 Anaconda的安装
  • 2.2 Superset安装
  • 3. 连接Hbase、Hive和MySQL
  • 3.1 通过Phoenix连接Hbase
  • 3.2 连接Hive
  • 3.3 连接MySQL
  • 4. Superset dashboard 示例
  • 5. Superset总结
  • 6. 参考


1. Superset简介

Superset由 Airbnb 开源,Apache 基金会孵化中的企业级 BI 工具,提供了一个基于 Web 的 BI 数据分析和可视化环境,并可连接多种不同数据源。这篇文档当中主要介绍:1)Superset的环境搭建;2)连接Hbase、Hive和MySQL数据仓储;3)Superset 使用中的一些基本概念;

2. Superset环境搭建步骤

版本:Python 3.7 + Superset 2.8.0 + Anaconda虚拟环境

2.1 Anaconda的安装

https://docs.anaconda.com/anaconda/install/

2.2 Superset安装

# 创建Anaconda虚拟环境  
conda create --name supersetEnv  python=3  
# 进入Anaconda虚拟环境  
conda activate supersetEnv  
# 安装Superset  
pip install futures==3.1.1 -i https://pypi.douban.com/simple  
pip install SQLAlchemy==1.2.12 -i https://pypi.douban.com/simple  
pip install pandas==0.23.4 -i https://pypi.douban.com/simple  
pip install superset -i https://pypi.douban.com/simple

安装过程中容易报错,一般是版本和依赖问题,具体问题具体分析,也可参考官网docker环境下安装https://superset.incubator.apache.org/installation.html

开启Superset server

fabmanager create-admin --app superset  
superset db upgrade  
superset init  
superset runserver -p 8088

浏览器打开http://10.18.222.74:8088 即可登录(账号密码admin)

3. 连接Hbase、Hive和MySQL

3.1 通过Phoenix连接Hbase

Superset 无法直接访问 HBase,但是可以通过 Phoenix 来与 HBase 做交互,步骤如下:
1) 开启Phoenix Query Server,Phoenix安装目录运行(如果已开启则忽略):
bin/queryserver.py2) 安装phoenixdb 和pyphoenix

pip install phoenixdb    
pip install pyphoenix

3) 进入网页,数据源-数据库,输入连接,测试连接OK,点击保存

superset连接MySQL数据库 superset搭建_搭建


4) 报错如下

superset连接MySQL数据库 superset搭建_superset_02

原因: Phoenix view中没有Schema,Superset加载的时候出现None type

解决办法: 修改源码

打开/root/anaconda2/envs/supersetEnv/lib/python3.7/site-packages/superset/models/core.py,return的时候去掉sorted函数,也就是不排序,因为None没法参与排序

superset连接MySQL数据库 superset搭建_phoenix_03


5) 重复步骤3)

6) 打开SQL工具箱—SQL编辑器,测试如下,然后就可以可视化了

3.2 连接Hive

首先开启10.18.222.71节点Hive服务器端的HiveServer2

hive --service hiveserver2 --hiveconf hive.server2.thrift.port=10002

1) 进入网页,数据源-数据库,输入如下链接,测试OK

superset连接MySQL数据库 superset搭建_搭建_04

2) 打开SQL工具箱—SQL编辑器,测试如下,然后就可以可视化了

superset连接MySQL数据库 superset搭建_搭建_05

3.3 连接MySQL

首先需要安装pymysql
pip install pymysql1) 进入网页,数据源-数据库,输入如下链接,测试OK

superset连接MySQL数据库 superset搭建_数据可视化_06

2) 打开SQL工具箱—SQL编辑器,测试如下,然后就可以可视化了

superset连接MySQL数据库 superset搭建_数据可视化_07

4. Superset dashboard 示例

5. Superset总结

作为一个轻量级的BI工具,Superset的功能还是很强大的,但是不像其他BI工具譬如Tableau等傻瓜式的操作,Superset的使用需要一定基础开发能力,特别是对SQL的能力要求较高,主要适用于数据科学家、数据分析师和开发人员等,不太适用不懂SQL的业务人员。
Superset 目前仍然是一个快速发展中的孵化项目,未来变化也难预料。相比其他 BI 软件,坑较多