概述
调研主要从几个方面进行:开源BI项目的技术栈,开源项目的功能,开源项目的活跃度,开源项目的文档情况。
birt
基于eclipse开源的BI工具,通过eclipse进行报表设计。
- 1技术栈:基于Java和javaee,大量使用eclipse插件,通过eclipse进行报表设计,源码结构主要分为报表设计引擎,报表脚本,报表引擎。
- 2功能,完整项目主要专注于报表设计的工具,能够导出多种格式的优美报表
- 3活跃度,项目最后一次更新实在3个月前,目前稳定无变化了
- 4官网文档齐全,但是国内很少相关文档,官网文档中的有demo连接,打不开。
superset
Apache的明星项目,基于python开发的BI工具,理念基于数据再计算metrics展示数据,开发人员配置数据,通过dashboard展示数据,展示配置这块有点像elk。
-
1技术栈,Python + Flask + React + Redux + SQLAlchemy
-
2功能,业务人员可以编辑图标进行查看,支持40多种图表,数据库主要依赖SQLAlchemy,会受到SQLAlchemy的影响。不支持跨库的表关联。权限管理完善。
-
3活跃度,项目活跃不断更新中
-
4官网文档较多,国内有使用二次开发实践案例
Redash
代码结构清晰的一款开源项目,更加专注强调数据展示,将数据展示出来方面。
- 1技术栈,Python + Flask + AngularJS + SQLAlchemy
- 2功能,由于是对SQL查询结果进行可视化,需要开发/分析人员做好看板,业务人员浏览看板数据,支持的图表少,支持的数据库少,权限管理简单
- 3活跃度,项目活跃不断更新中
- 4官网文档较多,支持二次开发
metabase
metabase产品设计的好,代码结构清晰,对业务人员编辑使用友好。Clojure是Lisp的一种方言,使用jvm,可以调用java jar。
- 1技术栈,Clojure + React + Redux
- 2功能,面漂亮、友好,使用体验好,适合业务人员使用。支持的数据源少,支持的图表少。
- 3活跃度,项目活跃不断更新中
- 4官网文档齐全,支持二次开发。
图片来源数据分析不是个事儿