通常程序员对数据相关的,都会有一种隔膜感,即使专业做大数据相关开发的,对数据的感觉也是仅限于在SQL和实现需求,这样其实很吃亏。因为不管是希望晋升,或者考核汇报,甚至仅仅是日常工作,如果能够清晰地将自己的成果,转换成一个个漂亮的图表、看起来高大上的大屏
,会是很有用的加(zhuang)分(13)项。
Metabase是一个数据展示工具,正式称BI工具,名字十分高级,不过从入手难度来说,要比Excel简单不少。所以Metabase很适合我们程序员这种没有多少时间去专门研究数据工具,可是又想要很快捷的做出让人惊叹的数据展示图表。本篇将介绍Metabase的最主要的图表的使用。
下载,安装
Metabase Open Source版本下载链接是:https://www.metabase.com/start/oss/
这里是JAR版本的启动方法:java -jar -Xms1024m -Xmx2048m /home/metabase/metabase.jar
用透视图快速建立图表
Metabase 有自带一个H2数据的Sample Dataset,本文以它作为示例:
点击这People表的雷电箭头,就能看到透视图。
这里可以看到针对People表的很多不同维度的图表,直接能保存下来。
通过创建问题的方式建立图表
选择简单查询
或者自定义查询
,其实两者几乎是相同的。
选择你的数据表:
进入编辑界面:
编辑界面是比较直观的,从上面的图可以了解Metabase功能和SQL语句之间的对应。
指标和分组
指标和分组是组成图表里面的数据,可以理解成它是组成两维图表的Y轴
和X轴
。
在Metabase里面,指标
首先是字段,相当于SQL的Select Field
,可以加入各种条件来进行一些计算,比如说不重复值的总数
,累积求和
,累积行数
都是比较常用而且直接自己写SQL比较难实现的。
指标也可以用一些表达式,而表达式里面的函数都有详细的说明
分组
可以选择根据表的哪个字段进行一个数据计算汇总,比如下图是按照时间,按小时计算。这也是最常用的,只要在开发设计数据表的时候,记得加上一个创建时间的时间戳字段就行。
另外,还可以通过其他字段进行分组,比如下图是按价格分类:
图表的修饰
设置好了指标
,分组
之后,就可以点击可视化,我们就能看到生成的图表:
如果对图表不满意或者字段有问题,可以点击右上角的编辑器图标再进行调整。
点击左下角的可视化,会出现关于图表本身的一些界面上的调整选项。这里的图表类型还是比较丰富的,不过要注意的是,一般只有一个指标加一种分组
的常规XY轴的数据,会有比较多的图表形式支持。其他的比如只有一个数字作为结果或者是没有分组的,支持的图表会比较少一些。
对图表本身的调整,还可以设置图表的坐标值,形式,各种字段显示的文字等等。
表间关联
通常我们还会有一些表是和其他的表关联的,也就是JOIN表操作,Metabase做起来也是非常简便。
在上面3
的位置那里点击,可以选择另一张表来进行关联,这里一开始就需要选择关联对应的字段,相当于JOIN
语句的ON
条件。下图是ON Products.ID = Orders.Product ID
.
然后这个编辑器的各种条件设置,都可以选择两个表的字段
,比如说
指标:
分组:
过滤条件(Where/ON 条件)
三个小问题
上面初步介绍了Metabase的一些图表上的操作,Metabase相对简单,只要理解它的功能和SQL之间的对应关系,就基本能做出各种图表了。关于SQL操作会在下一篇文章描述,这里我们来看看三个Metabase在使用上的经常遇到的小问题。
第一个问题是新建集合
,这个有时候挺难找的,因为新建集合是需要在随便一个集合里面(在外面其他地方找不到的),点击右上角的新建集合
,然后填写名字建立新图表的。
第二个问题是分享设置
,分享图表需要先在管理员界面设置分享之后,才能开始进行。
设置完成后,就可以在每个图表的右下角,发现分享按钮了。
第三个问题是刷新缓存
,通常我们如果修改了数据库字段,Metabase里面默认不会自动刷新的,所以需要进入数据表本身的配置里面进行一下刷新,比如说以下是将Sample Dataset进行一下刷新,几分钟后,新增加的字段就会显示了。