可能是目前颜值最高的开源BI工具-Superset | Jack Gao's Blog


本站和网页 https://jackpgao.github.io/2018/05/30/Superset-Introduce/ 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

可能是目前颜值最高的开源BI工具-Superset | Jack Gao's Blog
Jack Gao's Blog
All great achievements require time.
首页
标签
分类
归档
关于
搜索
可能是目前颜值最高的开源BI工具-Superset
发表于
2018-05-30
没有声音,再好的戏也出不来同样,没有可视化,再好的数据分析也不完美
数据可视化是大数据的『最后一公里』
简介
Superset的Airbnb开源的数据可视化工具,目前属于Apache孵化器项目,主要用于数据分析师进行数据可视化工作
PS,Airbnb在数据方面做的很棒,相关的博客B格也很高,他们的博客名字居然叫『Airbnb Engineering & Data Science』,可见对于数据科学的重视
在github上搜索数据可视化,Superset的star数已经远远超过其他可视化工具,文章的最后,我们也会对调研过的可视化工具进行若干对比
目前支持的图表类型
如何搭建
官方项目地址
https://github.com/apache/incubator-superset
不推荐直接在服务器上安装,因为依赖的包很多,一方面可能少装,其次是把环境搞乱了,很难维护后续
第三方Docker项目
https://github.com/amancevice/superset
推荐,使用docker-compose安装,支持SQLLite/PG/MySQL方式的元数据存储
整个Docker包括3部分:1. 元数据 2. Redis缓存 3. Superset本身
以SQLLite为例,简单的安装方式如下:
123456789101112131415161718192021mkdir /data1/superset cd /data1/superset git clone https://github.com/amancevice/superset.git cd /data1/superset/superset/examples/sqlite mkdir superset # 这个是SQLLite的数据文件,映射到Docker内部 touch superset/superset.db # 这一步必须要做,否则Docker可能没有读写权限 chmod 777 superset/superset.db # 启动Redis docker-compose up -d redis # 启动Superset docker-compose up -d superset # Superset本身启动需要几十秒,需要观察下才能执行下一步 docker-compose ps # 进行初始化,根据提示设置用户名密码 docker-compose exec superset superset-demo
我们考虑到元数据的安全性,就使用了自己的MySQL和Redis服务,基本思路就是使用docker-compose跑起来后,把相关的表结构dump到我们线上,再修改Superset的配置指向
问题与坑中文的支持
如果你想采用MySQL作为Superset的元数据,请务必修改所MySQL表结构里的charcter,默认是latin1,连中文的Dashboard名字都不支持
多说一句,直接alter table modify是不可以的,需要把数据dump出来,sed修改一下,再灌入『资深DBA友情提醒』
ClickHouse方面
Superset使用的是cloudflare/sqlalchemy-clickhouse驱动,默认是支持中文的,但是在Python2的Superset版本上,会出现中文无法正常解析的问题,所以,如果使用ClickHouse,请使用基于Python3版本的Superset
超时问题
部分数据分析的SQL,需要很久才能返回,默认的Superset是30秒超时,需要酌情修改
在配置文件里修改
123SUPERSET_WEBSERVER_TIMEOUT = 300CACHE_DEFAULT_TIMEOUT = 60 * 60 * 24SQLLAB_TIMEOUT = 300
我们遇到最慢的可能就是几百秒,如果再慢,就建议把数据做二次提取了
默认的limit 5000条
在配置文件里修改
1config.py:ROW_LIMIT = 1000000
时区问题
使用Docker启动的Superset,请务必修改Docker时区
部分画图Bug
老版本,地图着色异常,升级新版后解决
0.23.2在时间序列堆叠图中,存在Y轴移除的Bug,如图:
通过如下方式可以临时解决:
地图渲染
Superset的地图渲染使用『ISO 3166-1』进行映射,相关文档见:Country Map Tools
什么时候用Grafana,什么时候用Superset
时间序列,选Grafana
数据量很大,用Grafana
静态的日报、报表,Superset表现力很好
我们的创新
有如下一个场景,我们很难以解决:
有些数据报表,需要每天使用邮件的方式发送各个产品负责人以及相关老板
有人问,为啥必须发邮件,而不能走系统。
答:你让老板天天登陆系统来看么?未来也许可以,目前的阶段不现实。
邮件可以非常直观的方式,是一种非常友好的通信方式,所以邮件我们必须支持。
那么就引发1个问题:
邮件是不支持炫酷的HTML页面的(复杂的CSS样式支持),所以,想要偷懒嵌入一个页面发过去,不可以~
业务繁多,有的希望有饼图,有的希望有时间序列图,有的希望有时间序列堆叠图,这些各式各样的需求很难高效满足
于是乎,我们相出了如下方案:
暂时不开发专门的数据图表系统(其实是有一个的,但是有一些缺陷,而且用户很少主动来门户系统查看数据,都依赖邮件)
邮件发送一个HTML页面嵌入的截图
关键在这个截图的生成上,答案就是,数据分析师使用Superset对各种业务配置Dashboard,后台使用Python定期截图,嵌入到HTML页面,这样,就可以发送一封样式美观大方的数据汇总邮件了
遇到几个问题:
发送时要强制刷新,可能会遇到查询超时问题,上面已经说了,如何解决
截图可能会失败:增加重试机制,目前稳定性可以达到4个9
Windows的邮件客户端,对长图支持有限制,会导致图片变形
好在大多数老板都Mac系统,忽略
你配置Dashboard别搞那么长不就行了~
不足之处
权限管理
对于数据这种敏感的东西,实际使用过程中,肯定是各自看各自的数据,你并不希望别人看到你的数据
目前的权限设置比较混乱,官方提供了一个复杂的权限控制,但是并不好用
想快速复制一个图表?难,从SQL层面再走一遍吧
其他选项
metabase
https://github.com/metabase/metabase
目前不支持ClickHouse
Redash
https://github.com/getredash/redash
支持ClickHouse
美观程度相比Superset不够精美
支持简单的报警规则
可以把Dashboard分享出去
支持的图表类型有限
Zeppelin
https://github.com/apache/zeppelin
来自Apache项目
支持ClickHouse
炫酷程度2颗星
Zeppelin更像是一个notebook,而不是一个单纯的BI工具
SQLPad
https://github.com/rickbergfalk/sqlpad
Franchise
https://github.com/HVF/franchise
CBoard
https://github.com/yzhang921/CBoard
国人开发的一款可视化工具
交互设计的不错,但是实际用起来感觉很奇怪
Java系
Davinci
宜信开发的达芬奇,也是Java系
功能还是比较全面的,只是在国内还没有大范围的使用
https://github.com/edp963/davinci
商业:
FineBI
国内做的一流的BI工具,我们也接触过,很炫酷,也比较实用,目前不支持ClickHouse
Tableau
多少商业课程都是在教这个,不过互联网讲究的是免费,怎么会用『😂』
其他可视化资源:
https://github.com/thenaturalist/awesome-business-intelligence
https://github.com/topics/business-intelligence?o=desc&s=stars
最后
目前superset迭代进度很快,建议定期跟进更新
部分版本存在无法平滑更新的问题,比如最新的0.25.2版本,元数据增加了很多表,部分表的字段也做了调整,很难100%平滑升级
34页PPT掌握ClickHouse的数据复制
ClickHouse 18.12.13-2018-09-10版本新特性解析
热评文章
文章目录
站点概览
Jack Gao
Done is better than perfect!
28
日志
分类
43
标签
Weibo
1. 简介1.0.1. 目前支持的图表类型2. 如何搭建3. 问题与坑3.1. 中文的支持3.2. 超时问题3.3. 默认的limit 5000条3.4. 时区问题3.5. 部分画图Bug3.6. 地图渲染4. 什么时候用Grafana,什么时候用Superset5. 我们的创新6. 不足之处7. 其他选项8. 最后
2018
Jack Gao
由 Hexo 强力驱动
主题 -
NexT.Pisces