从无到有搭建Superset(Mac)

‘Superset’是一款由Airbnb开源的“现代化的企业级 BI(商业智能) Web 应用程序”,其通过创建和分享dashboard,为数据分析提供了轻量级的数据查询和可视化方案。

Superset简介

  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 等)。

依赖安装

Python

由于我本地没有安装Python,所有首先用Homebrew安装下Python3.7

1
brew install python3

之后需要配置环境变量,按步骤执行以下操作

1
2
3
4
5
6
7
8
# 编辑bash_profile文件
vim ~/.bash_profile
# 末尾添加一行,指向本地安装路径
alias python=/usr/local/bin/python3.7
# 环境变量生效
source .bash_profile
# 查看python版本
python -v

Anaconda

Superset的依赖包较多,为了避免冲突,需要先搭建虚拟环境,再进行安装,网上查找到的教程基本上都是推荐使用Anaconda自带的conda工具创建虚拟环境,安装方式可以查看‘mac下anaconda的安装及简单使用’
安装配置完成后开始创建虚拟环境

1
conda create -n superset python=3.7

创建完成后启动

1
activate superset

Superset安装

首先需要安装Python包管理工具pip

1
sudo easy_install pip

之后安装superset,推荐使用豆瓣源

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

初始化并启动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 创建管理员账号
fabmanager create-admin --app superset

# 初始化数据库
superset db upgrade

# 载入案例数据
superset load_examples

# 初始化角色和权限
superset init

# 启动服务
superset run -p 8088

关于启动命令,我找到的教程都是使用superset runserver,但我实测时发现使用run命令才能启动,应该是版本不一致导致的

未完待续

文章目录
  1. 1. Superset简介
  2. 2. 依赖安装
    1. 2.1. Python
    2. 2.2. Anaconda
    3. 2.3. Superset安装
    4. 2.4. 初始化并启动
|