使用可视化数据分析工具metabase入门——原生查询MongoDB数据源

Metabase是一款开源的商业智能工具,专注于提供直观的界面,让非技术人员也能轻松探索和理解数据。它支持多种数据源,包括MongoDB,并提供了原生查询、自定义查询等查询模式。用户可以通过可视化查询生成器进行复杂查询,无需深入SQL。此外,Metabase还允许创建交互式仪表盘和自动化报告,便于分享发现。本文以MongoDB为例,展示了如何使用Metabase进行原生查询、数据可视化和设置,强调了其在数据分享和团队协作中的价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Metabase是一款开源的BI工具。Metabase 非常注重非技术人员(如产品经理、市场运营人员)在使用这个工具时的体验,让他们能自由地探索数据,回答自己的问题。

Metabase 官网介绍:

  • 整个团队的数据探索
    Metabase只需五分钟即可安装完毕,连接数据库,并以漂亮的可视化方式将其数据呈现在生活中。直观的界面让数据探索仿佛成为人的习惯,不仅仅是分析师和开发人员,也为每个人开放数据。

  • 超越SQL障碍的查询
    使用易于使用的可视化查询生成器,帮助每个人深入研究。它可以处理连接、聚合等的复杂性,使您的团队能够专注于发现他们的下一个见解,而不是通过SQL进行挑选。

  • 分享你的发现
    交互式仪表盘和自动化报告有助于让数据看起来像一项团队运动。高级嵌入选项使您可以轻松地在演示文稿、出版物甚至产品中共享数据。

支持的数据源如下:
在这里插入图片描述

目前自带不支持ClickHouse,需要自己加入ClickHouse的Jar驱动,该驱动Jar需要手动加载,在GitHub有同步更新,只是相比于Metabase有一定的滞后性,具体操作请参考后续的与clickhouse对接对接章节。

metabase的核心就是帮助你解答关于数据层面的疑问,以数据产品经理的视角,操作理念就是先“创建问题”;针对创建的问题有三种解答模式:原生查询、 自定义查询、原生查询。

  • 简单查询和自定义查询:就是通过拖拉拽的方式,让不具备sql功力的用户也能实现数据探索,数据报表,再把可视化的结果保存到仪表盘,也可以将创建问题先保存到某个目录下,后续再添加到仪表盘;
  • 原生查询,对于开发人员来说就是编写sql查询,可以写SQL语句,再做成可视化,直接保存到仪表盘,也可以先当创建问题先保存到某个目录下,后续再添加到仪表盘。

官网地址是:https://www.metabase.com/

1. 启动metabase

依赖环境:

D:\Program Files\metabase>java -version
openjdk version "11" 2018-09-25
OpenJDK Runtime Environment 18.9 (build 11+28)
OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)

启动命令:

java -jar metabase.jar

metabase默认端口是3000,打开链接http://localhost:3000

2. 创建问题

本文基于Mongo DB为例实践matebase的使用,将以“原生查询”为入门经历记录。
在这里插入图片描述
(1)首先,“选择一个数据库“”,本案例的数据库名称为ccm,接着“选择一个表单”,表单名称为“Customerfeature”,进入自定义查询语句编辑状态。
在这里插入图片描述
(2)在编辑框中输入查询语句,点击执行按钮。

[
{ $match : {"initdate":{"$gt" :20200910} ,'lateststatus':{'$ne':3},'trans_sum':{'$lte':5}}},
{'$project':{'begindate':{$toString:'$initdate'},'occurtime':'$occurtime','amountmean':'$amountmean','carduser_id':'$carduser_id'}},
{'$project':{'begindate':{$dateFromString:{dateString:{$concat:[{$substr:['$begindate',0,4]},'-',{$substr:['$begindate',4,2]},'-',{$substr:['$begindate',6,2]}]}}},
             'occurtime':'$occurtime','amountmean':'$amountmean','carduser_id':'$carduser_id'}},
{"$group":{'_id': "$carduser_id",occurtime:{"$max":"$occurtime"},data:{$first: '$$ROOT'}}},
{"$project":{'_id':0,'carduser_id':'$_id','amountmean':'$data.amountmean','occurtime':'$data.occurtime','yearmonth':  
    {$dateToString: { format: "%Y%m", date: '$data.begindate' }} }},
{"$group":{'_id': "$yearmonth", "amountsum":{"$sum":"$amountmean"},"newcount":{"$sum":1}}},
{"$sort":{"_id":1}}
]

在这里插入图片描述
(3)执行成功,则返回数据列表,这时可以点击右上角的“保存”操作,如下所示写入问题名称,并进行描述(可选)。
在这里插入图片描述
(4)可视化编辑
点击图中下面的“可视化”按钮,选择左上方的“线段”按钮,经过一系列设置形成如下图表。
在这里插入图片描述
(5)设置
点击图中下面的“设置”按钮,左侧出现如图所示四个选项:显示、坐标轴、标签、数据。
在这里插入图片描述
根据数据,分别设置显示、坐标轴、标签、数据内容,如下图所示。
在这里插入图片描述
其中,修改标签:

  • 对应数据项:

    • amountsum,显示为月均消费额
    • churncount,显示为流失数量
    • _id,对应标签为年月
  • 线条样式显示选择平滑曲线。

3. 总结

轻松浏览数据,即使你不是分析师,Metabase也能让你感觉自己是分析师。通过此工具,可以让数据分析师、算法工程师专注数据分析算法和解决问题,不再为数据可视化展现烦恼。

参考:
[1]. ╭⌒若隐_RowYet. Metabase——开源的大数据分析探索、可视化报表神器. CSDN博客, 2021.07
[2]. 肖永威. MongoDB高级查询多级分组聚合及时间计算应用实践案例. CSDN博客, 2021.10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肖永威

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值