一、ETL实践之数据可视化架构

  • 2020 年 10 月 27 日
  • 筆記

开篇心声:

  不管是学习新知识,还是遇到各种难题,总能在技术论坛找到经验帖子。一直享受大家提供的帮助,而自己没有任何输出,实在过意不去。我相信技术是经验的交流,思维的碰撞。

  这是我一次写技术分享文章,我想用系列文章介绍用Mongodb、Kettle、Metabase这三个开源软件在数据可视化实践中的一些关联问题,Mongodb脚本在不同软件中的应用注意事项。

 

先展示下我所用技术架构:

  数据源:Mongodb数据库集群、Excel,业务端用的数据源,数据抽取只能兼容。 

  ETL工具:Kettle,大多数ETL工具数据源对关系型数据库支持友好,而对NoSQL支持就有点差强人意。Kettle在BigData里集成了Mongodb组件,虽然用起来不如SQL数据连接,但还算稳定,支持Json格式的Mongodb脚本查询。

  数据仓库:Mongodb、PostgreSQL,数据源其实很灵活。数据体量达到PB及以上,建议直接用云数据仓库;数据量不大的,用自己熟悉的库就好。

  可视化:Echart、Metabase,Echart是百度开源的Javascript可视化插件,Metabase是国外的开源数据可视化软件。试过FineBI,其功能和图表比Metabase更丰富。不过,FIneBI免费版仅支持两个节点同时访问,自带数据源不支持Mongodb数据源。应用市场里有付费Mongodb连接插件,公司一看25000,而且需要经过FineReport转换,怕掉坑果断跳过。

  Kettle、Metabase运行需要JAVA环境。

  整体技术架构图1所示:

  

 

图 1