搜索 A B C D E F G H I J K L M N O P Q R S T V W X A A/B 测试 一种通过随机向不同人群展示不同选项并收集其行为数据,以比较产品或界面的两个不同版本(通常是现有版本和新变体)的测试。 一种通过随机向不同人群展示不同选项并收集其行为数据,以比较产品或界面的两个不同版本(通常是现有版本和新变体)的测试。 阅读更多 API 程序定义的一组可供其他程序交互的端点。 程序的 API,即应用程序编程接口,定义了其他程序如何与它通信。 阅读更多 聚合 使用数学函数汇总数据的行为,例如计算列中的平均值,或统计表中的行数。 聚合是指使用数学函数汇总数据的行为,例如计算列中的平均值或统计表中的行数。结果数值通常被称为一个度量(metric),这与 Metabase 中的指标(metrics)有所不同。字段中的单个值本身可能没有太大意义,但当我们以某种特定方式组合这些值时,我们可以描绘出数据的更全面视图。聚合是将这些值折叠成单个结果的过程,通常与分组结合执行——即将多行根据某个特定值(例如按产品类别或国家/地区)进行组合。聚合可以即时计算,但您可能还希望创建包含结果的汇总表,并保存这些聚合函数的结果以供将来使用。汇总表在处理大型数据集时特别有用;由于汇总表是预先计算的,依赖它们的查询运行速度会快得多。SQL 中常见的聚合函数 不同的数据库有不同的函数集,但以下是一些您会遇到的最常见的聚合函数: COUNT() - 统计表中的行数。 AVG() – 计算字段中值的平均值。 MIN() – 识别字段中的最小值。 MAX() – 识别字段中的最大值。 SUM() – 返回字段中值的总和。 STDEV() – 计算字段中值的标准差。聚合示例 假设我们使用 Metabase 的示例数据库,我们想知道我们产品的平均价格,并按产品类别分组。在这种情况下,我们将使用 Products 表。我们的 SQL 查询将如下所示:SELECT category, avg(price) FROM products GROUP BY category 正如我们所愿,我们计算了 Products 表中 Price 列的平均值,并根据 Category 字段中的值对这些平均值进行了分组。如果想在 Metabase 的查询构建器中执行相同的聚合,我们将按价格平均值进行汇总,然后按类别分组,如下图所示:图 1. 在查询构建器中执行聚合:按产品类别分组的产品平均价格。 阅读更多 警报 Metabase 通过电子邮件或 Slack 发送的关于某个问题的通知。 您可以设置一个问题,当该问题返回数据或数据超过您定义的目标线时,通过电子邮件或 Slack 向您发送警报。阅读关于如何设置警报的文档。 阅读更多 分析型数据库 分析型数据库是为少数大型分析操作而非大量小型事务而优化的数据库。 分析型数据库是为少数大型分析操作而非大量小型事务而优化的数据库。OLAP 通常依赖分析型数据库。 阅读更多 应用程序数据库 Metabase 存储有关问题、仪表板和其他 Metabase 信息的运行数据的数据库。 Metabase 存储有关问题、仪表板和其他 Metabase 信息的运行数据的数据库。 阅读更多 面积图 一种折线图类型,其中绘制值与 x 轴之间的区域用纯色填充。 面积图是一种折线图类型,其中绘制值与 x 轴之间的区域用纯色填充。您可以将面积图视为标准折线图和条形图的结合体。在面积图中,您仍然有一条连接数据点的线(通常绘制随时间的变化),但通过填充该线与 x 轴之间的区域,您既突出了数据与零的关系,也突出了任何子类别与总体的关系。何时使用面积图 当您绘制多个数据子集,它们共同构成某个总值时,面积图是一个很好的选择。您需要表示随时间变化的体积和体积变化。您的数据包含太多 x 轴数据点,不适合堆叠条形图。如果出现以下情况,请考虑使用其他可视化类型,例如条形图或折线图: 您只测量随时间变化的单个系列。您的数据高度不稳定,频繁且/或大幅波动。您在一个图表中测量大量子类别。面积图示例 类似于堆叠条形图,在面积图上堆叠数据最好在您要跟踪的类别数量较少时使用——类别太多会使您的面积图变得混乱或难以阅读。图 1 显示了按产品 → 类别划分的订单,可视化为堆叠面积图。使用这种可视化,我们可以了解单个产品类别的兴衰以及订单的整体表现:图 1. 面积图示例。 阅读更多 属性 属性是描述或标识某个实体的特性。在某些 Metabase 计划中,用户属性用于限制用户可以访问的数据。 属性是描述或标识某个实体的特性。数据领域的人们在几种不同的语境中使用“属性”一词,因此我们将在此尽力消除歧义。基本上,属性是某事物的特征。该事物可能是一个表,但属性也可以指特定记录的特征,例如 Metabase 中的用户属性。关系数据库中的属性 在关系数据库中,人们经常将属性与列或字段互换使用,例如产品的类别是该产品的属性(或描述)。属性的这种用法在数据建模和设计实体关系图的背景下经常出现。属性示例 以下是 Metabase 示例数据库中 People 表的视图,其中包含 ID、Name、Address、City、State 等字段:图 1. People 表的视图。这些字段中的每一个都是一个属性——这些字段中的值描述了它们所关联的记录的一些信息,在本例中是 People 表中的“人员”。Metabase 中的用户属性 同步用户属性仅适用于专业版和企业版计划(包括自托管和 Metabase 云)。属性也可以指与特定用户关联的独立变量值,例如 User_ID。这种结构称为键值对,有时也称为属性值对。在 Metabase 中,某些计划允许您自行设置用户属性(或通过 SSO 将其传递给 Metabase)。您可以使用这些用户属性在仪表板上设置自定义目标,例如,当用户单击图表时,使用用户 ID 对 URL 进行参数化。用户属性也是数据沙盒的重要组成部分,它使您可以对使用 Metabase 实例的用户可以访问的数据进行精细控制。由于数据沙盒与单个用户关联,因此设置不同的用户属性可以让 Metabase 准确了解如何根据查看者过滤表。 阅读更多 审计日志 Metabase 中活动和性能的记录,在某些计划中对管理员可用。 使用情况分析仅适用于专业版和企业版计划(包括自托管和 Metabase 云)。使用情况分析,以前称为“审计日志”,包含 Metabase 中活动和性能的记录,在某些 Metabase 计划中对管理员可用。审计日志让管理员大致了解人们如何与他们的 Metabase 交互——哪些问题最受欢迎,谁在查看哪些仪表板,人们设置了哪些警报等等。 阅读更多 B BI 工具 一款旨在让用户无需依赖代码即可查看数据的应用程序。 BI 工具是一款旨在让用户无需依赖代码即可查看数据的应用程序。这些应用程序允许用户以表格、图表和仪表板的形式可视化和共享数据。BI 工具可连接到您组织中现有的数据源,例如您的数据仓库、CRM 或事件分析服务。常见的 BI 工具 电子表格应用程序 BI 工具的一个经典示例是 Microsoft Excel 或 Google Sheets 等电子表格应用程序,您可以在其中以表格、数据透视表或图表的形式可视化数据,并将结果作为独立文件(或云端这些文件的链接)进行共享。BI 平台 BI 工具通常被认为是一种仅用于数据可视化和生成报告的应用程序。而像 Metabase 这样的 BI 平台是一种 BI 工具,可以处理报告之外的附加任务,例如数据建模、数据目录、版本控制和权限管理。BI 工具如何融入数据堆栈?图 1. BI 工具属于现代数据堆栈的分析组件。BI 工具是可设置在数据堆栈面向用户一端的众多分析工具之一。特别是 BI 平台可以处理堆栈中其他部分的一些相同任务。以下是您可以预期这些部分如何交互的方式:BI 工具与数据库 BI 工具不是数据源——它们不会取代生产数据库或数据仓库来存储您组织拥有的数据。BI 工具通过运行查询并显示结果来从数据库中提取信息。BI 工具与 ETL BI 工具不会取代 ETL(或 ELT)来按计划摄取或转换大量数据。但是,与 ETL 类似,一些 BI 平台可以通过即时运行查询来处理数据建模和数据拼接(连接来自不同数据库的数据)。BI 工具与事件分析服务 Google Analytics、Segment 或 Amplitude 等事件或网络分析服务从您的产品中收集使用数据。尽管这些服务带有自己的界面来可视化和共享该数据,但它们不被视为 BI 工具。您可以将它们视为可以独立使用的迷你数据堆栈。事件分析服务可以通过将其与中央 BI 工具结合来集成到您的核心数据堆栈中。您可以从服务下载事件数据并将其移动到连接到您的 BI 工具的数据仓库中,或者如果支持,可以将服务直接连接到您的 BI 工具。BI 工具与开源编码工具 Jupyter Notebook 和 RShiny 等开源工具使用 Python 和 R 等编程语言来处理数据。它们可用于构建分析报告和仪表板,但它们不被视为 BI 工具,因为它们依赖代码而非可视化界面。 阅读更多 条形图 一种数据可视化,使用与所测量值大小成比例的矩形。 条形图是一种数据可视化,它使用沿轴的矩形(或条形),其大小与被测量值成比例。这些条形图按与离散分类数据相关联的值进行缩放。当您想比较跨类别的固定值时,条形图非常有用。一个轴将包含被测量的类别,而另一个轴将显示它们对应的数值。图 1. 显示按类别划分的产品平均评分的条形图。图 1 显示了一个标准柱状图,其中条形垂直显示,但您也可以使用水平条形可视化数据,称为行图。图 2 以行图的形式显示了相同的数据——按类别划分的产品平均评分。图 2. 用水平条形图可视化的相同数据,称为行图。条形图不限于单个维度;它们非常适合多系列图表。例如,您可能想根据用户来源比较各季度订单的表现。在这种情况下,您可以使用标准多系列条形图或堆叠条形图,其中用户来源按其在单个条形图中的值比例堆叠,每个条形图显示一个季度的数据。如果您更愿意将它们视为堆叠中的相对百分比,请考虑使用 100% 堆叠条形图。条形图被广泛采用且易于解释,使其成为快速参考比较的良好选择。 阅读更多 数据桶 用于在图表中对值进行分组的连续值单一范围。 数据桶是用于在图表中对值进行分组的连续值单一范围。数据分箱有助于简化数据可视化,以便人们了解数据的分布并轻松发现异常值。您最常看到数据桶与直方图一起使用,但它们并非直方图独有,也可用于其他可视化类型,如折线图或饼图。如果数据集中某个度量包含许多唯一值,则在图表上绘制每个单独的数据点可能会显得杂乱,并且可能无法最佳地表示您的数据。当您对数据进行分箱时,这些值会被分组为大小相等的区间(例如 1-10、11-20、21-30 等),并且您生成的图表将显示每个数据桶中值的计数。数据分箱示例 图 1 显示了 Metabase 示例数据库中产品的价格,以直方图形式显示。图 1. 示例数据库中产品的价格,以直方图形式显示。Metabase 会根据数据的分布方式自动生成数据桶。这里的数据桶是价格范围;我们可以看到,价格在 37.50-50.00 美元范围内的产品比其他任何范围都多。Metabase 自动对这些值进行了分箱,但我们也可以选择所需的数据桶数量(10、50 或 100)来进一步调整此图表。如果您的数据桶大小太小,数据桶数量就会过多,可能导致难以解释的可视化效果。然而,太少的数据桶会给您一个不完整或过度压缩的数据分布图,所以请尝试并找出最适合您数据的方法。 阅读更多 细分 按一个或多个维度对聚合结果进行分组。 细分是按一个或多个维度对聚合结果进行分组,例如按国家/地区分组(或细分)的用户数量。您选择用于分组的列有时被称为细分列。在原生 SQL 查询中,GROUP BY 语句具有类似的功能,根据您指定的任何维度分离和组织结果。Metabase 中的细分示例 图 1 显示了一个指标(订单小计总和),按两个维度细分:1)订单月份和 2)产品类别。这里我们将此细分可视化为堆叠条形图。图 1. 一个堆叠条形图,其中包含按两个维度(月份和产品类别)细分的指标(订单小计总和)。在 Metabase 中对图表进行下钻时,您也可以细分数据。点击此类图表会弹出下钻菜单,您可以在其中进一步细分数据。在图 2 中,我们使用操作菜单按订购产品的供应商细分了部分数据。图 2. 使用操作菜单细分我们的数据。 阅读更多 气泡图 一种使用三个变量绘制数据的可视化图表。 气泡图是一种可视化三个不同变量之间相关性的方式。它本质上是每个点都带有权重的散点图。您还可以使用颜色来显示额外的维度。如果用于确定气泡大小的值集包含零或负值,气泡图可能不是一个好的选择。有方法可以解决(例如使用绝对值),但通常人们很难理解例如具有负大小的气泡。气泡图示例 图 1. 气泡图。在图 1 中,气泡图显示了产品平均评分(x 轴)与产品价格(y 轴)之间的相关性。此外,每个点(即每个气泡)的大小对应于订购产品的数量;数量越大,气泡越大。我们可能会期望平均评分、价格和订单数量之间存在某种相关性,但 Metabase 附带的示例数据库是一个随机数据集,因此这里没有任何实际模式。在图 2 中,我们进一步按类别细分了绘制的气泡,每个气泡的颜色对应于产品类别:Gizmos、Gadgets、Doohickeys 和 Widgets。图 2. 按产品类别进一步细分的气泡图。 阅读更多 C CTE SQL 查询中的命名结果集,等同于子查询。CTE 每次主查询运行时都会被评估。 公共表表达式(CTE)是 SQL 查询中的命名结果集,等同于子查询。CTE 每次主查询运行时都会被评估。 阅读更多 卡片 仪表板的一个组件,用于显示数据或文本。 卡片是仪表板的一个组件,用于显示数据或文本。Metabase 仪表板由卡片组成,每张卡片显示一些数据(可视化为表格、图表、地图或数字)或文本(如标题、描述信息或相关链接)。卡片与问题 仪表板上的卡片不仅仅是您已提出的问题的迷你版本。如果您只是将保存的问题添加到仪表板就结束了,您可能会错过卡片所能做的许多事情。只要它们共享一个维度,您就可以在单个卡片中组合多个已保存的问题。您的卡片也不必包含不同的问题。在仪表板上多次包含同一张卡片可能很有用,例如如果您想将一个问题同时可视化为折线图和条形图。编辑仪表板上的卡片 在编辑仪表板时,您可以:在仪表板网格上排列和调整卡片大小。更改卡片的可视化选项,而不影响底层问题。将卡片连接到仪表板筛选器以筛选问题结果。设置卡片的点击行为以更改当有人点击卡片时发生的事情。虽然仪表板上的这些卡片看起来时尚且具有视觉吸引力很好,但更重要的是您能传达人们需要查看的信息,而无需添加过多无关内容。仪表板上卡片示例 图 1 中的仪表板包含用作标题和描述的文本卡片,以及带有数字、趋势、折线图和区域地图的卡片:图 1. 仪表板上包含问题和文本的卡片。卡片和 Metabase API 在 Metabase API 中,`api/card` 路由指的是问题,而不是仪表板上的卡片。您仍然可以使用 API 编辑和获取有关仪表板上卡片的信息(例如使用 `api/dashboard`),但请记住这种区别,并查看 API 文档以获取完整的路由和端点列表。 阅读更多 集合 Metabase 中的一组项目,包括问题、模型、仪表板和其他集合。 在 Metabase 中,集合是一组项目——问题、模型、仪表板和子集合——它们为了某种组织目的而存储在一起。您可以将集合视为文件系统中的文件夹。Metabase 中的根集合名为“我们的分析”,它包含您和您组织中的其他人创建的所有其他集合。您可能会保留一个名为“运营”的集合,其中包含您组织运营团队使用的所有问题、仪表板和模型,以便该部门的人员知道在哪里找到他们工作所需的项目。如果集合中有您的团队最常用到的特定项目,您可以将它们固定到集合页面的顶部以便轻松参考。集合中固定的问题还将呈现其可视化预览。图 1. Metabase 中的一个集合。管理员可以设置集合权限,以确定 Metabase 中哪些组可以查看哪些集合(以及扩展地,其内容)。除了顶层的“我们的分析”集合以及您组织创建的任何集合之外,每个 Metabase 用户都有自己的“个人”集合。这些集合是半私有的,因为管理员用户可以查看每个人个人集合的内容。个人集合是存储您尚未完全完善的问题和仪表板的好地方,您可以在准备好时将其移至公共集合。 阅读更多 列 在表中垂直显示的一系列值,通常属于特定字段。 列是在表中垂直显示的一系列值,通常属于特定字段。在关系数据库表中,列中的每个值都对应一个不同的记录。列中的值共享一个数据类型。也就是说,如果列的数据类型是整数,则该列中的每个值都必须是整数。可能还有其他约束,例如与格式、字符长度或该值是否必填相关。列示例 以下是 Metabase 示例数据库中 Orders 表的图像,其中“创建时间”列已突出显示。“创建时间”列的数据类型是 DateTime,此列中的每个值都对应于单个订单的时间戳。图 1. Orders 表的视图,突出显示了“创建时间”列。列与字段 虽然列和字段在技术上不是同一事物,但通常可以互换使用这些术语。请参阅列与字段。然而,请记住,列并不总是直接对应数据库中的字段。例如,您可能希望在 Metabase 中创建一个包含计算值的自定义列,例如显示每个订单折扣百分比的列。您可以通过告诉 Metabase 计算折扣除以小计并在新列中显示结果值来创建此自定义列。列式存储 尽管许多传统关系数据库以行形式存储数据,通常最适合存储事务数据,但某些数据库(例如针对分析优化的数据仓库)利用列式存储。列式数据库(也称为面向列的数据库)将列的值物理地存储在一起,而不是基于整个行进行索引。这可以显著加快分析查询和聚合函数的速度,因为这些查询将能够从磁盘上的同一位置检索相似数据,而不是在整个数据库中执行大量读取以从单个记录中提取列的值。 阅读更多 组合图 结合了条形和折线的图表。 组合图是结合了条形和折线的图表。 阅读更多 数据整理 将分散存储的数据汇集到一块连续区域以提高性能的过程。 将分散存储的数据汇集到一块连续区域以提高性能的过程。 阅读更多 连接 将多个字符串合并为一个字符串的函数。 Concat(或连接)是一个将多个字符串合并为一个字符串的函数。这个词源于拉丁词根 con- 表示“一起”,caten- 表示“链”。例如,您可能希望将城市(维也纳)与国家(奥地利)连接起来,得到一个单一的位置字符串,如“维也纳,奥地利”。Metabase 的连接表达式在针对您的数据库运行时会转换为 SQL 的 CONCAT 函数,例如:`SELECT CONCAT(City, ", ", Country) AS "Location"` 在 Metabase 和其他 BI 工具中,您可以假定连接仅适用于文本数据类型(通常称为字符串)。如果您想将连接用于其他数据类型,例如数字或日期,则必须首先将它们转换为文本。如果您更喜欢编写 SQL,请注意 JOIN、UNION 和 MERGE 函数听起来可能与 CONCAT 类似,但它们用于组合来自不同表的行和列,而不是来自不同列的文本字符串。 阅读更多 国家代码 标识国家/地区的标准两字母或三字母代码。 国家代码是标识国家/地区的标准两字母或三字母字符串。Metabase 支持 alpha-2 国家代码。国家代码列表 AD 安道尔 AE 阿拉伯联合酋长国 AF 阿富汗 AG 安提瓜和巴布达 AI 安圭拉 AL 阿尔巴尼亚 AM 亚美尼亚 AO 安哥拉 AQ 南极洲 AR 阿根廷 AS 美属萨摩亚 AT 奥地利 AU 澳大利亚 AW 阿鲁巴 AX 奥兰群岛 AZ 阿塞拜疆 BA 波斯尼亚和黑塞哥维那 BB 巴巴多斯 BD 孟加拉国 BE 比利时 BF 布基纳法索 BG 保加利亚 BH 巴林 BI 布隆迪 BJ 贝宁 BL 圣巴泰勒米 BM 百慕大 BN 文莱达鲁萨兰国 BO 玻利维亚(多民族国) BQ 博奈尔、圣尤斯特歇斯和萨巴 BR 巴西 BS 巴哈马 BT 不丹 BV 布韦岛 BW 博茨瓦纳 BY 白俄罗斯 BZ 伯利兹 CA 加拿大 CC 科科斯(基林)群岛 CD 刚果民主共和国 CF 中非共和国 CG 刚果 CH 瑞士 CI 科特迪瓦 CK 库克群岛 CL 智利 CM 喀麦隆 CN 中国 CO 哥伦比亚 CR 哥斯达黎加 CU 古巴 CV 佛得角 CW 库拉索 CX 圣诞岛 CY 塞浦路斯 CZ 捷克 DE 德国 DJ 吉布提 DK 丹麦 DM 多米尼克 DO 多米尼加共和国 DZ 阿尔及利亚 EC 厄瓜多尔 EE 爱沙尼亚 EG 埃及 EH 西撒哈拉 ER 厄立特里亚 ES 西班牙 ET 埃塞俄比亚 FI 芬兰 FJ 斐济 FK 福克兰群岛(马尔维纳斯) FM 密克罗尼西亚(联邦) FO 法罗群岛 FR 法国 GA 加蓬 GB 大不列颠及北爱尔兰联合王国 GD 格林纳达 GE 格鲁吉亚 GF 法属圭亚那 GG 根西岛 GH 加纳 GI 直布罗陀 GL 格陵兰 GM 冈比亚 GN 几内亚 GP 瓜德罗普 GQ 赤道几内亚 GR 希腊 GS 南乔治亚岛和南桑威奇群岛 GT 危地马拉 GU 关岛 GW 几内亚比绍 GY 圭亚那 HK 香港 HM 赫德岛和麦克唐纳群岛 HN 洪都拉斯 HR 克罗地亚 HT 海地 HU 匈牙利 ID 印度尼西亚 IE 爱尔兰 IL 以色列 IM 马恩岛 IN 印度 IO 英属印度洋领地 IQ 伊拉克 IR 伊朗(伊斯兰共和国) IS 冰岛 IT 意大利 JE 泽西岛 JM 牙买加 JO 约旦 JP 日本 KE 肯尼亚 KG 吉尔吉斯斯坦 KH 柬埔寨 KI 基里巴斯 KM 科摩罗 KN 圣基茨和尼维斯 KP 朝鲜(民主人民共和国) KR 韩国 KW 科威特 KY 开曼群岛 KZ 哈萨克斯坦 LA 老挝人民民主共和国 LB 黎巴嫩 LC 圣卢西亚 LI 列支敦士登 LK 斯里兰卡 LR 利比里亚 LS 莱索托 LT 立陶宛 LU 卢森堡 LV 拉脱维亚 LY 利比亚 MA 摩洛哥 MC 摩纳哥 MD 摩尔多瓦共和国 ME 黑山 MF 圣马丁(法属部分) MG 马达加斯加 MH 马绍尔群岛 MK 北马其顿 ML 马里 MM 缅甸 MN 蒙古 MO 澳门 MP 北马里亚纳群岛 MQ 马提尼克 MR 毛里塔尼亚 MS 蒙特塞拉特 MT 马耳他 MU 毛里求斯 MV 马尔代夫 MW 马拉维 MX 墨西哥 MY 马来西亚 MZ 莫桑比克 NA 纳米比亚 NC 新喀里多尼亚 NE 尼日尔 NF 诺福克岛 NG 尼日利亚 NI 尼加拉瓜 NL 荷兰 NO 挪威 NP 尼泊尔 NR 瑙鲁 NU 纽埃 NZ 新西兰 OM 阿曼 PA 巴拿马 PE 秘鲁 PF 法属波利尼西亚 PG 巴布亚新几内亚 PH 菲律宾 PK 巴基斯坦 PL 波兰 PM 圣皮埃尔和密克隆 PN 皮特凯恩 PR 波多黎各 PS 巴勒斯坦国 PT 葡萄牙 PW 帕劳 PY 巴拉圭 QA 卡塔尔 RE 留尼汪 RO 罗马尼亚 RS 塞尔维亚 RU 俄罗斯联邦 RW 卢旺达 SA 沙特阿拉伯 SB 所罗门群岛 SC 塞舌尔 SD 苏丹 SE 瑞典 SG 新加坡 SH 圣赫勒拿、阿森松和特里斯坦-达库尼亚 SI 斯洛文尼亚 SJ 斯瓦尔巴和扬马延 SK 斯洛伐克 SL 塞拉利昂 SM 圣马力诺 SN 塞内加尔 SO 索马里 SR 苏里南 SS 南苏丹 ST 圣多美和普林西比 SV 萨尔瓦多 SX 荷属圣马丁 SY 阿拉伯叙利亚共和国 SZ 斯威士兰 TC 特克斯和凯科斯群岛 TD 乍得 TF 法属南部领地 TG 多哥 TH 泰国 TJ 塔吉克斯坦 TK 托克劳 TL 东帝汶 TM 土库曼斯坦 TN 突尼斯 TO 汤加 TR 土耳其 TT 特立尼达和多巴哥 TV 图瓦卢 TW 中国台湾省 TZ 坦桑尼亚联合共和国 UA 乌克兰 UG 乌干达 UM 美国本土外小岛屿 US 美利坚合众国 UY 乌拉圭 UZ 乌兹别克斯坦 VA 梵蒂冈 VC 圣文森特和格林纳丁斯 VE 委内瑞拉玻利瓦尔共和国 VG 英属维尔京群岛 VI 美属维尔京群岛 VN 越南 VU 瓦努阿图 WF 瓦利斯和富图纳 WS 萨摩亚 YE 也门 YT 马约特 ZA 南非 ZM 赞比亚 ZW 津巴布韦 阅读更多 交叉筛选 交叉筛选是指点击仪表板中的图表或表格以筛选仪表板中的所有其他内容。 交叉筛选是指点击仪表板中的图表或表格以筛选仪表板中的所有其他内容。 阅读更多 自定义列 有时也称为“计算列”。您可以使用自定义表达式在笔记本编辑器中为查询结果添加列。例如,添加一个计算总计和小计之间差额的列。 有时也称为“计算列”。您可以使用自定义表达式为查询结果添加列。例如,添加一个计算总计和小计之间差额的列。 阅读更多 自定义目标 仪表板卡片上的一项设置,用于确定用户点击卡片时会发生什么。 自定义目标是仪表板卡片上的一项设置,用于确定用户点击卡片时会发生什么。您可以设置图表,将用户引导至另一个问题、仪表板或外部 URL。您还可以使用图表中的值对 URL 进行参数化,例如,通过在 URL 字符串中插入 ID。 阅读更多 自定义表达式 Metabase 中的一种公式,它使用函数和数学运算符来处理更复杂的问题,类似于电子表格软件中的公式。 Metabase 中的自定义表达式是一种公式,它使用函数和数学运算符来处理更复杂的问题,类似于电子表格软件中的公式。您可以在通过 Metabase 查询构建器提出的问题中包含自定义表达式。自定义表达式为这些 GUI 问题提供了更大的能力和灵活性,而无需您编写完整的 SQL 查询。您可以编写自定义表达式来创建自定义列,或创建更高级的筛选器和聚合。Metabase 中的自定义表达式示例 以下示例显示了使用 case 函数根据订单小计创建自定义列。图 1. 在笔记本编辑器中编写自定义表达式。图 2 显示了生成的表格,右侧是我们的新自定义列:图 2. 使用自定义表达式创建的“订单大小”列。 阅读更多 D DAG 有向无环图 (DAG) 是一种图,其中通过跟随节点之间的链接不可能回到任何起始节点。 有向无环图 (DAG) 是一种图,其中通过跟随节点之间的链接不可能回到任何起始节点。 阅读更多 仪表板 一种数据可视化工具,可在单个屏幕上收集和整理重要的图表和文本。 仪表板是一种数据可视化工具,可在单个屏幕上收集和整理重要的图表和文本。仪表板可提供对KPI和其他业务指标的高级集中视图,涵盖从整体业务健康状况到特定项目或营销活动成功与否的所有内容。该术语来源于汽车仪表盘,它(就像其商业智能对应物一样)提供有关重要功能的状况更新和警告(只是针对制动液不足之类的事情,而不是您的近期营销活动表现如何)。仪表板与报告 仪表板与报告并不完全相同,尽管您有时会听到人们将仪表板称为报告。区别在于仪表板往往更易于一目了然地阅读和理解,而传统报告则提供对主题更详细的了解。与传统报告不同,仪表板可以在单个屏幕上查看,并且通常包含一些交互式元素。您可能不会打印仪表板来阅读,这对于依赖静态历史数据的传统报告来说更有意义。但是,就像传统报告一样,您可以根据预设的计划发送更新的仪表板,例如通过 Metabase 中的仪表板订阅。Metabase 中的仪表板 在 Metabase 中,仪表板由包含问题或文本的卡片组成。在 Metabase 中创建和编辑仪表板时,您有许多选项,例如:调整卡片排列和大小以适应您想要的仪表板设计。通过设置自定义点击行为并将一个仪表板链接到另一个仪表板来使您的仪表板具有交互性。添加筛选器小组件并将其连接到单个卡片上的特定字段。使用 Markdown 为您的仪表板添加文本或GIF注释。通过链接或将其嵌入到您的网站或应用程序中来共享您的仪表板。仪表板示例 图 1 显示了 Metabase 中一个包含三个问题卡片和三个筛选器小组件的仪表板示例。如果有人在其中一个筛选器小组件中输入客户ID、客户名称或日期,图表将相应调整以反映该添加的筛选器。图 1. 一个包含三个问题卡片和三个筛选器小组件的仪表板。 阅读更多 仪表板订阅 仪表板订阅允许您通过电子邮件或 Slack 定期发送仪表板上问题的结果。 仪表板订阅允许您按计划通过电子邮件或 Slack 发送仪表板上所有问题的结果。 阅读更多 数据和商业智能词汇表术语 {% include glossary-search-bar.html %} {% assign alphabet = "ABCDEFGHIJKLMNOPQRSTVWX" | split: "" %} {% for letter in alphabet %} {{ letter }} {% endfor %} {% assign sorted_terms = site.glossary | sort: 'title' %} {% assign current_first_letter = '' %} {% for entry in sorted_terms %} {% assign first_letter = entry.title | slice: 0 %} {% if current_first_letter != first_letter %} {% assign current_first_letter = first_letter %} {{ first_letter | upcase }} {% endif %} {{ entry.title }} {{ entry.def | markdownify | strip_html }} {{ entry.content | markdownify | strip_html }} 了解更多 {% endfor %} 阅读更多 数据字典 一份描述数据库中表、字段和其他元素并解释其含义和来源的文档。 数据字典是一份文档,描述数据库中的表、字段和其他元素,并解释它们的含义和来源。数据字典是数据库元数据的存储库,存储人们理解和使用该数据所需的管理信息。可以把它们想象成一本普通的词典,但数据字典包含的是构成数据库的对象定义和信息,而不是语言中的每个单词。最新且全面的数据字典有助于确保每个人对特定字段或表的实际含义保持一致的理解。数据字典还可以帮助确保不同部门都一致地使用这些术语。数据字典通常是与它们所描述的数据库一起存储的独立文件或文件集。尽管数据库数据字典的某些方面可能对所有数据库用户都可访问(例如每个人都需要知道的重要描述),但其他部分可能只有数据库管理员才能查看(例如关于数据库物理实现的 technical details)。Metabase 中的数据字典 在 Metabase 中,数据参考部分充当数据字典。数据字典包含什么? 数据字典收集和存储与数据库相关的元数据,通常包括以下信息:表和字段描述、数据类型、完整性约束、命名约定、文件位置。尽管数据字典的具体格式将取决于您的组织和数据集的复杂性,但通常数据字典会格式化为表格或系列表格,其中包含元数据字段,例如字段名称、描述、数据类型、字符长度以及是否允许空值。您可以使用简单的电子表格、在关系型数据库软件中,甚至作为文本文件来创建数据目录。数据字典 vs. 模式 vs. 数据目录 这里与数据库的模式存在一些重叠,但一般来说,模式定义了数据库的结构以及表及其字段如何组合在一起,而数据字典则提供有关该数据的上下文信息。也许您也听说过数据目录,这是另一个类似的概念。一些组织利用数据目录更好地促进其数据的发现和分析;它们类似于数据字典,但增加了一些特性和功能,比传统的基于文档的数据字典更进一步。 阅读更多 数据湖 数据湖是存储结构化和非结构化信息的地方,通常以文件或二进制大对象(blob)的形式。 数据湖是存储结构化和非结构化信息的地方,通常以文件或二进制大对象(blob)的形式。您可以将数据湖视为所有数据的倾倒场,无论其结构、格式或预期用途如何。“湖”的概念很大程度上是营销术语,但这种水生比喻来源于数据湖中的信息以比更严格和分层的数据仓库更“自然”的状态流动。由于它们可以存储不需要遵循特定模式的原始数据,因此数据湖在扩展以存储大量信息(达到 PB 级别)时往往具有成本效益。由于无需在一开始就定义模式,数据湖的设置可能很简单;您可以出于特定用途加载数据,或者只是将其保留以备将来使用,即使您还不确定需要对其运行哪种查询。然而,一旦设置完成,配置实际使数据湖有用的工具可能会变得复杂和昂贵——通常需要数据工程师的专业知识。这些工程师将根据需要设置 ETL,甚至在数据湖的某些部分训练机器学习模型。数据湖依赖于“读取时模式”系统,这意味着数据只有在从数据湖中提取进行查询时才根据模式进行验证,而不是在首次写入时。然而,这意味着从数据湖中提取和使用数据需要更多工作。仅仅因为数据湖提供了更大的灵活性,并不意味着您应该抛弃所有数据治理;进入您数据湖的信息仍应是高质量的,经过清理和注释,以便您的 ETL 或查询引擎(以及因此需要数据的人)可以很好地利用它。何时使用数据湖 如果您需要分析大量的半结构化和/或非结构化信息(例如,如果您是一家物联网公司),那么数据湖可能是一个很好的选择。由于在写入数据时无需强制执行整体模式,因此如果您同时处理许多不同类型的数据源——例如流数据、结构化应用程序数据库、来自物联网设备的数据、社交媒体或网络流量——数据湖也可以是一个有效的解决方案。最终,具有复杂数据需求的组织可能不会完全依赖数据湖或数据仓库(甚至数据湖屋),而是构建能够兼顾两者的独立数据架构,同时考虑组织的整体战略、使用人员的需求以及他们需要执行的查询类型。设置数据湖 假设您要设置数据湖。概括来说,流程将是这样的:选择云存储提供商。有些数据湖服务可以帮助您设置所需的各种层和工具,但其核心,“湖”是您的存储层——您将结构化和非结构化数据保存在一起的地方(例如在 AWS S3 或 Microsoft Azure 中)。识别您的数据源。这些可以是结构化的(如应用程序数据库)、半结构化的(如 XML 或 JSON 文件),或非结构化的(如社交媒体帖子、图像或文本文档)。清理并从这些源摄取数据。在此阶段,您将注释这些数据源(特别是半结构化和非结构化数据源),添加元数据并根据您可能对该数据提出的问题类型进行标记和分类。一旦数据清理完毕,这些带注释的副本就会加载到您的数据湖中,可能以 Parquet 等列式格式存储,这种格式更适合分析查询。根据需要创建 ETL 并查询您的数据湖。由于数据湖的格式混合且通常是非结构化的特性,工程师和数据科学家通常是直接访问数据湖的人员。您的数据分析师等人员将通过使用 Presto 或 SparkSQL 等查询引擎查询数据湖,这些引擎定期在数据湖上运行 ETL,对其进行结构化,以便可以通过 SQL 查询数据。这些查询在数据的清理、注释和列式副本上执行,而不是在原始数据源本身上执行(原始数据和清理后的数据都存储在您的数据湖中)。 阅读更多 数据湖屋 一个结合了数据湖和数据仓库的系统。 数据湖屋是一个结合了数据湖和数据仓库的系统。 阅读更多 数据模型 任何组织和标记信息的模式。 “数据模型”一词用于描述任何组织和标记信息的模式。人们会使用“数据模型”作为一种通用方式来指代模式、派生表(视图)或实体关系图(ERD)等概念。良好的数据模型有助于人们更快地找到信息。例如,商场目录是一种数据模型,它组织了商场内店铺的信息。它按类别或位置对店铺进行分组和标记,并通过在地图上显示它们来解释店铺之间的关系。与独自在商场里闲逛或阅读随机的店铺名称列表相比,这种模型使人们更容易找到去哪里。数据建模示例 在数据建模过程中做出决策时,最好首先弄清楚人们想要寻找什么以及为什么寻找。假设我们想要创建一个数据模型来存储电影信息,以帮助人们寻找新的电影观看。您可以将此数据模型视为一个可以为任何电影填写的模板。该模板应做两件事:表示电影中有助于找到特定电影的部分。例如,人们可能会通过片名、导演、类型或演员来搜索他们想看的电影。描述各部分之间的关系,以便可以轻松地根据一组信息查找另一组信息。例如,模板应确保任何电影标题都至少与一位导演相关联。最简单的数据模型类型是将相关部分组合到一个模板中,并包含一些关于如何填写它的信息。例如,下面的模板可以作为任何电影的数据模型。电影 标题:任何文本(必填)。导演:姓名列表(必填)。类型:任何文本(可选)。演员:姓名列表(可选)。该模型可以通过添加更多与电影相关的部分来扩展,例如发行年份或运行时长。如果现有部分有助于查找信息,我们也可以对其进行扩展。例如,人们可能想通过电影中演员的特定信息(例如他们获得的任何表演奖项)来搜索电影。由于“演员”只记录演员姓名,我们可以将奖项信息拆分到一个新的数据模型中。表演奖项 奖项:表演奖项名称(必填)。获奖年份:年份(必填)。演员:名和姓(可选)。由于演员姓名同时出现在两个模型中(在“演员表”或“演员”下),因此存在连接电影模型和表演奖项模型的关系。当两个模板都填入真实的电影和奖项信息后,人们将能够通过特定奖项查找电影。上述书面模板是思考如何分解数据模型信息的简单方法,但根据用例的不同,您可以遵循许多最佳实践。您可以在下一节中找到常见数据模型格式的示例。常见数据模型 模式 模式是一种概念数据模型。它们被数据库工作人员使用。信息由命名列和数据类型表示。关系由表或 JSON 对象等结构描述。实体关系图 实体关系图是一种可视化数据模型。实体关系图被需要讨论信息管理和架构的人员使用。信息由不同的形状表示,例如矩形或菱形。关系由不同的线条描述,例如箭头或虚线。Metabase 模型 Metabase 模型是一种数据模型,您可以从问题或 SQL 查询中创建和保存。信息由命名列和任何关联的元数据表示。关系由问题或 SQL 查询中使用的逻辑描述。人们实际如何使用“数据模型”一词 您可能会发现不同的团队非正式地使用“数据模型”一词来表示不同的含义:编写 SQL 的人可能会用它来指代派生表或视图。程序员可能会用它来指代模式或实体关系图。Metabase 中的数据模型 如果您是 Metabase 管理员,您将有权访问 Metabase 中的数据模型页面。您在此处所做的更改将影响数据在 Metabase 中所有地方的显示方式。数据模型页面和 Metabase 模型之间有什么区别? 数据模型位于连接到 Metabase 的原始数据仓库表之上。它是一个建模层,您可以使用它来清理您的组织可以看到的表。您可以将其视为一种在数据世界和业务世界之间“翻译”信息的方式,通过分配人类可读的名称并保存片段或指标的常见定义。Metabase 模型位于数据模型之上。任何有权使用底层数据库表的人都可以创建它们。 阅读更多 数据参考 Metabase 的数据参考部分允许您添加和查找有关您的数据库及其表和字段的元数据。 Metabase 的数据参考部分(位于 /reference/databases 或通过点击 Metabase 中的书本图标)允许您添加和查找有关您的数据库及其表和字段的元数据。 阅读更多 数据沙盒 数据沙盒是定义对表(精确到列和行)访问权限的一组边界。您可以将数据沙盒与您的 SSO 设置进行协调。 数据沙盒是定义对表(精确到列和行)访问权限的一组边界。您可以将数据沙盒与您的 SSO 设置进行协调。 阅读更多 数据类型 字段由数据库直接实现分类的方式。 数据类型是字段由数据库直接实现的分类。数据类型告知字段中应该预期哪种类型的值,例如整数或字符串。 阅读更多 数据仓库 用于分析的数据库。 数据仓库是用于分析的数据库。这可能是一个标准的关系型数据库,也可能是一个专门为分析设计、依赖列式存储的数据库。分析部分发生在您组织使用的任何 BI 工具中,但该 BI 工具必须从某个地方提取数据——这个“某个地方”就是您的数据仓库。数据仓库通常存储来自多个来源的信息(例如您的组织使用的不同操作型数据库),这些原始数据源通过数据管道中的 ETL 进入您的数据仓库,这些管道通常由数据工程师构建。与数据湖不同,您存储在数据仓库中的信息是结构化的,因此当您使用 BI 工具查询它时,它已准备好进行分析。这种结构化(或转换)过程是发生在数据仓库内部(ELT)还是外部(ETL),取决于您的管道配置以及您使用的转换工具。 阅读更多 维度 数据的描述性、定性属性,例如名称、类别或 URL 字段。 维度是数据的描述性、定性属性,例如名称、类别或 URL 字段。通常,您会根据维度筛选或分组度量或指标,例如按州(维度)分组收入(指标)。与度量不同,维度无法计算;它们是离散的、分类的。也就是说,您无法确定包含用户生日的字段的平均名称或标准差。维度示例 产品的类别是该产品的维度,并且该产品的平均价格(度量)可以按该维度进行分组或筛选。 阅读更多 钻取 探索预选的数据子集,例如,通过点击直方图中的某个条形图来查看该条形图的原始值。 探索预选的数据子集,例如,通过点击直方图中的某个条形图来查看该条形图的原始值。 阅读更多 E 实体关系图 实体关系图(ERD)是一种图形表示,显示数据库中的表如何相互连接。 实体关系图(ERD)是一种图形表示,显示数据库中的表如何相互连接。实体关系图以高级视图显示数据库的结构(或模式)。实体关系图是设计新数据模型或识别现有模式中问题的有用工具。实体关系图基本上就是通过线条(它们之间的关系)连接起来的盒子(您的实体或表)。您的数据库软件可能具有一些内置功能来创建实体关系图,但您也可以使用任何您最喜欢的设计软件,或者采用模拟方式在纸上绘制您的实体关系图。如何做并不那么重要;真正重要的是确保您的图表准确且逻辑清晰,这样您就可以为您的特定用例设计最有效的数据库。实体关系图示例 以下是一个显示 Metabase 示例数据库的实体关系图示例:图 1. Metabase 示例数据库的简单实体关系图。Orders、Products、People 和 Reviews 这四个表是我们的实体,连接线显示了它们之间的三个一对多关系。实体关系图设计和符号 绘制实体关系图时,每个框应包含该表的名称、字段和关键信息(主键和外键)等信息。您会注意到,在上面的示例中,每个表的关键信息在字段名称旁边用 (PK) 和 (FK) 表示。每个实体之间的线条类型说明了每个表与另一个表之间的关系类型。不同的组织和行业使用不同的实体关系图符号约定,但最常见的一种是“乌鸦脚”符号,之所以得名,是因为三叉符号(用于表示“多对多”关系)有点像鸟的脚。图 2 显示了乌鸦脚符号中常用的符号及其对应的关系类型:图 2. 乌鸦脚符号中用于表示不同类型表关系的线条。 阅读更多 ETL 提取、转换、加载:ETL 是数据处理系统中常见的操作,它从源读取数据,对其进行整理,然后存储到另一个系统中。 提取、转换、加载:ETL 是数据处理系统中常见的操作,它从源读取数据,对其进行整理,然后存储到另一个系统中。例如,ETL 系统可能会从 Web 服务器日志和客户数据库中读取数据,以填充用户会话表。 阅读更多 嵌入式分析 使用第三方软件在您的应用程序中包含客户可以查询的图表和仪表板。 嵌入式分析是指在您的应用程序中使用第三方软件,以允许您的用户查询其数据。嵌入式分析可以指在您的应用程序中简单插入静态图表(通常通过 iframe),但嵌入式分析通常指一种更具交互性的体验,用户可以查看和创建图表、表格和仪表板,并通常可以自行探索其数据。嵌入式分析不仅仅是在您的应用程序中使用图表库;分析软件应该能够与 SSO 协作,管理组和权限,甚至进行数据建模,所有这些都使得将分析集成到您的产品中变得更加容易。提供嵌入式分析的软件通常允许您对图表和仪表板进行“白标”处理,使它们看起来像是您应用程序的一部分。组织通常会使用第三方工具(如 Metabase)来嵌入分析功能,而不是自行构建分析功能,因为 1) 通常成本更低(无论是短期还是长期),而且 2) 您可以提供比自行构建解决方案更好的用户体验。分析功能很快就会变得非常复杂,大多数人宁愿将资源投入到他们的核心业务中,而不是尝试自行开发内部分析功能。嵌入式分析示例 观看三个不同网站的演示,每个网站都使用了 Metabase 作为底层嵌入式分析工具。(您可以通过右上角的导航在网站之间切换。)metaba.se/sdk-demo。 阅读更多 嵌入 将一个应用程序的某些功能置于另一个应用程序内。Metabase 使用 iframe 嵌入问题、仪表板,或(在某些计划中)整个 Metabase 应用程序。 嵌入是将一个应用程序的某些功能置于另一个应用程序内的过程。在分析领域,这通常意味着将数据可视化集成到父应用程序中,允许人们在其应用程序的上下文中查看图表。嵌入还可以为父应用程序节省时间和资源,使团队能够利用现有分析工具,而不是从头开始自行构建所有内容。尽管这不是唯一的嵌入方式,但在 Metabase 中嵌入涉及使用 iframe(内联框架)将问题、仪表板或(在某些计划中)完整的 Metabase 应用程序放置到另一个应用程序中。嵌入 Metabase 图表和仪表板 嵌入不仅仅是将图表的静态图像放入您的网站或应用程序中。相反,该 iframe 在您的主浏览器或应用程序中创建一个嵌套浏览器,指向其自己的独立 URL。这样,嵌入的 Metabase 图表或仪表板会保持最新。当您查看嵌入的图表时,您仍然看到的是 Metabase 图表本身,只是嵌套在父应用程序中。根据安全配置,您的单个嵌入式图表和仪表板可以是公共嵌入或安全嵌入。您还可以配置或锁定参数以影响人们在这些图表上看到的内容,如图 1 所示:图 1. 在发布用于嵌入的仪表板之前,使参数可编辑并启用深色模式。嵌入完整的 Metabase 应用程序 交互式嵌入仅适用于 Pro 和企业版计划(包括自托管和 Metabase Cloud)。在某些计划中,您可以在应用程序中嵌入完整的 Metabase 体验。交互式嵌入对于多租户分析特别有用,例如为您的客户提供他们可以查看和交互的特定报告,同时始终保留在您的应用程序中。 阅读更多 实体键 实体键(有时也称为主键)是唯一标识数据库表中行的值。 实体键(有时也称为主键)是唯一标识数据库表中行的值。 阅读更多 F 字段 字段(有时也称为列)是数据库表的属性。 字段是数据库表中记录的属性。您可以将字段视为列的“标题”,或值容器上的标签。Metabase 中的字段还包含有关该字段所含值的元数据(请参阅字段属性)。字段示例 “小计”是 Metabase 附带的示例数据库中 Orders 表中的一个字段。图 1. Metabase 附带的示例数据库中 Orders 表中的字段。表中的字段定义了每条记录在该表中可以拥有的值。字段属性 在 Metabase 中,字段有四个属性:字段名称、字段描述、数据类型(如整数或文本)、字段类型(如收入或外键)。在图 1 中,“小计”字段的字段类型为“收入”,数据类型为“浮点数”,并附有说明:“订单的原始税前成本。请注意,将来这可能因促销、积分等原因而与产品价格不同。”列与字段 人们通常互换使用“列”和“字段”这两个术语。它们在技术上并非同一事物,但通常无关紧要。请参阅列与字段。 阅读更多 字段筛选器 字段筛选器是您可以在 SQL 查询中使用的特殊变量,可让您创建“智能”筛选器小组件。 字段筛选器是您可以在 SQL 查询中使用的特殊变量,可让您创建“智能”筛选器小组件。您可以将用 SQL 构建的图表连接到仪表板筛选器。如果您使用 SQL 编写查询,则绝对应该学习这些功能如何工作,因为您可以做诸如在筛选器小组件中创建预填充下拉菜单之类的事情。 阅读更多 字段公式 驱动自定义表达式的方程式,就像您在电子表格单元格中输入的公式一样。 字段公式是驱动自定义表达式的方程式,就像您在电子表格单元格中输入的公式一样。例如,= [小计] - [折扣]。 阅读更多 字段类型 表中字段(或列)的含义。 字段类型,也称为语义类型,是表中字段(或列)的含义。字段类型决定了 Metabase 如何显示该字段。例如,列的数据类型可能是“文本”,但其字段类型可以是“URL”。Metabase 随后会将列值显示为链接。”当您创建或编辑模型时,您可以选择列的字段类型。管理员可以在管理面板的“数据模型”页面上全局更改字段类型。 阅读更多 筛选器 筛选器是一种谓词表达式,根据某些既定条件限制查询结果。 筛选器是一种谓词表达式,根据某些既定条件限制查询结果。例如,您可能希望限制 Orders 表中的记录,以便只看到 Total 字段值大于 100 的订单。我们可以使用谓词表达式 Total > 100 来筛选订单。对于每条记录,查询都会评估该表达式是解析为 true 还是 false,并相应地缩小结果范围。因此,在这种情况下,如果记录的总值大于 100,则该记录将包含在结果中。在 SQL 中,查询使用 WHERE 子句进行筛选,例如 WHERE Total > 100。您还可以使用 HAVING 子句在 SQL 中筛选聚合,例如 HAVING AVG(rating) > 3.5。Metabase 中的筛选器 筛选您问题的结果。为您的仪表板添加筛选器。设置交叉筛选,以便当有人点击卡片时仪表板筛选器会更新。链接仪表板上的筛选器,根据另一个筛选器的值限制结果。在原生 SQL 查询中配置智能字段筛选器,这些筛选器根据字段类型和列数据知道要呈现哪些筛选选项。创建充当仪表板上搜索功能的筛选器小组件,例如用于查找工具。Metabase 中的筛选器示例 图 1 显示了 Metabase 示例数据库中的 Products 表,其中添加了一个筛选器,将结果限制为仅包含 Title 字段中包含“Hat”一词的产品:图 1. Metabase 中添加了一个筛选器的问题。 阅读更多 筛选器小组件 仪表板或 SQL 查询中的 UI 元素,您可以在其中输入值或从菜单中选择值以筛选结果。 筛选器小组件是仪表板或 SQL 查询中的 UI 元素,您可以在其中输入值或从菜单中选择值以筛选结果,例如选择 CA 将结果限制为加利福尼亚州。 阅读更多 外键 外键是一个数据库表中与另一个表的实体键对应的 ID 字段。 外键是一个数据库表中与另一个表的实体键(又称主键)对应的 ID 字段,用于建立两个表之间的关系。 阅读更多 全外连接 一种连接,无论键是否匹配,都保留两个表中的所有行。 全外连接是一种连接,无论键是否匹配,都保留两个表中的所有行。如果在一个表中没有在另一个表中找到匹配项,则该表中的列将填充 NULL。 阅读更多 G 图形界面问题 使用 Metabase 的图形查询构建器构建的查询。 图形用户界面(GUI)问题是使用 Metabase 的图形查询构建器构建的问题(与使用原生查询编辑器创建的问题相对)。 阅读更多 GeoJSON 一种流行的地图表示格式。 GeoJSON 是一种基于 JavaScript 对象表示法 (JSON) 构建的开放标准格式,用于编码和交换地理空间数据。由于其简单性、可读性以及与 Web 技术的兼容性,它被广泛用于地理信息系统 (GIS) 和 Web 制图。GeoJSON 表示地理特征,例如点、线、多边形及其多部分对应物(例如,多面体)。每个要素由几何对象(空间数据)和属性(非空间元数据)组成,使其非常适合存储位置和描述性信息。GeoJSON 使用 WGS 84 坐标系,坐标以十进制度表示。 阅读更多 目标线 作为标记添加到图表中的一条常量线,显示值必须达到多高(或多低)才能被视为值得注意。 目标线是作为标记添加到图表中的一条常量线,显示值必须达到多高(或多低)才能被视为值得注意。 阅读更多 网格地图 一种地图,其中值以规则网格的形式图形叠加,例如,显示值的 10 公里 x 10 公里方格着色。 网格地图是一种地图,其中值以规则网格的形式图形叠加,例如,显示值的 10 公里 x 10 公里方格着色。 阅读更多 H 直方图 一种图表,使用垂直条形图显示连续数据,每个条形图代表一个离散的、等大小的范围。 直方图是一种图表,使用垂直条形图显示连续数据,每个条形图代表一个离散的、等大小的范围。这些范围称为“分箱”。条形图用于可视化分类信息(如产品类别),而直方图则沿一个连续的范围显示信息,并将其分成不同的分箱范围。如果您的数据是数值型的——例如价格或数量——请考虑选择直方图。直方图示例 您可以使用直方图来可视化按小计细分的订单计数,如下所示:图 1. 显示订单小计分布的直方图。直方图只会在每个分箱之间显示一小条空白,以表明这些条形图代表连续值范围内的分箱。 阅读更多 水平扩展 向系统添加额外组件以提高性能,例如,添加更多服务器。 水平扩展是指向系统添加额外组件以提高性能,例如,添加更多服务器。 阅读更多 I 内连接 一种连接,只保留输入表中键匹配的行。 内连接是一种连接,只保留输入表中键匹配的行。 阅读更多 J JSON 一种通过使用 JavaScript 语法约定将基本值组合到数组和键/值结构中来表示数据的方式。 JavaScript 对象表示法(JSON)是一种通过使用 JavaScript 语法约定将基本值组合到数组和键/值结构中来表示数据的方式。 阅读更多 JWT 一种在 Web 服务之间共享加密认证凭据的标准。 JSON Web Token (JWT) 是一种在 Web 服务之间共享加密认证凭据的标准。 阅读更多 连接 关系型数据库中两个表的结果组合。 连接是关系型数据库中两个表的结果组合。尽管“连接”这个词听起来像是您在合并表本身,但连接实际上是从两个(或更多)不同的表中取出行,并返回一组新的行,这些行组合了这些表中的列,使用实体键和外键来确定哪些行是相关的。连接类型 SQL 连接有四种类型:左外连接:选择表 A 中的所有记录,以及表 B 中满足连接条件的记录(如果有)。右外连接:选择表 B 中的所有记录,以及表 A 中满足连接条件的记录(如果有)。内连接:只选择表 A 和表 B 中满足连接条件的记录。全外连接:选择两个表中的所有记录,无论是否满足连接条件。Metabase 中的连接示例 Metabase 在查询构建器中提出的问题默认为左外连接,但原生 SQL 查询默认为内连接(也就是说,如果您在查询中只使用 JOIN 而不指定连接类型)。假设我们想从 Metabase 示例数据库中的 People 和 Orders 表返回结果,例如一个包含订单 ID、下单人姓名及其用户 ID 的表。查询构建器连接 图 1 显示了 Metabase 的 Notebook 编辑器中此连接的外观。我们还需要选择哪些列是可见的,这样就不会显示两个表中的所有列。{% include image_and_caption.html url=”/glossary/images/join/join-notebook-editor.png” description=”图 1. 查询构建器中的连接。” %} 原生 SQL 查询连接 如果我们用 SQL 编写相同的查询,它可能看起来像这样:SELECT orders.id AS "Order ID", people.name AS "Name", people.id AS "User ID" FROM people JOIN orders ON people.id = orders.user_ID 在这里,我们确定了连接发生的位置(在这种情况下,在 People → ID 和 Orders → User_ID 处连接,它们分别是实体键和外键)。 阅读更多 K KPI 显示个人或公司目标进展的指标。 关键绩效指标(KPI)是显示个人或公司目标进展的指标。 阅读更多 L LDAP 一种用于访问目录信息服务的协议,通常用作身份验证的单一事实来源。 轻量级目录访问协议(LDAP)是一种用于访问目录信息服务的协议,通常用作身份验证的单一事实来源。 阅读更多 左外连接 一种连接,无论第一个(左侧)表中的行是否与第二个(右侧)表中的任何行匹配,都保留该表中的所有行。 左外连接是一种连接,无论第一个(左侧)表中的行是否与第二个(右侧)表中的任何行匹配,都保留该表中的所有行。如果第二个表中没有匹配项,则该表中的列将填充 NULL。 阅读更多 折线图 一种通过线条连接离散值以显示变化和趋势的可视化类型。 折线图是一种可视化类型,通过线条连接离散值以显示变化和趋势。折线图对于跟踪某个序列(通常但不总是时间)上的定量数据非常有用,该序列称为时间序列。您通常会将度量或指标沿 y 轴绘制,而您的序列沿 x 轴绘制,例如订单计数(y 轴)随时间(x 轴)的变化。折线图与条形图一样,是可视化数据变化和根据趋势预测未来数据的首选图表。Metabase 中的折线图示例 图 1 显示了一个折线图,绘制了示例数据库 Reviews 表中随时间变化的评论数量,按月细分:{% include image_and_caption.html url=”/glossary/images/line-chart/line-chart-example.png” description=”图 1. 显示评论数量随时间变化的折线图。” %} 此示例还包括一条趋势线,显示图表上点的总体方向。在自定义折线图时,您有很多选择,无论是想将数据显示为面积图,调整折线图轴的刻度,甚至在一个图中跟踪多个系列。 阅读更多 线性轴 图表中根据标记值进行间隔的轴。 线性轴是图表中根据标记值进行间隔的轴。 阅读更多 联动筛选器 一种筛选器小组件,仅根据另一个筛选器的值显示值的子集。 联动筛选器是一种筛选器小组件,仅根据另一个筛选器的值显示值的子集。例如,城市筛选器可以与国家/地区筛选器联动,以便前者只显示后者中的城市。 阅读更多 负载均衡器 一种硬件或软件,将流量均匀分配到可用的系统组件,例如,向 Web 服务器发送查询以确保它们都负载均衡。 一种硬件或软件,将流量均匀分配到可用的系统组件,例如,向 Web 服务器发送查询以确保它们都负载均衡。 阅读更多 M 度量 数据的数值属性,可以按一个或多个维度进行分解。 度量是数据的数值属性,可以按一个或多个维度进行分解。它们是数据库中包含可计算或聚合的数值的字段。度量是定量的;您可以在它们上面执行计算,如求和、平均值或标准差。度量示例 如果我们的数据库中有一个存储产品信息的表,那么包含每个产品价格的字段就是一个度量。度量 vs. 指标 您会看到“指标”和“度量”这两个术语互换使用,它们是相当相似的概念,都指代数据中一部分(或从中提取的)数值。然而,有一个重要的区别:度量是原始、未聚合的数据,而指标是聚合(或汇总)数据。例如,虽然像“折扣”这样的字段是一个度量,但该“折扣”字段的标准差将是一个指标。有些人还会使用“指标”来指代与绩效目标特别相关的度量计算,例如 CRR(客户流失率)或 NRR(净收入留存率)。按照这个定义,一个指标基本上就是一个 KPI(关键绩效指标),取决于是否有人将该指标指定为“关键”。指标示例 如果我们想确定 Metabase 示例数据库中订单小计的平均值,我们可以通过汇总来完成,如图 1 所示:{% include image_and_caption.html url=”/glossary/images/metric/example-metric-summarization.png” description=”图 1. 按小计平均值汇总 Orders 表,这是一个指标。” %} 在这种情况下,小计是一个度量,但平均小计是我们的指标。Metabase 中的指标 在 Metabase 中,大写 M 的“Metric”是基于一个表,带有或不带筛选器的已保存聚合。如果您和您的团队需要定期引用和使用某些聚合(例如收入),您可能希望在 Metabase 中创建一个指标,这样您就可以在提问时访问它,而无需每次都自己重新构建该聚合。 阅读更多 元数据 描述数据的信息,以便更轻松地查找、操作和使用这些数据。 元数据是描述数据的信息,以便更轻松地查找、操作和使用这些数据。元数据示例 想象一下您计算机上的一个文件,比如数字图像或文本文档。除了许多其他属性外,该文件还具有名称、文件类型、扩展名、大小以及记录创建、上次打开和上次修改时间的时间戳。这些都是元数据——这些属性本身都不是文件,但它们确实告诉您有关文件的重要信息。理解并跟踪这些元数据可以告诉您和您的计算机该文件应如何排序和处理,例如指示您的计算机在打开该文件时使用什么软件。元数据存在于分析领域之外,并且几乎随处可见。它在各种行业中都很重要,从摄影到图书馆再到广播电视,因为任何处理或生成数据的组织都需要能够找到并组织数据。元数据有时是人类可读的(例如书名或数据库中的字段名称),但也可以是机器可读的,例如 XML 或 JSON 文件。关系型数据库和数据仓库中的元数据 在关系型数据库中,元数据包括构成该数据库模式的所有信息,例如:表名、字段名、实体键、外键、数据类型、视图、完整性约束。然而,数据库元数据不仅仅是其模式。用户信息、业务定义、表和字段描述、数据库大小以及存储信息也都是重要的元数据。根据数据库的配置方式,您可能会将一些元数据存储在数据库本身中(例如表和字段名称),或者存储在包含数据库所有元数据的单独文件或文件集中。这被称为数据字典。在数据仓库中,元数据就像索引或目录,定义了存储在该数据仓库中的所有对象,以及有关操作数据的各种 ETL 作业的信息,以便需要数据的人可以使用它。关于 ETL 的元数据可能包括作业的名称、目的、运行时间和频率、作业使用的数据以及数据最终存储在哪里。如果该作业正确地标注了大量有用的元数据,那么您或同事就更容易理解该作业具体做什么以及为什么。在 Metabase 中使用元数据 元数据在 Metabase 中扮演着重要角色!例如,指定列的字段类型(本身就是一种元数据形式)可以帮助 Metabase 了解该字段的实际含义,从而 Metabase 可以知道如何格式化该字段或向您显示哪种可视化。模型也利用元数据。在创建模型时用描述注释列可以极大地帮助人们更好地理解您的数据。图 1 显示了当您将鼠标悬停在该模型中的列上时,这些描述如何显示:{% include image_and_caption.html url=”/glossary/images/metadata/hover-description.png” description=”图 1. 在数据参考部分查看 Products 表的元数据。” %} 最后,您始终可以在 Metabase 数据浏览器的 数据参考 部分查看表元数据。图 2 显示了示例数据库 Products 表的外观。如您所见,此视图提供了有用的信息,如列名、描述、字段类型和数据类型:{% include image_and_caption.html url=”/glossary/images/metadata/metadata-data-reference.png” description=”图 2. 在数据参考部分查看 Products 表的元数据。” %} 阅读更多 指标 指标是对度量进行计算的结果。在 Metabase 中,大写 M 的“Metric”是指基于一个表,带有或不带筛选器的已保存聚合。 指标是对度量进行计算的结果。指标是数据的定量属性,经过一些汇总处理。指标 vs. 度量 您会看到“指标”和“度量”这两个术语互换使用,它们是相当相似的概念,都指代数据中一部分(或从中提取的)数值。然而,有一个重要的区别:度量是原始、未聚合的数据,而指标是聚合(或汇总)数据。例如,虽然像“折扣”这样的字段是一个度量,但该“折扣”字段的标准差将是一个指标。有些人还会使用“指标”来指代与绩效目标特别相关的度量计算,例如 CRR(客户流失率)或 NRR(净收入留存率)。按照这个定义,一个指标基本上就是一个 KPI(关键绩效指标),取决于是否有人将该指标指定为“关键”。指标示例 如果我们想确定 Metabase 示例数据库中订单小计的平均值,我们可以通过汇总来完成,如图 1 所示:{% include image_and_caption.html url=”/glossary/images/metric/example-metric-summarization.png” description=”图 1. 按小计平均值汇总 Orders 表,这是一个指标。” %} 在这种情况下,小计是一个度量,但平均小计是我们的指标。Metabase 中的指标 在 Metabase 中,大写 M 的“Metric”是基于一个表,带有或不带筛选器的已保存聚合。如果您和您的团队需要定期引用和使用某些聚合(例如收入),您可能希望在 Metabase 中创建一个指标,这样您就可以在提问时访问它,而无需每次都自己重新构建该聚合。 阅读更多 模型 Metabase 中的一个基本构建块,您可以将其用作新问题的起点。 模型是 Metabase 中的一个基本构建块,您可以将其用作新问题的起点。 阅读更多 多租户 一种软件架构,其中应用程序的单个实例或部署为多个不同的客户提供服务。 多租户是一种软件架构,其中应用程序的单个实例或部署为多个不同的客户提供服务。 阅读更多 N 原生查询 以文本形式用数据库查询语言(通常是 SQL)编写的查询。 原生查询是以文本形式用数据库查询语言(通常是 SQL)编写的查询。 阅读更多 原生查询编辑器 Metabase 中用于以文本形式编写查询的编辑器。它包括一个带有三个选项卡的侧边栏:数据参考、SQL 变量和代码片段。 原生查询编辑器是 Metabase 中用于以文本形式编写查询的编辑器。它包括一个带有三个选项卡的侧边栏:数据参考、SQL 变量和代码片段。 阅读更多 规范化 在关系型数据库中构造信息以减少冗余的过程。 数据规范化是在关系型数据库中构造信息以减少冗余的过程。规范化数据可确保数据库中的表尽可能高效地运行,消除歧义,使每个表都服务于单一目的。从非规范化数据库迁移到规范化数据库时,您可能需要将现有表拆分以创建额外的、更小的表。这些新表将具有更窄的焦点,并通过实体键和外键链接到其他表。规范化还带来了额外的好处,即减少您的整体数据库大小并简化数据库维护,因为您不再在多个地方存储相同的信息。数据规范化示例 规范化过程根据相互建立的规则进行,这些规则称为范式。第一范式(1NF)规定字段不应在单个单元格中存储多个值,并且表中每个字段都应该是唯一的。这是一个示例:非规范化表 Product_ID 产品名称 Product_color1 产品颜色2 P001 针织开衫 粉色 酒红色 P002 喇叭牛仔裤 海军蓝 P003 亚麻背心 驼色 米白色 P004 跑鞋 橙色 您会注意到我们有两个包含相似信息的字段,关于产品颜色。为了使此表符合 1NF,我们需要将此表拆分为两个可以连接在一起的独立表。规范化产品名称表 Product_ID 产品名称 P001 针织西装外套 P002 喇叭牛仔裤 P003 亚麻背心 P004 跑鞋 规范化产品颜色表 Product_ID 产品颜色 P001 粉色 P001 酒红色 P002 海军蓝 P003 驼色 P003 米白色 P004 橙色 查看我们的学习文章,了解 2NF 和 3NF 的示例。虽然存在这三种范式之外的范式,但它们的使用在很大程度上是理论性的,前三种对于大多数实际数据库需求来说应该足够了。 阅读更多 笔记本编辑器 Metabase 中用于提问的图形用户界面,您可以在其中筛选、汇总、连接表并创建自定义列。 笔记本编辑器是 Metabase 中用于提问的图形用户界面。有关更多信息,请参阅查询构建器。 阅读更多 O OLAP 涉及少量大型操作的处理,例如创建季度报告。 在线分析处理(OLAP)是涉及少量大型操作的处理,例如创建季度报告。 阅读更多 OLTP 涉及大量小型操作的处理,例如记录网站上的用户活动。 在线事务处理(OLTP)是涉及大量小型操作的处理,例如记录网站上的用户活动。 阅读更多 序数轴 图表中根据值所属的离散组显示值的轴。 序数轴是图表中根据值所属的离散组显示值的轴。 阅读更多 我们的分析 Metabase 中的根集合。 我们的分析是 Metabase 中的根集合。 阅读更多 P 参数 指定查询输入的特殊变量类型。 参数是一种特殊类型的变量,用于指定查询的输入。设置参数允许最终用户输入一个值(例如在仪表板或报告中),以更改该查询返回的数据,通常是根据度量或维度进行筛选。参数将该值传递给正在运行的查询,查询结果将取决于该用户输入的值。参数 vs. 变量 vs. 实参 您可能会看到“参数”与“变量”或“实参”互换使用,因此有必要在这里指出一些区别。参数是一种变量;它只是将某个特定输入值传递给正在运行的程序或查询的一种变量。然而,并非所有变量都是参数——您也可能拥有在程序或查询内部设置的变量,并且无法由另一方修改。实参指的是当您的程序或查询运行时传递的值本身。例如,如果您将参数设置为 {% raw %}{{productID}}{% endraw %},并输入值 34,那么您的实参就是 34。参数定义了将存在一个输入值,但输入值本身是实参。因此,是的,从技术上讲这些术语都不同,但只要您通常指的是一个可以传入值以筛选结果的位置或容器,那么互换使用它们是可以的。Metabase 中的参数 在 Metabase 中,您可以使用筛选器小组件或通过 URL 设置参数。参数在 Metabase 中以几种不同的方式发挥作用:SQL 模板 通过在 Metabase 的 SQL 查询中添加参数,您可以创建 SQL 模板,为这些查询添加筛选器小组件,从而允许人们在运行查询时轻松更改该参数的值。如果我们想在查询上创建一个 SQL 模板,该查询使用示例数据库的 People 表计算每个州的客户数量,我们将使用:SELECT count(*) FROM people WHERE state = {%raw%}{{State}}{%endraw%} 通过将 {%raw%}{{State}}{%endraw%} 封装在双花括号中,我们创建了一个参数,该参数为此问题添加了一个筛选器小组件,允许人们输入他们想要的州,而无需更改查询本身的文本,如图 1 所示:{% include image_and_caption.html url=”/glossary/images/parameter/parameter-sql-template.png” description=”图 1. 创建一个 SQL 模板,为查询添加筛选器小组件。” %} 仪表板筛选器 仪表板筛选器允许您设置应用于仪表板的参数。例如,您可以创建一个仪表板筛选器,允许人们输入一个州值,并将该筛选器链接到仪表板上问题或卡片中的“州”列。然后,当人们输入他们想要的值(例如图 2 中所示的北卡罗来纳州)时,他们将看到这些卡片相应地发生变化。{% include image_and_caption.html url=”/glossary/images/parameter/parameter-dashboard-filter.png” description=”图 2. 一个在“州”列上应用了筛选器的仪表板。” %} 当您在仪表板筛选器中输入值时,您会注意到 URL 会随之改变,其中包含了该值。自定义目的地 您还可以将参数插入 URL 中,以决定当人们点击仪表板中的图表时会发生什么。例如,您可以使用卡片结果中的值来构建一个 URL,该 URL 将人们重定向到另一个仪表板或外部站点,并将该 ID 作为 URL 的一部分。也许您有一个仪表板,其中包含跟踪库存中不同产品销售情况的问题,以及一个仪表板筛选器,允许人们输入他们想要查看的产品。您可以通过将该产品的 ID 传递到自定义目的地,用该 ID 值对 URL 进行参数化,并将人们发送到您网站上该产品的页面,从而更进一步。当您访问该站点时,其 URL 可能看起来像这样:https://www.your-website.com/products/id?productID=34 在这种情况下,URL 中的 productID=34 就是您的参数。嵌入 在将 Metabase 问题和仪表板嵌入到您的应用程序中时,您可以设置参数来定制不同用户在查看这些嵌入内容时所看到的内容。 阅读更多 个人集合 您在 Metabase 中的半私人集合,只有您和管理员可见。您的个人集合是起草问题和仪表板的好地方。 个人集合是您在 Metabase 中的半私人集合,只有您和管理员可见。您的个人集合是起草问题和仪表板的好地方。 阅读更多 标记地图 一种地图,为每个兴趣点显示一个离散标记。 标记地图为每个兴趣点显示一个离散标记。 阅读更多 枢轴表 一种数据可视化,它汇总表的行和列,并允许您旋转(枢轴)列。 枢轴表是一种数据可视化工具,它汇总表的行和列,并允许您旋转(“枢轴”)列以不同方式查看这些汇总。汇总行通常是小计或总计,但也可以是其他指标,如平均值。这种将列旋转 90 度的能力,使得该列中的值成为枢轴表的列本身,在尝试分析跨多个维度(如时间、位置和类别)的数据时非常有用。枢轴表示例 如果我们想查看订单在一周中的表现,并按不同产品类别细分,枢轴表是一个很好的选择,因为它将为我们提供大量数值数据的易于理解的概览。该枢轴表可能看起来像这样:{% include image_and_caption.html url=”/glossary/images/pivot-table/pivot-table.png” description=”图 2. 一个枢轴表,其中包含有关四个产品类别在一周中不同日期的表现信息。” %} 有包含每周每天总计的汇总行很好,但仍然不容易比较不同日期的类别销售额。然而,如果我们将“创建时间”列枢轴化,使其值成为列标题,我们的结果将如下所示:{% include image_and_caption.html url=”/glossary/images/pivot-table/pivot-table-pivoted.png” description=”图 2. 我们的同一个枢轴表,将“创建时间”列枢轴化,使我们能更好地查看表中的所有数据。” %} 现在我们可以快速比较不同日期和产品类别的订单,同时仍然看到两者的总计,而无需滚动浏览长长的行列表。 阅读更多 谓词 评估结果为真或假的表达式,例如 quantity > 0。真值和假值被称为布尔值。 在 SQL 中,谓词是一种条件表达式,其评估结果为真或假,例如 `quantity > 0`。在您的查询中包含谓词可以根据该表达式返回真或假来过滤掉不需要的行,从而缩小您的结果范围。谓词表达式都包含某种比较元素,例如 `=`、`>` 或 `<`。评估后,生成的真值和假值称为布尔值,尽管并非所有数据库都支持布尔值作为数据类型。并非所有数据库都支持相同的谓词列表,尤其是超出数学比较(如 `BETWEEN` 或 `ISNULL`)的谓词,因此请查阅您的数据库文档,以确定哪些谓词适用于您的用例。空值:不是零,只是不存在虽然谓词通常评估为两个布尔值之一(如真或假),但如果被评估的字段完全没有值,则称为空值。这并不意味着其值为零,而是该字段中没有值。如果您的谓词表达式要求 `quantity > 0`,那么没有值的行将不会返回真或假,而是返回空值。谓词示例谓词的一个示例是在简单 SQL `SELECT` 查询中紧跟 `WHERE` 的条件,如下所示: `SELECT * from orders WHERE subtotal > 35` 在此示例中,我们的谓词表达式是 `subtotal > 35`。“订单”表中的每一行在“小计”字段中都有一个值,对于每一行,此谓词都会评估小计是否大于 35 美元,是真还是假。然后,我们的查询只返回小计大于 35 美元的行。在 Metabase 的查询构建器中,您在过滤数据时会使用谓词。您也可以使用自定义表达式在笔记本编辑器中编写自己的谓词。在下面的问题中,我们正在过滤示例数据库中的“人员”表,只显示“州”字段等于蒙大拿州或 `state = MT` 的记录: {% include image_and_caption.html url=”/glossary/images/predicate/predicate-filter.png” description=”图 1. Metabase 查询构建器中的谓词表达式(或过滤器),仅返回州字段等于蒙大拿州 (MT) 的记录。” %} 阅读更多 主键 一个唯一值,用于标识数据库表中的行。 主键是用于标识数据库表中行的唯一值。 阅读更多 生产数据库 一个用于存储 Metabase 管理的信息的数据库(与存储 Metabase 自身管理数据的应用程序数据库相对)。 生产数据库存储 Metabase 管理的信息(与存储 Metabase 自身管理数据的应用程序数据库相对)。 阅读更多 公共嵌入 将一个公开可见的问题的 iframe 嵌入到另一个网页中。 阅读更多 脉冲 (Pulse) 脉冲 (Pulse) 现已弃用,取而代之的是仪表板订阅功能。脉冲是根据特定时间表运行的问题,并通过电子邮件或 Slack 发送出去。 脉冲 (Pulse) 现已弃用,取而代之的是仪表板订阅功能。脉冲是根据特定时间表运行的问题,并通过电子邮件或 Slack 发送出去。 阅读更多 Q 查询构建器 了解查询构建器,它是 Metabase 中提问的图形界面。 在 Metabase 中,查询构建器是提问的图形界面。如果您不是 SQL 用户,或者只是喜欢使用按钮和下拉菜单而不是代码来分析数据,查询构建器都能满足您的需求。如果您不确定要从数据中找出什么,这些按钮和下拉菜单可以为您提供一些想法,例如列出可以添加到起始表、模型或已保存问题中的过滤器和分组选项。使用 Metabase 查询构建器提问您可以通过几种方式使用查询构建器来提问数据: 从数据浏览器开始。使用数据可视化右侧的侧边栏添加过滤器和汇总。使用查询构建器界面从头开始创建问题。查询构建器为构建问题提供了更大的灵活性:除了常规的过滤和汇总选项外,您还可以使用自定义表达式创建更复杂的过滤器和聚合。您还可以连接表、创建自定义列,并在可视化最终产品之前预览每一步的结果。这些路径并非相互排斥——您可以从数据浏览器开始,可视化数据,使用侧边栏调整问题,打开查询构建器进行其他更改等等。示例:使用查询构建器我们将使用查询构建器来构建一个使用 Metabase 示例数据库的问题。假设我们想知道我们的大额订单(即小计大于 100 美元的订单)如何按产品类别细分。图 1 展示了我们如何在查询构建器中构建这个问题: {% include image_and_caption.html url=”/glossary/images/query-builder/notebook-editor.png” description=”图 1. 使用查询构建器提问。” %} 一旦我们可视化了问题,我们再添加一个过滤器,这样我们只查看全价订单(即没有应用折扣的订单)。图 2 展示了我们在添加第二个过滤器之前查询构建器的外观: {% include image_and_caption.html url=”/glossary/images/query-builder/second-filter.png” description=”图 2. 在查询构建器中可视化数据时添加第二个过滤器。” %} 阅读更多 问题 在 Metabase 中,问题是查询、其结果及其可视化。 在 Metabase 中,问题是查询、其结果及其可视化。如果您正在尝试在 Metabase 中找出有关您数据的某些信息,您可能正在提问或查看团队中其他人创建的问题。在日常使用中,“问题”几乎与“查询”同义。您可以使用 Metabase 中的问题做什么您可以使用图形查询构建器或原生查询编辑器在 Metabase 中提问,然后进行以下操作: 将问题保存到集合中,以便以后可以返回或在其基础上构建。将该问题添加到相关仪表板。仪表板上的问题称为卡片。为您的问题设置电子邮件或 Slack 提醒。通过向团队成员发送链接来分享您问题的结果——甚至包括您尚未保存的问题。将您问题的结果下载为 CSV、XLSX 或 JSON。将您已保存的问题转换为模型。问题示例图 1 展示了一个基于 Metabase 示例数据库的问题——我们公司产品的平均评分,按类别细分。这里我们已将此问题可视化为条形图: {% include image_and_caption.html url=”/glossary/images/question/example-question.png” description=”图 1. 一个带有一项汇总并可视化为条形图的示例问题。” %} 图 2 展示了同一个问题作为表格的样子: {% include image_and_caption.html url=”/glossary/images/question/example-question-table.png” description=”图 2. 相同的问题,可视化为表格。” %} 问题与 Metabase API在 Metabase API 中,您可以使用 `api/card` 路由编辑和获取 Metabase 实例中有关问题的信息。 阅读更多 R 只读副本 一组数据库中的一个,包含相同的数据,这些数据只能读取(不能更新),用于提高性能并确保高可用性。 只读副本是一组数据库中的一个,包含相同的数据,这些数据只能读取(不能更新),用于提高性能并确保高可用性。 阅读更多 记录 一组具有相同结构的相关数据。关系型数据库将每条记录存储为表中的一行。 记录是一组具有相同结构的相关数据。就像传统电子表格一样,关系型数据库中的记录以表中的水平行形式存储,并包含与该表的字段或列对应的值。记录通常引用一个单一单元,无论是客户、订单、会话还是数据库捕获的其他对象。数据库中的记录通常由其在表中实体键字段中的值来标识。记录示例让我们来看看 Metabase 示例数据库中的“订单”表(图 1)。 {% include image_and_caption.html url=”/glossary/images/record/orders-table.png” description=”图 1. “订单”表,其中每行是一个记录或一组相关数据。” %} 我们看到此表中的字段(列),例如 ID、用户 ID、产品 ID、小计等等。每条记录都有与这些字段对应的值,并且这些相关属性共同构成一条记录。例如,我们可以看到 ID 为 8 的记录(或行)是一笔小计为 68.23 美元、折扣为 8.65 美元且创建于 2019 年 6 月 17 日的订单。其下方 ID 为 9 的记录遵循相同的结构,尽管其值不同。我们可以点击 ID 字段以更好地查看记录本身,如图 2 所示: {% include image_and_caption.html url=”/glossary/images/record/record-8.png” description=”图 2. 查看 ID 为 8 的订单的单个记录。” %} 阅读更多 区域地图 一种显示地理区域(如国家或州)信息的地图,例如,通过对每个区域着色来显示值。 区域地图是一种显示地理区域(如国家或州)信息的地图,例如,通过对每个区域着色来显示值。 阅读更多 关系型数据库 表格数据的集合,或管理表格数据存储和检索的应用程序。 关系型数据库是表格数据的集合,或管理表格数据存储和检索的应用程序。关系型数据库包含表,这些表由列(也称字段)和行(也称记录)组成。您通过将单个字段分配给两个或更多表来建立数据库中表之间的关系。对于其中一个表,该字段将被指定为实体键,而对于其他表,它将是外键。建立这些关系后,您可以跨表查询数据(可能使用 SQL),而无需重新组织或复制数据。关系型数据库于 20 世纪 70 年代初引入,至今仍是(即使不是唯一的)主导数据结构模型。虽然从技术上讲,关系型数据库指代数据本身,而关系型数据库管理系统 (RDBMS) 指代用于管理该数据的软件应用程序,但实际上人们会互换使用这些术语。关系模型非常普遍,以至于在许多情况下,“数据库”这个词本身就暗示着关系型数据库,除非另有说明。关系型数据库示例Metabase 的示例数据库(您在我们的文档和教程中看到的示例中使用的那个)是一个 H2 关系型数据库。图 1 展示了示例数据库中的四个表: {% include image_and_caption.html url=”/glossary/images/relational-database/tables-in-sample-db.png” description=”图 1. Metabase 示例数据库(一个关系型数据库)包含四个表:产品、订单、人员和评论。” %} 阅读更多 右外连接 一种连接,保留第二个(右侧)表中的所有行,无论该行是否与第一个(左侧)表中的任何行匹配。 右外连接保留第二个(右侧)表中的所有行,无论该行是否与第一个(左侧)表中的任何行匹配。如果未匹配,则第一个表中的列将填充 NULL。 阅读更多 行 表中一组相关数据。 行是表中一组相关数据。关系型数据库包含带有行和列的表(分别也称为记录和字段)。列是垂直的,保存来自同一字段的所有值的列表。行是表中水平的元素。行中的值属于不同的字段,但都指向一个单一单元(例如包含一个客户或一个订单信息的行)。行 vs. 记录 vs. 元组从技术上讲,行是表中相关数据的底层逻辑分组,而记录是指在应用程序上下文中相同的分组。在 SQL 中进行插入、更新或删除时,您处理的是行,而不是记录。然而,这是一个相当微妙的区别,大多数人会互换使用这些术语。您有时也会看到使用“元组”,这是一个表示相同概念的数学术语。Metabase 中的行示例图 1 展示了 Metabase 示例数据库中的“产品”表,其中突出显示了一行。此行包含来自几个不同字段的信息,每个值都与我们库存中的一种产品相关(在此示例中,是“巨型铝制衬衫”)。 {% include image_and_caption.html url=”/glossary/images/row/example-row.png” description=”图 1. 产品表中的一行。” %} 阅读更多 行图 条形图的一种变体,数据以水平条形而非垂直条形进行可视化。 行图是条形图的一种变体,数据以水平条形而非垂直条形进行可视化。 阅读更多 S SAML 一种基于 XML 的标准,用于交换身份验证和授权数据。 安全断言标记语言 (SAML) 是一种基于 XML 的标准,用于交换身份验证和授权数据。 阅读更多 SKU 一种可扫描的条形码,用于唯一标识某种类型的产品。 库存单位 (SKU) 是一种可扫描的条形码,用于唯一标识某种类型的产品。 阅读更多 SQL 一种标准化且广泛使用的语言,用于访问和操作关系型数据库中的数据。 结构化查询语言(简称 SQL)是一种标准化且广泛使用的语言,用于访问和操作关系型数据库中的数据。使用 SQL 涉及编写和执行结构化命令(称为语句),这些命令告知数据库您需要什么信息或要更改什么。SQL 是一个已发布的 ANSI 和 ISO 标准,这意味着关于该语言具体包含什么以及如何工作,都有既定的规则。然而,基于 SQL 的数据库系统(如 PostgreSQL、MySQL、SQL Server 等)各自拥有略微不同的功能和自己的语法怪癖——没有哪个主要数据库能够 100% 符合官方书面标准。使用 SQL,您可以: 创建和配置数据库、表和索引 插入、更新和删除数据库中的信息 检索数据库中的信息(通常称为查询) 设置和调整数据库权限 读作“S.Q.L.”还是“sequel”?关于发音的意见分歧很大,其中一些意见非常坚持。当计算机科学家 Donald Chamberlin 和 Raymond Boyce 在 20 世纪 70 年代初首次开发该语言规范时,他们称之为“SEQUEL”(读作“sequel”),但由于商标纠纷,将语言名称更改为 SQL。ANSI 和 ISO 标准规定官方发音是首字母缩略词(“S.Q.L.”),但今天两种发音都很常见。所以选择您觉得最好的发音——只是当有人不同意您时不要感到惊讶。使用 SQL 查询数据库无论多么高级或复杂,所有 SQL 查询都涉及告诉数据库从一个表(或多个表)返回某些列,然后可选地指定关于哪些行应包含在这些结果中以及应如何呈现的条件。SQL 不区分大小写,但您通常会看到人们将保留字(例如,`SELECT`、`WHERE`、`HAVING` 或 `ORDER BY` 等函数和子句)大写。如果您愿意,可以将 SQL 语句格式化为单行,尽管人们通常会将查询分解到单独的行以提高可读性。SQL 查询示例这是一个 SQL 查询,它要求 Metabase 的示例数据库返回一个订单表,其中订单小计大于 100 美元: `SELECT * FROM orders WHERE subtotal > 100` 我们可以将此查询分解为三个语句: `SELECT *` 告诉数据库返回表中的所有列。 `FROM orders` 告诉数据库是哪个表。 `WHERE subtotal > 100` 告诉数据库过滤结果,只返回“小计”字段中值大于 100 的行。上述示例查询是一个非常简单的查询;更高级的查询可以包含连接、聚合、CTE 和其他用于提取和组织数据的工具。Metabase 中的 SQL您在 Metabase 中提问时不必编写 SQL(这就是查询构建器的作用),但如果您喜欢 SQL 查询,原生查询编辑器就在那里等着您,还有以下功能: SQL 变量(包括字段过滤器) SQL 片段 SQL 片段控件(在某些计划中可用) 如果您选择使用查询构建器在 Metabase 中提问,您始终可以查看问题背后的底层 SQL 或将其转换为原生 SQL 查询。 阅读更多 SQL 片段 一段命名的 SQL 代码,可以插入到 SQL 查询中。 SQL 片段是一段命名的 SQL 代码,可以插入到 SQL 查询中。 阅读更多 SSO 一种身份验证(auth)设置,允许人们使用一个登录凭据访问独立的应用程序。 SSO 是一种身份验证(auth)设置,允许人们使用一个登录凭据访问独立的应用程序。这有点像使用护照进入不同的国家。有了 SSO,您无需为每个账户使用一个登录凭据,就像您无需带着针对每个国家的不同身份证件旅行一样。例如,您的电子邮件和网上银行可能有两个不同的登录凭据,它们分别用于两个不同的登录页面。如果您的电子邮件提供商和银行的 IT 团队都设置了 SSO,您将能够使用一个登录页面和凭据访问这两个网站。 {% include image_and_caption.html url=’/glossary/images/sso/google-sign-in.png’ description=”图 1. 您可能已经从其他应用中认出了这个“使用 Google 登录”提示。这是使用 Google 登录设置 SSO 的一个示例。” %} SSO 如何工作?由于数字身份验证无法亲自完成,您在互联网上的身份由一项服务检查,该服务要求您提供您所知道的事物的证明(如密码),或您实际拥有的事物的证明(如向您的手机发送代码)。这些证明称为身份因素。最常见的身份验证方式是通过单一身份因素,例如密码。如果您添加另一个因素,例如电话号码,您就获得了双因素身份验证 (2FA)。自然地,您可以继续添加因素(电子邮件、验证应用等),以获得多因素身份验证 (MFA)。SSO 不使用您知道或拥有的信息,而是使用一种名为身份验证令牌的身份因素,该令牌属于 SSO 提供商。身份验证令牌是当您登录 SSO 提供商时生成的一段唯一、匿名的信息。该令牌临时存储在您的浏览器中(如浏览器 cookie)或提供商的服务器上,并且仅在一段时间内有效——通常直到您关闭浏览器,或者在您的安全团队设置的过期窗口内。当您访问一个已设置 SSO 的应用程序时,它会自动从 SSO 提供商请求身份验证令牌,而不是要求您登录。如果令牌仍然有效(您已在同一会话中登录 SSO 提供商,并且尚未过期),您的身份被视为已通过身份验证,您将被允许进入该应用程序。如果令牌已失效,系统会提示您使用 SSO 提供商登录以创建新的令牌。SSO 在更大范围内的作用是什么?身份验证只处理您是谁(身份)。从那里,其他服务会跟踪您被允许去哪里,以及一旦到达那里您可以做什么(访问管理)。身份和访问管理 (IAM) 是这些工具和流程的总称。SSO 和 IAM 工具包的其他部分通常由身份提供商 (IdP)(如 Okta、Auth0 或 OneLogin)打包,并作为云安全的一部分实施。Metabase 中的 SSO在 Metabase 中设置 SSO 意味着人们无需创建单独的 Metabase 用户名和密码即可访问您组织的数据。他们只需通过您选择的身份提供商的同一账户登录即可。Metabase 的开源版本可以与 Google SSO 或 LDAP 设置。Metabase 的专业版和企业版支持 SAML 和 JWT 标准(除了 Google SSO 和 LDAP)。SSO 还可以与 Metabase 专业版和企业版中的数据沙盒结合使用,根据用户属性(如他们的部门或角色)定义人们可以看到和交互的数据。 阅读更多 示例数据库 Metabase 随附的一个小型数据库,可让您在连接到自己的数据库之前开始提问并创建仪表板。 示例数据库是 Metabase 随附的一个小型数据库,可让您在连接到自己的数据库之前开始提问并创建仪表板。示例数据库包含四个表:订单、人员、产品和评论。它是一个 H2 数据库,您会在所有“学习”部分的示例中看到示例数据库的使用。 阅读更多 已保存问题 已保存并命名的一个 Metabase 问题。已保存问题的结果可作为其他问题的输入。 已保存问题是一个已保存并命名的 Metabase 问题。已保存问题的结果可作为其他问题的输入。 阅读更多 架构 定义数据集组织的设计或结构,包括其表、列、关系、数据类型和完整性约束。 架构是定义数据集组织的设计或结构:哪些列被分组到表中,这些表如何相互关联,以及定义这些列的规则和数据类型。“架构”是一个多义词;它是一个抽象的词,积累了许多不同的定义,因此很难理清。根据上下文,架构可以指: 您的数据库的整体结构、规范或“蓝图” 演示数据库中表如何相互关联的图表 数据库内(众多表中的)单个表集合 最后,架构有时指您正在使用的特定数据库平台所特有的含义,例如在 Oracle 中,架构指由同一用户创建的数据库中的所有对象。架构作为整体结构:设计和实现一旦您从高层次角度弄清楚数据如何组合在一起(即您的概念数据模型),下一步就是创建反映该数据模型的架构,将其从抽象变为一个组织可以使用并填充信息的数据库。广义上讲,这个过程由两个主要步骤组成: 设计:规划数据库结构,在此过程中创建实体关系图 (ERD)。 实现:使用该 ERD 生成 SQL 命令,这些命令在数据库中运行时将创建您所需的架构。您的架构设计过程取决于您是处理事务型数据库还是分析型数据库,以及您是从头开始还是已经开始收集数据。无论您在哪个阶段设计架构,您都必须深入思考组织的需求以及您预期会向数据提出的问题。写入时架构 vs. 读取时架构大多数传统关系型数据库使用写入时架构系统,其中数据在写入数据库之前会经过验证并格式化为架构。由于要写入的数据必须符合您已建立的特定数据完整性规则(例如要求字段中的所有值唯一,不接受字段中的空值,或以某种方式格式化日期),因此将此新数据添加到数据库可能会很慢。然而,由于数据已经过验证,读取时间很快。在读取时架构系统中,数据(如在数据湖中)仅在被读取或从数据库中提取后才进行验证。读取时架构系统往往更灵活,因为您可以存储非结构化数据而无需担心它符合严格的数据模型。在这种情况下,写入数据更快(因为数据在加载时无需验证),但查询执行需要更多时间。选择写入时架构还是读取时架构策略将取决于您组织的需求和具体用例。如果拥有精心构造和一致的数据集对您的组织很重要,那么写入时架构系统可能是您的最佳选择。相比之下,如果您需要定期引入各种数据,而又不总是确切知道数据是什么样子,您可能需要使用读取时架构系统。逻辑架构和物理架构无论您是使用写入时架构还是读取时架构系统,您还需要考虑数据库结构及其实现——即您的逻辑架构和物理架构。逻辑架构定义数据结构,而该结构的实际实现(例如如何以及在何处存储构成数据库的文件和代码)则属于物理架构。逻辑架构逻辑架构通过图示表及其字段如何相互关联来创建。在创建逻辑架构时,您将建立表、关系、字段和视图,回答诸如以下问题: 我们正在收集什么数据,或者我们想收集什么数据? 您的数据库(或其中的单个架构)需要哪些表? 这些表如何相互关联? 每个表需要哪些字段? 每个字段的数据类型是什么? 哪些字段是必需的? 架构作为图表:映射实体和关系在回答这些问题和其他问题时,您很可能会勾勒出实体关系图 (ERD),它定义了每个表、其字段、它们的完整性约束,以及这些表之间的关系,包括建立这些连接的主键和外键,以及表之间的关系是一对一、一对多还是多对一。可视化您的表以及它们如何相互关联也可以揭示任何重大遗漏或冲突。是的,有时您会看到这些图本身被称为架构。下图显示了包含两个表 PRODUCTS 和 MANUFACTURER 的架构的实体关系图。“(PK)”和“(FK)”标记告诉我们哪些字段是主键和外键,连接这些表的线表示一对多关系,即一个制造商可以关联到许多产品。 {% include image_and_caption.html url=”/glossary/images/schema/simple-erd.png” description=”图 2. 包含两个表的架构的实体关系图。” %} 您可以在纸上或使用设计软件绘制架构,该软件可以直接将您的图表转换为实现数据库所需的 SQL 命令。此时您的架构是平台无关的;规划这些规则和关系并不会将您绑定到任何单一数据库软件。物理架构一旦您确定了数据库的逻辑配置,您将创建物理架构以将其实现到特定的 RDBMS 中,定义数据库文件将位于何处以及它们在磁盘上的存储分配。架构作为众多表中的一个集合如果您的数据库只有少数用户,并且包含每个人都需要访问的数据,那么单个表集合可能就足够了,但您可能会发现仅仅依赖数据库中的单个架构无法满足您的组织需求。如果您正在处理大量表的数据(数十、数百或数千个),将这些表分组到单独的架构中将有助于组织,使您可以将类似的信息存储在一起,同时在必要时仍能跨架构查询。在数据库中维护多个架构从安全角度来看也很有帮助,例如将存储敏感信息的表分离到一个只有需要访问的人才能访问的架构中,通常与视图结合使用。事务型数据库与分析型数据库的架构设计在考虑事务型数据库(也称为操作型数据库)的架构时,您的数据需要进行一定程度的规范化并遵守数据完整性标准,因为这些小型事务和 OLTP 的效率和性能至关重要。为分析型数据库设计架构将有所不同。首先,您可能已经收集了原始数据,可能来自多个来源,现在需要施加一些结构以进行分析。在这种情况下,冗余是可以的,因为分析型数据库更注重可探索性,而较少注重性能。在这里,您的架构也可以更松散地定义,因为不需要固定模式(如规范化)。分析型数据库的架构设计更多的是了解来自各种来源的数据位于何处,并知道您需要连接哪些表来回答您的问题。星形架构您会看到应用于分析型数据库的一种常见结构是星形架构,它将数据分为事实表(即定量数据),这些事实表与描述这些事实的多个维度表相关联。在星形架构的简单实现中,几个维度表都围绕并关联到一个事实表,在图表形式中看起来像一个星形,事实表位于其中心,如下所示: {% include image_and_caption.html url=”/glossary/images/schema/star-schema.png” description=”图 2. 简单星形架构的实体关系图。” %} 星形架构中的表通常是非规范化的,这会导致分析查询的性能更好。创建数据库架构大多数数据库平台(如 Redshift 和 PostgreSQL)使用“架构”来指代数据集的配置以及该数据集中表和其他命名对象的非嵌套分组,尽管 Oracle 将架构定义为由单个数据库用户创建并属于该用户的所有对象。要在 RDBMS 中创建架构,请使用 `CREATE SCHEMA` 查询,例如在此示例中,我们创建一个包含两个表的架构,这两个表通过 `customer_id` 字段链接: `CREATE SCHEMA new_schema; CREATE TABLE new_schema.orders ( order_id product_id customer_id subtotal order_date ) CREATE TABLE new_schema.customers ( customer_id customer_name customer_address customer_email );` 这是一个非常简单的架构;我们没有为表中的字段指定数据类型或任何其他约束。如果我们想要求 `customers` 表中的 `customer_id` 字段,并指明其数据类型是整数,我们会这样格式化该字段: `customer_id INT NOT NULL` 请注意,在 MySQL 中,`CREATE SCHEMA` 与 `CREATE DATABASE` 同义。 阅读更多 搜索过滤器 一种过滤器,隐藏表中不符合某些条件的行。 搜索过滤器是一种过滤器,隐藏表中不符合某些条件的行。 阅读更多 搜索小组件 一个可添加到仪表板的小组件,对一个或多个卡片中使用的值应用搜索过滤器。 搜索小组件可以添加到仪表板中,对一个或多个卡片中使用的值应用搜索过滤器。 阅读更多 安全嵌入 一种嵌入 iframe 的方法,用于显示问题或仪表板,并使用签名令牌进行身份验证。 安全嵌入是一种嵌入 iframe 的方法,用于显示问题或仪表板,并使用签名令牌进行身份验证。 阅读更多 细分 一个较大项目组中的特定子集,例如某种客户分组。 细分是一个较大项目组中的特定子集,例如某种客户分组。定义和创建这些子集的过程称为细分。例如,您可能希望根据人口统计、近期活动或其他属性来细分客户。在 Metabase 中,细分是命名过滤器或过滤器集,人们可以将其应用于使用查询构建器提出的问题。管理员可以定义细分,让每个人都对哪些客户算作“新用户”或哪些是“流失风险”达成共识,或者根据您希望如何细分数据来定义。如果您偏爱原生 SQL 查询,SQL 片段与 GUI 问题的细分具有相似的目的,确保人们可以将其插入查询中的定义保持一致。Metabase 中的细分示例图 1 展示了 Metabase 示例数据库中的“产品”表。您会注意到过滤器侧边栏顶部显示了三个细分,它们通过星形图标标识。有了这些细分,我们每次想要引用这些定义时,都不需要重新计算什么是高利润产品、新产品或高评价产品。 {% include image_and_caption.html url=”/glossary/images/segment/segment-example.png” description=”图 1. 我们已添加到“产品”表的三个细分:高利润产品、新产品和高评价产品。” %} 阅读更多 序列化 将应用程序或其他对象的状态存储为文件的过程,以便以后可以重新加载(或反序列化)。 序列化是将应用程序或其他对象的状态存储为文件的过程,以便以后可以重新加载(或反序列化)。在序列化过程中,该复杂对象会转换为数据流,这使得通过网络传输或复制到新实例变得容易得多。将序列化想象成对某个应用程序进行快照,但您可以在需要时将该扁平化的快照恢复为实时对象。如果您需要管理应用程序的多个实例,例如除了用于生产的实例之外还有开发或预演实例,序列化就会派上用场。序列化还可以用于自定义应用程序的初始状态,例如预加载 Metabase 实例与数据库的连接详情、预定义组、仪表板等。Metabase 中的序列化 {% include plans-blockquote.html feature=”Serialization” self-hosted-only=true %} Metabase 的序列化功能允许您捕获和导出 Metabase 的内容,以便您可以将其重新加载到另一个实例中——或多个实例。您在序列化时捕获的这些 Metabase 工件统称为数据转储,其中包含 YAML 文件,这些文件保存着您的集合、仪表板、已保存问题和一些系统设置。 阅读更多 会话指标 衡量某人与系统交互方式的指标,例如他们连续浏览的页面数量。 会话指标是衡量某人与系统交互方式的指标,例如他们连续浏览的页面数量。 阅读更多 会话令牌 服务器生成的随机值,用于在一次交互会话期间标识特定用户。 会话令牌是服务器生成的随机值,用于在一次交互会话期间标识特定用户。 阅读更多 软删除 将记录标记为不再活跃或有效,但实际上不从数据库中删除它。 软删除将记录标记为不再活跃或有效,但实际上不从数据库中删除它。软删除可以提高性能,并允许恢复“已删除”的数据。 阅读更多 堆叠条形图 一种条形图,通过堆叠根据每个值大小调整的条形,显示每个类别的多个值。 堆叠条形图是一种条形图,通过堆叠根据每个值大小调整的条形,显示每个类别的多个值。 阅读更多 汇总表 聚合的结果,保存在数据库或数据仓库中,以便人们可以使用这些预计算的指标。 汇总表是聚合的结果,保存在数据库或数据仓库中,以便人们可以使用这些预计算的指标。“汇总表”这个术语可能会令人困惑,因为有些人用“汇总表”来描述任何聚合函数的结果,就像您在按某些度量和维度进行过滤和分组后得到的表一样。根据这个定义,汇总表基本上与枢纽表相同,只是没有透视功能。这里的区别在于这些表是否保存在您的数据仓库中。在数据仓库中创建汇总表可以使人们更容易生成报告,而无需查询原始数据。从这个意义上讲,汇总表的功能很像物化视图(不一定聚合数据)。示例:数据仓库中的汇总表例如,您可能正在使用一个分析型数据库,它采用了星形架构设置,其中一个事实表包含数万条单独的订单记录,周围环绕着描述这些订单的维度表。如果您组织中的某人希望生成一份包含过去七天按产品类别划分的销售数据的每周报告,那么每次都从原始事实表和维度表计算这些数据将是低效且昂贵的。相反,创建汇总表可以更少地连接这些表并聚合数据。然后,将来当某人创建该报告时,他们可以使用汇总表作为基础,而无需每次都从头计算这些数字。虽然汇总表会带来一些维护工作(例如确保数据按计划刷新,或在过滤器和分组不完全符合人们需求时进行调整),但它们仍然是处理大型数据集的一种高效方式。 阅读更多 T 表 数据的自然栖息地。在数据库中,表是字段的集合,字段的值以行形式排列。 表是数据的自然栖息地。在数据库中,表是字段的集合,字段的值以行形式排列,每行都有与字段对应的值。数据库中的表通过实体键和外键连接。数据库由表组成,但“表”也可以指一种数据可视化或图表。表格可视化类似于电子表格,其中列对应于字段(或聚合,在自定义列的情况下)。Metabase 中的表格示例Metabase 的示例数据库包含四个表:产品、订单、人员和评论。图 1 展示了 Metabase 中一个问题可视化为表格的样子。这个问题为“人员”表添加了一个过滤器,因此我们的结果是一个客户表,其州为佐治亚州: {% include image_and_caption.html url=”/glossary/images/table/example-table.png” description=”图 1. 显示佐治亚州 (GA) 人员的表格。” %} 通过表格下方的切换按钮,我们可以在将此问题显示为表格和图钉地图(或您选择的任何其他可视化)之间进行切换。 阅读更多 文本卡 仪表板上的一张卡片,您可以在其中输入 Markdown 文本,为仪表板提供上下文。文本卡片也可用作仪表板上的分隔符。 文本卡是仪表板上的一张卡片,您可以在其中输入 Markdown 文本,为仪表板提供上下文。文本卡片也可用作仪表板上的分隔符。 阅读更多 时间序列 时间序列是随时间绘制的一系列点。 时间序列是随时间变化的一系列数据点。时间序列既用于分析(数据随时间表现如何),也用于预测(根据线条的趋势,我们下周、下个月等会期望什么)。通常您将时间序列表示为折线图(称为运行图),但有时也可以是条形图或面积图。在每种情况下,水平 x 轴绘制时间,线上绘制的每个点都是固定间隔(每小时一次,或每天一次等)的值。人们会使用“时间序列”这个术语来指代按日期/时间排列的实际数据以及可视化该时间序列的图表。时间序列上绘制的值可以是度量(如温度)或指标,例如一周内下单的总数。如果您绘制五十二周(或某些其他时间段)内每周的订单总数,生成的图表就是时间序列的可视化。时间序列示例以下是按月划分的订单数量的时间序列,以折线图表示: {% include image_and_caption.html url=”/glossary/images/time-series/time-series-example.png” description=”图 1. 显示按月分组的订单数量的时间序列。” %} 阅读更多 事务型数据库 一种数据库,针对大量小型操作而非少数大型事务进行了优化。OLTP 通常依赖于事务型数据库。 事务型数据库是一种数据库,针对大量小型操作而非少数大型事务进行了优化。OLTP 通常依赖于事务型数据库。 阅读更多 V 变量 程序或查询中可以更改的任何值。在 Metabase 中,SQL 查询中的变量用双花括号括起来。 变量是程序或查询中可以更改的任何值。在 SQL 中,声明一个变量允许您在运行查询时临时存储一个单一值。参数是一种变量,但并非所有变量都是参数。当人们谈论参数时,他们通常特指由仪表板或报告的最终用户修改的变量,而不是查询文本本身中的变量。Metabase 中的变量示例在 Metabase 中,变量是 SQL 查询中的占位符,用于人们可以在无需重写查询本身的情况下更改的值。使用变量可以过滤数据,通常通过在 SQL 编辑器中问题上方添加过滤器小组件来实现。变量用双花括号括起来,如下所示:{% raw %}{{variable_name}}{% endraw %}。在下面的示例中,我们创建了一个变量,用于根据示例数据库“人员”表中的“Source”字段进行过滤:`SELECT * FROM people WHERE source = {% raw %}{{source}}{% endraw %}` 当您在查询中包含变量(在此示例中为 {% raw %}{{source}}{% endraw %})时,Metabase 会在 SQL 编辑器上方添加一个过滤器小组件,如图 1 所示。由于过滤器小组件映射到我们创建的变量,我们可以将不同的值插入其中,以过滤不同的来源。 {% include image_and_caption.html url=”/glossary/images/variable/variable-example-source.png” description=”图 1. 查询编辑器上方的过滤器小组件映射到双花括号内的变量。” %} 阅读更多 垂直扩展 使系统中的单个组件更强大以提高性能,例如,向单个服务器添加更多内存或升级其 CPU。 垂直扩展涉及使系统中的单个组件更强大以提高性能,例如,向单个服务器添加更多内存或升级其 CPU。 阅读更多 视图 一个查询及其结果,在数据库中像虚拟表一样发挥作用。 视图是一个已保存的查询,在数据库中像虚拟表一样发挥作用。您可以像与真实表交互一样与视图交互,但视图本身不存储数据——相反,数据库每次引用视图时都会运行底层查询。另一方面,物化视图就像数据库中的常规表。虽然视图要求每次引用该视图时都要重新运行查询,但物化视图是保存在数据库中的预计算视图。 阅读更多 W 白标 将品牌应用于他人产品的商业实践。 白标是将品牌应用于他人产品的商业实践。它通常涉及对颜色、徽标、字体或内容等元素的更改。白标可用于在从不同来源获取的产品或服务之间建立凝聚感。Metabase 中的白标示例 {% include image_and_caption.html url=’/glossary/images/white-labeling/home-normally.png’ description=”图 1. 没有白标更改的 Metabase 简洁经典主页。” %} {% include image_and_caption.html url=’/glossary/images/white-labeling/new-home-page.png’ description=”图 2. 带有修改后的徽标、调色板和主页位置的 Metabase 主页。” %} 阅读更多 X X 射线 自动生成的表格或列的摘要或可视化,旨在让用户快速了解其数据。 X 射线是自动生成的表格或列的摘要或可视化,旨在让用户快速了解其数据。 阅读更多