数据可视化平台Superset 简介
Superset 简介
Superset是Airbnb开源BI数据分析与可视化平台(曾用名Caravel、Panoramix),该工具主要特点是可自助分析、自定义仪表盘、分析结果可视化(导出)、用户/角色权限控制,还集成了一个SQL编辑器,可以进行SQL编辑查询等,原来是用于支持Druid的可视化分析,后面发展为支持很多种关系数据库及大数据计算框架,如:mysql, oracle, Postgres, Presto, sqlite, Redshift, Impala, SparkSQL, Greenplum, MSSQL。整个项目基于Python框架,它集成了Flask、D3、Pandas、SqlAlchemy等。
Github地址:https://github.com/airbnb/superset
官网地址:http://airbnb.io/projects/superset/
架构介绍
后端
整个项目的后端是基于Python的,用到了Flask、Pandas、SqlAlchemy。
Flask AppBuilder(鉴权、CRUD、规则
Pandas(分析)
SqlAlchemy(数据库ORM)
此外,也关注到Superset的缓存机制值得我们学习:
采用memcache和Redis作为缓存
级联超时配置
UI具有时效性控制
允许强制刷新
前端
自然前端是JS的天下,用到了npm、react、webpack,这意味着你可以在手机也可以流畅使用。
d3 (数据可视化)
nvd3.org(可重用图表)
局限性
Superset的可视化,目前只支持每次可视化一张表,对于多表join的情况还无能为力
依赖于数据库的快速响应,如果数据库本身太慢Superset也没什么办法
语义层的封装还需要完善,因为druid原生只支持部分sql
Superset的安装配置
- 基于docker安装superset
Docker 参考资料 https://www.runoob.com/docker/docker-info-command.html
1.1安装前准备
- 检查是否已安装docker(docker version)
1.1 docker 下载
首先下载docker,根据自己需求下载对应的版本
https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm
1.2 docker 文件上传
将下载的docker传输到需要安装的服务器上命令 rz
1.3 docker 安装
安装命令如下:
rpm -ivh docker-engine-1.7.1-1.el6.x86_64.rpm
安装报错,说缺少依赖包,libcgroup可以直接在linux安装镜像中是有的,当然如果找不到这个镜像了,可以直接去网上下载
安装依赖包libcgroup 输入如下命令:
yum install -y libcgroup-*
再次安装docker,安装成功
安装好后当然要简单测试一下
在命令行输入如下命令:
docker version
如果下图所示那就说明docker已经安装成功
1.4 docker 基础命令
启动docker服务 输入如下命令:
service docker start