技术心得记录:开源BI分析工具Metabase配置与完全使用手册

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 技术心得记录:开源BI分析工具Metabase配置与完全使用手册

文章目录


简介


安装


初始配置


数据分析


简单查询


创建场景


创建集合和仪表盘


自定义查询


原生查询


sql变量


动态sql片段


管理员操作


添加数据库


连接oracle


成员管理


邀请新成员


权限配置


数据权限


文件夹权限


邮箱配置


定时任务


简介


Metabase是一个免费的BI分析工具,可以帮助你把数据库中的数据更好的呈现给更多人,通过建立一个”查询“来提炼数据,再以图形化的方式做展示。上手简单,操作门槛低,即使不会sql语句也能使用。同时工具轻量、安装依赖的环境简单、配置简单清楚,只需一个jar包和一条命令就能完成安装


安装


Metabase的安装非常简单,只需将jar包下载下来后(下载地址),放在有java环境的机子上,通过java -jar命令启动即可,启动命令:


java -jar metabase.jar


1


这里需要注意的是metabase自带的H2数据库相对较弱,最好替换成其他数据源,比如MySQL等,这里可以参考我的另一篇文章:《metabase默认应用数据//代码效果参考:http://www.jhylw.com.cn/165933803.html

源H2变更为MySQL及历史数据迁移》

初始配置


启动后metabase默认端口为3000,如果要变更端口,可添加环境变量MB_JETTY_PORT来指定端口


,假设metabase为本地启动,浏览器访问网址:即可进入初始化界面


按提示一步步填写相关信息即可,注意第一个创建的账户默认即为管理员账户


等待初始化之后,进入首页即可看到配置数据库下的所有表


数据分析


接下来就可以正式使用了,右上角各功能如下:


下面就以具体场景为例,分别解释各项功能,点击创建问题 --》简单查询,先从简单的开始,走一遍整体流程


简单查询


假设我要对一张名为customer_group_info的客户群表做多个维度的分析,表结构与测试记录如下:


需求场景如下:


根据status状态字段做聚合,查看各个状态下的客群数


根据insert_time创建时间字段对客群做趋势分析


筛选出cgp_type客群类型为3的客群


创建场景


场景1:


1) 右上角选聚合,聚合条件为总行数,分组条件为status,聚合结果如下:


2) 为了便于观察,我们以图表形式显示,选择右下角“可视化”,选择图表类型


3)保存该问题,由于目前还没新建集合,先默认保存在“分析下”


场景2,3类似,就不再赘述


场景2:


场景3:


以上三个问题创建完毕,目前都保存在“分析”下,为了便于分类管理,下面就新建一个集合,把以上问题归类


创建集合和仪表盘


回到首页,进入“分析”,新建名为“客群分析”的集合,然后把问题移到该集合下


目前虽然已经归类到一个集合下了,但是查看还是很不方便,还是要每个问题分别点进去才能看到,下面就开始建一个仪表盘,把这三个问题整合到同一个仪表盘下,点右上角“+”号,选择新仪表盘,放到“客群分析”集合下


然后在仪表盘中把三个问题添加进去即可


这样,后续对这三个场景的数据分析,就可以直接在该仪表盘中查看了


自定义查询


自定义查询相较于简单查询,支持更高级的操作,如多表关联,表与创建的问题之间的关联等,但整体操作还是跟简单查询类似,这里就不再重复了


原生查询


原生查询即直接写sql查询,但是前提是该用户必须有sql查询的权限,权限问题会在后面的权限管理中讲到。


sql查询可直接通过右上角控制台图标进入,进入后记得要先在左上角选择数据库


metabase中的sql可以支持变量和根据变量做动态sql拼接,变量形式:{ {变量名}},动态sql片段形式:【【and 字段 = { {变量名}}】】,具体如何使用,下面举例说明。


sql变量


还是以customer_group_info这张表为例,假设创建了一个问题,问题中的sql如下:


select from customer_group_info where cgp_id = '2589bd22-c719-4e01-b9bf-2144beacadca'


1


根据cgp_id去查找记录,但是cgp_id是固定的,如果每次查询都要修改问题中的sql去改变值的话,那岂不是跟直接写sql没差,这时候就可以用变量替换,把cgp_id改成变量,然后直接输入查询值,改成如下格式的sql:


select from customer_group_info where cgp_id = { {input_id}}


1


问题上方会多出一个文本框,在文本框中输入cgp_id就可以查询


动态sql片段


sql变量虽然解决了查询条件值不固定的问题,但是如果有些查询条件也是可选的,这该怎么解决呢,如下面的sql:


select


cgp_id as 客群编号,


user_name as 用户名,


cgp_type as 客群类型


from


customer_group_info


where user_name = 'apicloud1'


and


cgp_type = 2 -- 该条件为可选条件


1


2


3


4


5


6


7


8


9


那就可根据条件来动态拼sql,改成如下形式:


select


cgp_id as 客群编号,


user_name as 用户名


【【 ,{ {input_type}} as 客群类型】】


from


customer_group_info


where user_name = { {input_user}}


【【and cgp_type = { {input_type}}】】


1


2


3


4


5


6


7


8


当不输入cgp_type时,查询出所有客群类型


当指定cgp_type时,查询出指定客群类型


以上为数据分析人员的数据分析操作,下面来说一下管理员角色的管理功能


管理员操作


添加数据库


点击设置,切换为管理员,进入管理员页面


选择 数据库 --> 添加数据库


填写数据库信息, 填写完成后保存即可


后续也可以通过该步骤选择已有数据库变更信息


连接oracle


metabase的默认数据源连接里面是没有oracle选项的,如果要连接oracle,需要单独配置


首先去oracle官网下载ojdbc驱动:


放到/metabase/plugins目录下,重启metabase即可


成员管理


邀请新成员


可以在 管理员页面 --》人员 --》 邀请其他人 邀请新用户,并分配用户组,邀请初始密码随机生成


权限配置


权限管理主要分为数据权限和文件夹权限两类,数据权限只访问数据库与表记录的权限,文件夹权限指访问集合的权限


数据权限


数据权限管理页面如下图所示,其中纵轴为所有的数据库,横轴为所有用户组


权限类型如下:


允许访问数据


没有权限: 无法访问整个数据库


部分权限:可访问指定表


授予不受限制的访问权限:可访问整个数据库


sql查询


没有权限: 无法在终端写原生sql


写原始查询语句: 可写sql


文件夹权限


其管理页面如下,纵轴为所有集合,横轴为所有用户组


权限类型如下:


集合权限


没有权限


查看集合


修改集合


邮箱配置


配置邮箱后,metabase可定时将指定的集合的分析结果推送至关注人邮箱,就不用主动登录metabase去查看


邮箱配置流程如下:


管理员页面 --》设置 --》 邮箱,填写邮件服务器信息与发送者邮箱


配置好后点击 ”发送测试邮件“,如果管理员邮箱中能收到如下测试邮件,说明邮箱配置成功


定时任务


邮箱配置完成之后,就可以配置定时任务来定时推送结果,将上面创建的三个问题的结果推送给对应邮箱,步骤如下:


回到首页,点击”+“添加新的定时任务


选择集合中的问题


设置定时任务和接收者邮箱,这里要注意你metabase设定的时区对不对,然后就能定时推送分析报告了


收到邮件如下:


------------恢复内容开始------------


文章目录


简介


安装


初始配置


数据分析


简单查询


创建场景


创建集合和仪表盘


自定义查询


原生查询


sql变量


动态sql片段


管理员操作


添加数据库


连接oracle


成员管理


邀请新成员


权限配置


数据权限


文件夹权限


邮箱配置


定时任务


简介


Metabase是一个免费的BI分析工具,可以帮助你把数据库中的数据更好的呈现给更多人,通过建立一个”查询“来提炼数据,再以图形化的方式做展示。上手简单,操作门槛低,即使不会sql语句也能使用。同时工具轻量、安装依赖的环境简单、配置简单清楚,只需一个jar包和一条命令就能完成安装


安装


Metabase的安装非常简单,只需将jar包下载下来后(下载地址),放在有java环境的机子上,通过java -jar命令启动即可,启动命令:


java -jar metabase.jar


1


这里需要注意的是metabase自带的H2数据库相对较弱,最好替换成其他数据源,比如MySQL等,这里可以参考我的另一篇文章:《metabase默认应用数据源H2变更为MySQL及历史数据迁移》


初始配置


启动后metabase默认端口为3000,如果要变更端口,可添加环境变量MB_JETTY_PORT来指定端口


,假设metabase为本地启动,浏览器访问网址:即可进入初始化界面


按提示一步步填写相关信息即可,注意第一个创建的账户默认即为管理员账户


等待初始化之后,进入首页即可看到配置数据库下的所有表


数据分析


接下来就可以正式使用了,右上角各功能如下:


下面就以具体场景为例,分别解释各项功能,点击创建问题 --》简单查询,先从简单的开始,走一遍整体流程


简单查询


假设我要对一张名为customer_group_info的客户群表做多个维度的分析,表结构与测试记录如下:


需求场景如下:


根据status状态字段做聚合,查看各个状态下的客群数


根据insert_time创建时间字段对客群做趋势分析


筛选出cgp_type客群类型为3的客群


创建场景


场景1:


1) 右上角选聚合,聚合条件为总行数,分组条件为status,聚合结果如下:


2) 为了便于观察,我们以图表形式显示,选择右下角“可视化”,选择图表类型


3)保存该问题,由于目前还没新建集合,先默认保存在“分析下”


场景2,3类似,就不再赘述


场景2:


场景3:


以上三个问题创建完毕,目前都保存在“分析”下,为了便于分类管理,下面//代码效果参考:http://www.jhylw.com.cn/580321209.html

就新建一个集合,把以上问题归类

创建集合和仪表盘


回到首页,进入“分析”,新建名为“客群分析”的集合,然后把问题移到该集合下


目前虽然已经归类到一个集合下了,但是查看还是很不方便,还是要每个问题分别点进去才能看到,下面就开始建一个仪表盘,把这三个问题整合到同一个仪表盘下,点右上角“+”号,选择新仪表盘,放到“客群分析”集合下


然后在仪表盘中把三个问题添加进去即可


这样,后续对这三个场景的数据分析,就可以直接在该仪表盘中查看了


自定义查询


自定义查询相较于简单查询,支持更高级的操作,如多表关联,表与创建的问题之间的关联等,但整体操作还是跟简单查询类似,这里就不再重复了


原生查询


原生查询即直接写sql查询,但是前提是该用户必须有s

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
1月前
|
机器学习/深度学习 存储 人工智能
RAG系统文本检索优化:Cross-Encoder与Bi-Encoder架构技术对比与选择指南
本文将深入分析这两种编码架构的技术原理、数学基础、实现流程以及各自的优势与局限性,并探讨混合架构的应用策略。
145 10
RAG系统文本检索优化:Cross-Encoder与Bi-Encoder架构技术对比与选择指南
|
1月前
|
BI 数据安全/隐私保护
Dataphin功能Tips系列(69)数据资产如何快捷对接Qucik BI进行分析消费
QuickBI与Dataphin集成,实现数据权限统一管理,简化用户从权限申请到仪表板创建的流程,提升数据消费效率,保障数据安全,加速数据价值转化。
|
3月前
|
SQL 存储 人工智能
Quick BI V5.5上线:AI赋能全场景提效,分析决策 “快、准、稳”!
Quick BI 5.5版本应运而生,围绕"AI赋能+全场景提效",助力企业加速释放数据价值。此次升级,不仅让复杂分析"开箱即用",更通过智能工具与场景化能力,助力企业实现从数据洞察到决策落地的全流程闭环。
Quick BI V5.5上线:AI赋能全场景提效,分析决策 “快、准、稳”!
|
5月前
|
数据可视化 数据挖掘 数据建模
数据可视化工具大比拼:从Tableau到Power BI,谁才是你的最佳拍档?
数据可视化工具大比拼:从Tableau到Power BI,谁才是你的最佳拍档?
737 12
|
6月前
|
人工智能 自然语言处理 数据可视化
大模型+BI:一场关乎企业未来生死的数据智能卡位战 | 【瓴羊数据荟】数据MeetUp第四期
随着大模型技术突破,全球企业迎来数据智能革命。Gartner预测,到2027年,中国80%的企业将采用多模型生成式AI策略。然而,数据孤岛与高门槛仍阻碍价值释放。
242 8
大模型+BI:一场关乎企业未来生死的数据智能卡位战 | 【瓴羊数据荟】数据MeetUp第四期
|
6月前
|
SQL 前端开发 关系型数据库
现在啥软件都有开源,BI 呢?
一直以来国内的同学想找一个方便好用的开源 BI 都不是一件易事,国外的页面不好修改,国内的基本都收费,现在有了润乾开源 BI 了,同学们可以去试一下了,润乾是做报表起家,是报表行业的领头羊,报表功能好,BI 功能也不差,还天然弥补了 BI 缺少报表能力的短板
|
5月前
|
SQL 自然语言处理 数据可视化
📊 Quick BI 真实体验评测:小白也能快速上手的数据分析工具!
作为一名软件开发工程师,我体验了阿里云的Quick BI工具。从申请试用账号到上传数据、创建数据集,再到搭建仪表板和使用智能小Q功能,整个过程流畅且简单易用。尤其对非专业数据分析人士来说,拖拽式设计和自然语言问数功能极大降低了操作门槛。虽然在试用入口明显度和复杂语义理解上还有提升空间,但整体体验令人满意。Quick BI让我改变了对数据分析的认知,值得推荐给需要快速制作报表的团队成员。
|
6月前
|
数据可视化 数据挖掘 BI
Quick BI 深度体验:数据洞察,触手可及——打造智能零售分析利器
作为一名数据分析师,我深度体验了阿里云Quick BI。这是一款功能强大的全场景BI平台,支持多数据源接入与智能分析,操作简单且智能化程度高。通过上传Excel文件即可快速生成数据集,并利用丰富图表进行可视化分析。其“智能小Q助手”可对话式查询数据、自动生成报表,极大降低分析门槛。尽管新手引导和移动端体验尚有优化空间,但Quick BI无疑是企业实现数据驱动决策的有力工具。强烈推荐给希望提升业务竞争力的企业!
|
7月前
|
人工智能 数据可视化 搜索推荐
云市场伙伴动态 | 分析和商业智能平台领导者Tableau
云市场伙伴动态 | 分析和商业智能平台领导者Tableau
|
10月前
|
机器学习/深度学习 算法 数据挖掘
如何利用 BI 工具分析客户流失原因?
如何利用 BI 工具分析客户流失原因?
283 10

热门文章

最新文章