Metabase 安装和使用教程

Metabase 是一款开源的数据分析和商业智能工具,允许企业用户在几分钟内搭建起一个功能完善的数据探索和数据分析平台,不需要编写复杂的 SQL 查询语句或者使用专业的数据可视化工具,就可以轻松地探索数据、创建图表、构建仪表盘,从而洞察业务趋势,回答关键问题。

Metabase 还有一个比较独特的地方,它采用了自助式数据分析的理念。即使是没有技术背景的业务用户,也可以通过直观的拖拽操作、自然语言查询等方式来获取数据。技术大拿不要慌,Metabase 也为专业分析师提供了 SQL 编辑器等高级功能。

Metabase 的主要特性

与 Tableau、PowerBI 等商业 BI 巨头相比,Metabase 的最大优势在于其开源、轻量、易用的特点。中小企业用户可以通过 Metabase 快速搭建起一套数据分析系统,无需给商业巨头支付高昂的授权费用。

与 Superset、Redash 等开源产品相比,Metabase 在产品设计和用户体验方面更胜一筹。Metabase 不仅长得好看,交互体验出色,而且在权限管理、外部集成等企业级功能上也更加完善。

Metabase 的主要特性如下:

  • 安装便捷:相比传统的 BI 系统动辄数周的安装周期,Metabase 号称5分钟就可以搞定。支持常见的 Windows、Mac、Linux 操作系统,同时提供 Docker 镜像。
  • 支持多种数据源:Metabase 可以连接几乎所有常见类型的数据库,包括流行的 MySQL、PostgreSQL、Oracle、SQL Server 等关系型数据库,以及 MongoDB、Druid、Google BigQuery 等新型数据存储。
  • 强大的可视化查询能力:Metabase 提供了直观的图形化查询构建器。用户通过点选数据表和字段、设置筛选条件、选择可视化图表,即可轻松完成查询,无需写一行 SQL。对于复杂查询,还有 SQL 编辑器可供使用。
  • 精美的监控面板:Metabase 的监控面板不仅界面美观,还支持自动刷新、全屏显示、自定义点击行为等高级功能。通过拖拽方式,即可完成布局,各种酷炫的图表应有尽有。
  • 数据建模:Metabase 支持对数据源进行清洗、注释和多表 Join,可以将原始数据加工成便于分析的标准模型。基于模型可以定义业务指标,形成标准数据口径。
  • 安全和准入控制:Metabase 内置了细粒度的数据权限管理功能。管理员可以灵活配置不同人员对不同数据表和字段的访问权限,既保证数据安全,又方便用户使用。
  • 多样化的集成与分享方式:通过嵌入式集成,可以将 Metabase 的单个图表或者整个应用集成到现有系统中。图表和仪表盘可以公开分享,支持定时发送邮件或 Slack 通知。你还可以针对数据变化设置告警规则。

Metabase 的应用场景

有了 Metabase,大部分企业和组织都可以实现数据分析自由。

可能很多人对这个产品的应用场景还不是很明确,我给你们举几个例子

  1. 快速搭建企业数据分析平台

    对于许多企业而言,从零开始构建一套数据分析平台是一项非常复杂繁琐的工作。而借助 Metabase,你只需一名技术人员,就可以在几个小时内搭建起一个覆盖数据接入、建模、查询、展示等全流程的数据分析平台

  2. 赋能业务人员自助分析

    业务人员借助 Metabase 直观的界面和强大的权限控制,可以轻松连接数据源,创建自己所需的业务指标和数据视图。这种由业务驱动的分析模式,可以让每个业务团队都拥有定制化的数据分析工具,提高分析效率和业务洞察力。

  3. 辅助管理层进行决策分析

    Metabase 为企业管理层提供了一个全局视角,帮助他们实时监控公司的整体运营状况。通过 Metabase 的仪表盘功能,管理者可以跟踪销售、成本、客户等关键指标的变化趋势。

  4. 集成现有系统,定制化分析

    你可以利用 Metabase 的 API 接口,将其嵌入到自己的应用程序或者网站中,为最终用户提供一站式的数据分析体验。例如,你可以为销售系统增加一个数据分析模块,让销售人员随时查看客户、订单、佣金等数据;或者为电商网站设计一个运营分析后台,帮助运营团队优化营销策略

Metabse 的部署和使用

本章节我们将进入实践环节,手把手教你如何安装和配置 Metabase,快速搭建一个属于自己的数据分析平台。

Metabase 对运行环境的要求非常宽松,你几乎可以在任何主流的操作系统和硬件平台上部署,具体可参考 Metabase 的官方文档

对于没有技术背景的同学而言,你也不用担心安装问题,Sealos 应用商店提供了一键部署的应用模板,点一下鼠标即可完成部署,非常丝滑。

直接打开 Metabse 应用模板,然后点击右上角的 "去 Sealos 部署"。

如果您是第一次使用 Sealos,则需要注册登录 Sealos 公有云账号,登录之后会立即跳转到模板的部署页面。

点击右上角的 "部署应用" 开始部署,部署完成后,直接点击应用的 "详情" 进入该应用的详情页面。

等待应用状态变成 running 之后,直接点击外网地址便可打开 Metabase 的可视化界面。

根据提示,完成初始化设置。你可以在初始化设置时就对接数据库,也可以选择稍后再添加。

初始化完成后,就进入了首页。

使用 Metabase 进行数据分析

本章节我们将详细介绍如何使用 Metabase 提供的各种工具,包括数据连接、查询构建、仪表盘制作等,带你一步步掌握数据分析的要领。

连接数据源

在开始分析之前,我们首先需要将 Metabase 连接到我们的数据源。Metabase 支持多种类型的数据源,包括关系型数据库 (如 MySQL、PostgreSQL)、大数据平台 (如 Spark)、NoSQL 数据库 (如 MongoDB) 等。

点击 Metabase 主界面左上角的 "加入你自己的数据",开始添加一个新的数据源连接。

在弹出的表单中,你需要填写以下信息:

  • 数据库类型:选择数据源的类型,如 MySQL、PostgreSQL 等。
  • 显示名称:给这个连接起一个名字,方便后续识别。
  • 宿主:数据库服务器的主机名或 IP 地址。
  • 港口:数据库服务的端口号。港口是个啥玩意 😄,不得不说官方的中文翻译做的不太行,如果你不习惯,可以切换成英文
  • 数据库名称:要连接的数据库名称。
  • 账号:连接数据库的用户名
  • 密码:连接数据库的密码。

填写完成后,点击 "保存" 按钮,Metabase 会自动测试连接,如果一切正常,你就可以在数据源列表中看到新添加的连接了。

浏览数据表

成功连接数据源后,让我们先来熟悉一下数据表的结构。点击主界面左侧的 "浏览数据" 菜单,你可以看到刚才连接的数据库 (比如我这里连接的是 Umami 的数据库)。

展开数据库,你会看到其中包含的 Schema 和表。

点击一张表右侧的 "了解此表":

再点击 "本表中的字段",Metabase 会在右侧显示这张表的结构信息,包括字段列表、字段类型、数据类型等。你可以点击每个字段,查看该字段的统计信息,如不同值的数量、最大/最小值等。这些信息可以帮你快速了解数据的分布特征。

除了查看表结构,你还可以直接在 Metabase 中浏览表数据。在 "浏览数据" 中直接点击其中一个表,就可以看到每一行的具体数据,也可以对结果进行简单的筛选和排序。

通过浏览数据表,我们可以对数据源有一个整体的认识,为后续的查询分析打下基础。

构建查询

浏览数据只是第一步,更多时候我们需要通过构建查询,来回答具体的业务问题。Metabase 提供了两种构建查询的方式:可视化查询构建器和 SQL 编辑器。

可视化查询

对于没有 SQL 基础的用户,可视化查询构建器是一个很好的选择。它允许你通过图形化的操作来构建查询,而无需编写任何代码。

在浏览数据表时,点击右上角的 "创建" 按钮,然后选择 "问题",即可进入查询构建页面。

在这里,你可以执行以下操作:

  • 选择数据表:在 "选择初始数据" 中,选择你要查询的数据表。

  • 选择字段:在 "选择列" 中勾选你要查询的字段。Metabase 会自动将这些字段添加到查询的 SELECT 语句中。

    你可以点击右上角的 "查看 SQL" 来验证。

  • 添加筛选器:在 "筛选器" 部分,你可以通过设置条件表达式来过滤数据,相当于 SQL 的 WHERE 子句。Metabase 支持多种过滤器,包括等于、不等于、大于、小于、范围、字符串匹配等。

  • 添加聚合:如果你要对数据进行汇总操作,如求和、平均值等,可以在 "汇总" 部分选择相应的函数。Metabase 会自动将查询转换为分组聚合的形式。

  • 添加排序:在 "排序" 部分,你可以指定一个或多个字段作为排序依据,相当于 SQL 的 ORDER BY 子句。

  • 添加限制:如果你只需要查询前 N 条记录,可以在 "行数限制" 部分设置一个数字。这相当于 SQL 的 LIMIT 子句。

完成上述设置后,点击 "可视化" 按钮,Metabase 就会执行查询,并将结果显示在下方的表格中。你还可以选择将查询结果以柱状图、折线图、饼图等形式进行可视化展示。

例如,我这里选择 "汇总方式" 为 "行数",选择 "分组的列" 为 Browser:

最终得到的可视化图表如下,可以很清晰地看到有访问我网站的用户分别使用了哪些浏览器,每个浏览器有多少人:

SQL 编辑器

对于熟悉 SQL 的用户来说,我们可以直接编写 SQL 代码,执行任意复杂的查询和分析操作。只需要点击右上角的 "创建" 按钮,然后选择 "SQL" 查询即可。

SQL 编辑器的界面分为两部分:上方是输入 SQL 语句的编辑框,下方是查询结果的展示区。在编辑框中,你可以利用代码补全、语法高亮等功能,提高 SQL 编写的效率。Metabase 还提供了格式化、参数化查询等辅助工具,帮助你优化 SQL 代码的可读性和可维护性。

编写完 SQL 后,点击 "运行查询" 按钮,Metabase 就会执行查询,并将结果显示在下方的表格中。你可以对查询结果进行导出 (如 CSV、JSON 格式),也可以将其保存为一个 Question,方便后续复用。

制作监控面板

查询构建完成后,我们就可以将这些查询组合到一起,制作出漂亮的监控面板了。监控面板是 Metabase 最强大的功能之一,它允许你将多个查询和图表整合在一个页面中,提供一个全局的数据视角。

要创建一个新的仪表盘,点击页面顶部的 "创建" 按钮,然后点击 "仪表板"。在弹出的对话框中,输入仪表板的名称和描述信息,然后点击 "创建" 按钮。

进入仪表盘编辑页面后,你可以通过以下方式向仪表盘中添加内容:

  • 添加问答:你可以将之前保存的 "问题" 直接添加到仪表盘中。点击 "添加问题" 按钮,在弹出的选择框中找到对应的你之前保存的问题即可。

  • 添加文本框:如果你想在仪表盘中添加一些描述性的文字,可以使用文本框。点击 "添加标题或文本" 按钮,然后在文本框中输入你想要显示的内容。

添加完成后,你可以调整每个元素的大小和位置,让它们在仪表盘中合理地排布。Metabase 提供了灵活的布局方式,支持手动拖拽、网格对齐等操作,方便你打造出美观的布局效果。

除了内容本身,Metabase 还提供了许多辅助功能,帮助你增强仪表板的交互性和实用性,比如:

  • 添加筛选器:你可以在仪表板上添加筛选器控件,让用户能够动态地改变图表的显示内容。例如,通过日期选择器筛选不同时间段的数据,或者通过下拉框筛选不同分类的数据。
  • 添加点击行为:对于某些图表,你可以设置点击后的行为。例如,点击饼图的一个扇区,可以跳转到另一个仪表盘或 URL,展示该部分的详细数据。
  • 添加显示条件:如果你的仪表盘包含多个图表,其中一些图表可能只在某些条件下才需要显示。你可以为每个图表设置显示条件,动态控制其可见性。

总结

本文全面介绍了开源数据分析平台 Metabase,从功能特性到应用场景,从安装部署到使用操作,深入探讨了 Metabase 在企业数据分析中的方方面面。

Metabase 凭借其灵活的部署方式、强大的数据连接能力、直观的可视化查询界面、精美的仪表盘展示以及细粒度的权限管控等特性,可以帮助企业快速搭建起一套自助式的数据分析平台。无论是管理层、业务人员、运营专家还是数据分析师,都能在 Metabase 中找到适合自己的数据分析方式。

如果你正在寻找一款简单易用、功能全面的数据分析利器,不妨从 Metabase 开始。