Superset 是 Airbnb 开源的数据分析与可视化平台,同时也是由 Python 语言构建的轻量级 BI 系统。Superset 可实现对 TB 量级数据进行处理,兼容常见的数十种关系或非关系型数据库,并在内部实现 SQL 编辑查询等操作。除此之外,基于 Web 服务的 Superset 可实现多用户协使用,并可针对不同角色进行权限管理。Superset 如今已归属于 Apache 孵化项目,并被 Yahoo,豆瓣等国内外知名公司使用。
Superset 平台搭建:
Superset 基于 Web 分析与可视化平台,目前支持 Python 2.7 和 Python 3.4 版本。官方介绍称,暂时未有支持其他版本的计划。
下面,介绍 Superset 如果安装配置,文档基于在线环境。如果你选择在本地安装,可能会因为环境不同出现一些问题,但大部分时候都可以顺利进行。
1 安装依赖
首先,需要安装依赖。打开实验楼在线环境终端,键入:
- sudo apt-get update
- sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
如果你在本地 Fedora 或 RHEL-derivatives 安装,键入:
- sudo yum upgrade python-setuptools
- sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel
如果你在本地 macOS 上安装,键入:
- brew install pkg-config libffi openssl python
- env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography==1.7.2
2 使用 virtualenv 虚拟环境
Superset 推荐我们新建一个 virtualenv虚拟环境来安装 Superset,这样也可以避免出现一些冲突或依赖问题。
首先,我们需要安装 virtualenv:
- sudo pip install virtualenv
然后创建和激活一个叫 superset 的新环境,这里我们通过参数指定版本已匹配 Superset 支持的 python 环境:
- virtualenv superset --python=python2.7
- source superset/bin/activate
此时,我们看到终端命令前变成了 superset 开头:
如果你在线下使用 Anaconda 或者 conda,创建虚拟环境的操作为:
- conda create -n superset python=2.7
- activate superset
3 安装和配置 Superset
接下来,我们使用 pip 来安装 superset。首先升级 pip和 setuptools 到***版本。
- sudo pip install --upgrade setuptools pip
然后安装 superset,由于依赖包非常多,这个过程需要持续几分钟:
- sudo pip install superset
安装完成之后,需要先创建 superset 管理员用户。
- fabmanager create-admin --app superset
键入命令后,会提示你依次输入用户名和密码,创建用户需要稍等片刻。
创建好用户之后,需要初始化数据库:
- sudo superset db upgrade
数据库初始化完成之后,我们可以载入一些样本数据到数据库中(样本数据来源于世界卫生组织,由于在线环境网络原因,样本数据很可能下载失败。):
- sudo superset load_examples
然后,创建默认角色和许可:
- sudo superset init
***,运行 superset 服务。superset 的 Web 服务默认端口为 8088,你可以通过 -d 参数指定端口。
- superset runserver
然后,我们打开浏览器。输入:http://localhost:8088 或 http://0.0.0.0:8088 就可以看到 superset 的登陆界面了。
文章主要演示了如果一步一步完成 Superset 的安装。总体来讲,Superset 安装过程中不存在大坑,只要安装步骤执行,基本都能顺利完成。当然,如果你熟悉 Docker,也是可以通过拉取官方认可的社区镜像一步完成安装。
- # 拉取 Superset 社区 Docker 镜像
- docker pull amancevice/superset