保持您的分析井然有序
如何随着用户、问题和仪表板数量的不可避免的增加,来组织您的分析。
如果您想保持竞争力,就必须让您组织中的人们能够访问他们做出更好决策所需的数据。然而,数据民主化的代价是分析的不可避免的泛滥——这可能会使您难以知道哪些分析是值得信赖的。
重要的是要理解这个问题没有灵丹妙药。总会存在一定程度的分析混乱需要平息,但有了合适的工具和流程,您就能控制住不可避免的混乱。
分析民主化带来的问题
这些问题的核心在于定义:我们究竟如何定义营收、生命周期价值、客户流失等业务逻辑?当我说“定义”时,我的意思是您组织中重要的任何可量化概念。不仅仅是 X 是什么,而是我们如何 *计算* X?这些是您衡量组织的术语,您对它们的定义越具体(且一致),就越好。
以下是我们必须警惕的一些与定义相关的问题:
人们在哪里可以找到特定的定义?
一旦您开始对数据进行切片,从不同角度审视您的组织,定义就会迅速增多:营收、流失率、预期生命周期价值等等。如果我们想了解客户为什么会流失,应该查阅哪些定义?我们需要定义哪些 *新* 定义?以及(字面上)我在 Metabase 中在哪里可以找到这些官方定义?
定义冲突
“冲突”的意思是:我们讨论的是同一件事吗?以营收为例。对销售团队而言,营收可能是指已签单金额,但会计部门指的是已确认的应计收入,而营销团队则谈论的是生命周期总营收。
重新定义,或哪个是权威定义?
如果我们发现同一概念有多个定义怎么办?我们怎么知道该信任哪个?它们是否都偏离了目标?即使多个团队都同意我们应该跟踪周环比签单量,但这些签单量的计算方式在不同查询中可能不同:一个查询可能是准确的,另一个查询则可能不准确且未经审查,它是由一位分析师创建的,该分析师不知道计算签单量的官方查询已经存在;或者忘记了省略测试数据,或者未能考虑折扣,或者仅仅是创建了一个新查询来以不同方式切片签单量。
定义变更
随着某些收入流的淘汰和新收入流的增加,月度营收的计算方式可能会发生变化。如果我们有不同的部门在多个问题、模型和仪表板中使用相同的定义,我们应该如何管理定义的变更?
驯服混乱的策略
在明确了问题之后,让我们来谈谈如何缓解它们。我们将讨论分为两类:Metabase 提供的*功能*,以及我们建议您采纳的*组织流程*。
功能
以下是一些 Metabase 自带的工具,可以帮助您保持条理。您可能已经了解问题、仪表板和集合,但在此列出以获得完整的工具包概览。
模型
模型允许您将那些常用的概念代码化,作为新问题的一个起点,这些问题可以被轻松地反复引用。通过查询生成器构建的问题 *和* SQL 问题都可以转换为模型,并且它们会出现在搜索结果的靠前位置,鼓励您的组织广泛使用。您还可以自定义模型元数据,允许您指定列类型,以便您能够 钻取 即使是 SQL 问题。
例如,您可以编写一个问题,汇总并计算“活跃用户”(无论您如何定义一个人为“活跃”),然后将该问题转换为一个模型,这样人们在遇到有关活跃用户的问题时就知道去哪里查找。
数据引用和描述
Metabase 为您提供了包含有用文本的位置,这些文本可以为特定项提供上下文,无论该项是数据库、表、模型、问题、仪表板还是其他任何内容。您不必描述 *一切*,但您包含的描述越多,人们花费在弄清楚“这是正确的数据吗?”上的时间就越少,他们的分析也会越好。记录数据异常尤其重要(例如,表是否包含测试数据或员工账户,或其他分析师应注意的异常情况)。

对于“官方”数据库、仪表板、模型和问题,您应该要求所有者维护其文档。并且不要在标题上偷懒;您可以用几个额外的词语做很多事情。将“客户订单”与“官方:每周滚动平均每日订单 - 北美”进行比较。
有关 Metabase 中引用工具的更多信息,请参阅 使用 Metabase 的数据浏览器探索数据。
事件和时间线
事件允许团队捕获上下文,并在人们查看数据时提供该上下文。例如,您可以添加一个事件来标记促销活动、电子邮件营销活动或新版本发布的开始。这样,人们就可以看到这些事件对数据(如果有的话)有什么影响。您还可以避免所有关于为什么数字在四月或任何月份上下波动的问题。
您可以将这些事件组织成时间线,这些时间线与集合相关联,以便团队可以将事件分组到连贯的时间线中。不同的时间线可以分组影响您业务的不同事件集:月球周期、气象现象、神秘仪式等等。
细分和指标
管理员可以定义官方过滤器(或一组过滤器),称为 细分,可以在 Metabase 的查询生成器中使用。例如,您可以通过细分来正式定义什么是“活跃用户”。然后,“活跃用户”将出现在*筛选器侧边栏*中,因此任何人都可以通过“活跃用户”来筛选他们的查询,以查看这些特定用户购买了什么类型的产品,商品在购物车中停留多长时间等等。

同样,指标对计算进行代码化。例如,管理员可以为“平均订单总额”设置一个官方指标,以便每个人都知道(并可以使用)该指标的官方计算方法,该方法包括税费但排除折扣。
细分和指标都经过版本控制。要了解更多信息,请参阅 细分和指标。
代码片段
代码片段是基于 GUI 的细分和指标的 SQL 对等项。您可以使用它们来捕获和复制小段 SQL 代码。这些代码片段可以捕获细分、指标、复杂连接,或您可能希望在许多查询中重用的任何其他 SQL 代码。

细分、指标和代码片段的理念是代码化定义并使其易于随时间推移的定义调整而更改。当您更新代码片段时,使用该代码片段的每个问题都会以一致的方式受益于更新的定义。要了解更多信息,请参阅 代码片段:重用和共享 SQL 代码。
集合
集合将问题、模型和仪表板(以及其他集合)分组。此外,您可以将最重要的项目固定到集合的顶部,尤其是根集合“我们的分析”,以便固定仪表板显示在主页上。要了解更多信息,请参阅 处理集合权限。
官方集合
官方集合仅在Pro和Enterprise计划(包括自托管和 Metabase Cloud)中可用。
该官方集合功能允许您将特定集合指定为重要。当管理员将集合标记为官方时,它会获得一个徽章,并出现在搜索结果的靠前位置,使用户可以轻松找到它。
已验证项
已验证项仅在Pro和Enterprise计划(包括自托管和 Metabase Cloud)中可用。
管理员可以验证问题和模型,以表明他们已经查看并批准了它们。这些已验证项通过名称旁边的复选标记进行标识,因此用户可以轻松识别其管理员已认定值得信赖的问题。
如果您想了解有关验证功能的更多信息,请查看我们关于建立信任的帖子。
流程
知道工具能做什么只是成功的一半;另一半是知道何时以及如何使用它们。
为每个部门创建集合
为每个部门创建一个集合,并仅允许少数人进行编辑。这个小组应该负责管理该集合,并且只固定他们已经审查过、添加了有用描述并且正在积极维护的问题、模型和仪表板。
代码片段文件夹
代码片段文件夹仅在Pro和Enterprise计划(包括自托管和 Metabase Cloud)中可用。
代码片段文件夹允许您按部门组织文件夹,为这些文件夹指定所有者,并利用文件夹权限。
采用命名约定
在仪表板、集合、模型和问题中设置标准命名约定,以便显而易见哪些项目是官方的。如何定义该约定比拥有约定本身更重要。如有疑问:即使是简单的前缀,如“认证”或“官方”(例如,“官方:每千名用户的电子邮件打开次数”),也可以帮助人们筛选搜索结果并知道哪些项目已得到验证。
为实验和进行中的工作指定集合
为人们存储进行中的工作(有时称为草稿或游乐场集合)创建指定位置。人们可以也应该使用个人集合进行实验,但同时也要有公开的场所供人们与他人分享他们的工作,以便就他们正在进行的分析获得反馈。
任何人都可以复制官方的问题和仪表板,但您应该鼓励人们将这些项目保存到他们的个人集合中,或者保存到为实验指定的集合中。如果这些区域中的一个仪表板获得了成功,您可以将其移至相关的“官方”集合。您可以设置这些官方集合的权限,以便所有人都可以查看它们,但只有少数人可以编辑它们——确保该集合中的所有内容都是正确且正在积极维护的。
制定关于何时存档项目的政策
对于这些临时项目,设定明确的期望,说明何时应存档它们,以便这些游乐场不会充斥着杂乱。如果您负责管理您部门的集合,并且只固定已审查的项目,混乱问题就会减少,但保持草稿集合相对新鲜将提高搜索结果的质量。
而且不要担心存档,因为您可以随时恢复项目。
驯服混乱的其他想法?
如果您有任何技巧可以分享,或者对 Metabase 的更改或改进有任何想法,请在我们的论坛上告诉我们。