dbt_metrics 项目教程

dbt_metrics 项目教程

dbt_metricsMacros for calculating metrics项目地址:https://gitcode.com/gh_mirrors/db/dbt_metrics

项目介绍

dbt_metrics 是一个由 dbt Labs 开发的开源项目,旨在通过宏和配置简化数据仓库中的指标计算。该项目支持多种数据仓库适配器,如 Snowflake、BigQuery、Redshift、Postgres 和 Databricks。通过 dbt_metrics,用户可以定义和管理数据模型中的指标,实现一致性和可发现性。

项目快速启动

安装

首先,确保你已经安装了 dbt。然后,在你的 dbt 项目中添加 dbt_metrics 包:

# packages.yml
packages:
  - package: dbt-labs/metrics
    version: [">=1.5.0", "<1.6.0"]

运行以下命令安装包:

dbt deps

配置

在你的 dbt 项目中定义一个指标:

# models/metrics.yml
version: 2

metrics:
  - name: new_customers
    label: "New Customers"
    model: ref('customers')
    calculation_method: count
    timestamp: created_at
    time_grains: [day, week, month]
    dimensions: [plan, country]
    config:
      enabled: true

使用

使用 calculate 宏来计算指标:

-- models/example.sql
select * from {{ metrics.calculate(
  metric('new_customers'),
  grain='week',
  dimensions=['plan', 'country'],
  secondary_calculations=[
    metrics.period_over_period(comparison_strategy="ratio", interval=1, alias="pop_1wk"),
    metrics.period_over_period(comparison_strategy="difference", interval=1),
    metrics.period_to_date(aggregate="average", period="month", alias="this_month_average")
  ]
) }}

应用案例和最佳实践

Jaffle Shop 指标

参考 jaffle_shop_metrics 项目,了解如何在 dbt 项目中实现指标。该项目提供了一个实际的业务场景,展示了如何定义和计算指标,以及如何使用次级计算来增强指标分析。

最佳实践

  1. 一致性:确保指标在所有引用处保持一致。
  2. 泛化:优先选择具有多个维度的通用指标,而不是具有少数维度的特定指标。
  3. 易用性:使 dbt 的指标使用比避免使用它们更容易。
  4. 组织和可发现性:重视指标的组织和可发现性,如同重视精度一样。

典型生态项目

dbt Core

dbt_metrics 是 dbt Core 的一部分,dbt Core 是一个强大的工具,用于在数据仓库中进行数据转换和建模。通过结合 dbt_metrics,用户可以更高效地管理和分析数据。

Snowflake, BigQuery, Redshift, Postgres, Databricks

这些是 dbt_metrics 支持的数据仓库适配器。用户可以根据自己的数据仓库选择合适的适配器,实现无缝集成和高效的数据分析。

通过本教程,你应该能够快速上手 dbt_metrics 项目,并在你的 dbt 项目中实现高效的指标管理和分析。

dbt_metricsMacros for calculating metrics项目地址:https://gitcode.com/gh_mirrors/db/dbt_metrics

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

松忆玮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值