头图
之前介绍过一款数据可视化工具DataEase ,发现大家对这种可视化工具还是比较感兴趣的。最近又发现一款界面非常不错的数据可视化工具Metabase,对比DataEase,这款工具仅需5分钟就可以搭建完成,无需复杂配置,用起来也很方便。这款真正开箱即用的好工具,今天推荐给大家!

SpringBoot实战电商项目mall(50k+star)地址:https://github.com/macrozheng/mall

简介

Metabase是一款简单、快捷的BI(数据可视化)工具,在Github上已有27k+Star,可见其是非常流行的。

Metabase具有如下特性:

  • 使用Docker搭建非常快速,5分钟即可完成搭建和设置;
  • 人人可用的数据可视化工具,你不需要懂SQL;
  • 提供了丰富的仪表盘界面,真正颜值在线的工具,支持数据自动刷新;
  • 支持自定义SQL查询,适合懂SQL的人使用;
  • 强大的数据透视功能,可以根据数据自动生成仪表板;
  • 可以进行多表数据的关联分析,并且无需手写SQL。

下面是一张由Metabase生成的仪表盘,还是挺炫酷的。

安装

使用Docker安装Metabase非常简单,下面我们将采用此种方式安装。
  • 首先下载Metabase的Docker镜像,仅400M大小,非常小巧;
docker pull metabase/metabase
  • 接下来使用如下命令运行Metabase服务;
docker run -p 3000:3000 --name metabase \
-v /mydata/metabase-data:/metabase-data \
-e "MB_DB_FILE=/metabase-data/metabase.db" \
-d metabase/metabase
  • 运行过程中,可以使用如下命令查看日志;
docker logs -f metabase
  • 从日志中我们很容易看出,Metabase又是一款Java开发的神器,当输出如下日志时,代表启动成功了。

  • 最后开启防火墙的3000端口,以供外部访问。
firewall-cmd --zone=public --add-port=3000/tcp --permanent
firewall-cmd --reload

配置

在使用Metabase之前,我们还需要一些配置。

  • 然后选择语言,Metabase的国际化做的还是挺好的,支持很多种语言;

  • 接下来创建一个管理员账户;

  • 然后选择数据库,Metabase支持的数据库种类也挺丰富的;

  • 配置数据库连接信息;

  • 选择是否允许匿名收集使用事件;

  • 设置完成之后就可以进入Metabase的主界面了。

使用

Metabase内置了H2数据库,里面有一些示例数据,下面我们使用该数据来演示下它的基本使用。
  • 首先我们打开示例数据库看下,里面有哪些数据,基本就是订单、商品、用户这些数据表;

  • 我们打开Orders表可以查看表中数据;

  • 在Metabase中,一张可视化图表被称之为问题,我们下面来制作一张2019-2020年商品销售额增长趋势图,先通过过滤器设置过滤条件为Created At

  • 然后进行条件设置并添加过滤器;

  • 然后通过聚合功能,设置聚合条件为总和->Total

  • 再设置分组条件为Created At,并按月进行分组;

  • 之后就会生成一张趋势折线图了,通过左下角的可视化按钮,我们可以切换图表;

  • 支持的图表还是挺多的,最后点击保存按钮可以进行保存;

  • 我们还可以使用顶部的加号按钮创建仪表盘;

  • 然后将图表都添加到仪表盘中去,一个电商平台的销售看板就完成了。

高级

Metabase的功能远不只与此,下面再来介绍一些它的高级用法。

透视数据表

透视是个非常神奇的功能,当我们拿到一堆数据不知道如何分析时,使用它能为我们自动生成各种图表,说不定就有你想要的结果。
  • 下面我们来透视下Orders表,点击闪电按钮即可使用;

  • 这时Metabase将自动生成一个仪表板,分析一些数据,比如总共的订单量、每个商品的销量、每个商品分类的销量,大家可以找找自己感兴趣的数据;

  • 点击右侧的放大按钮,可以根据条件进行更精细化的分析,比如时间,这里按时间维度分析了订单的各种情况。

自定义首页

通过标记功能,我们可以把感兴趣的内容固定到首页去。
  • 比如我们对之前的某电商平台销售看板比较感兴趣,就可以将它进行标记;

  • 标记完成后就可以在首页方便地进行查看了。

自定义SQL查询

有时候我们分析的数据比较复杂,可以自定义SQL来实现。
  • 可以点击创建问题按钮,然后来创建原生查询

  • 然后选择好数据库,输入自定义SQL就可以进行查询了。

数据表关联

有时候我们进行数据分析时,需要多张表的数据,此时可以使用数据表关联功能,无需手写SQL即可实现。
  • 比如说我们想按分类统计商品销量,分类信息在Products表中,销量信息在Orders表中,我们可以通过显示编辑器来选择关联功能;

  • 然后管理Orders表和Products表,再对销量进行求和后按商品分类进行分组即可实现;

  • 接下来我们就可以看到各个商品按分类的销量统计图了。

管理员设置

通过管理员设置功能,我们可以修改Metabase的系统设置,比如语言设置、用户管理、数据库管理等。
  • 点击设置->管理员即可切换到管理员进行设置;

  • 设置中,我们可以进行一些基础设置;

  • 人员中可以进行用户管理;

  • 数据源中可以管理各个数据库的连接信息,我们之前一直使用的示例数据就是存在H2数据库中的;

  • 权限中可以进行权限管理。

总结

今天体验了一把Metabase,确实是一款开箱即用的好工具,搭建起来仅需5分钟。Metabase生成的图表也非常漂亮,使用也很方便,而且对于多表分析也无需手写SQL。如果大家有数据可视化方面的需求,不妨试试它!

参考资料

本文 GitHub https://github.com/macrozheng/mall-learning 已经收录,欢迎大家Star!

macrozheng
1.1k 声望1.3k 粉丝