【问题标题】:What is the value of schema tests in dbt?dbt 中模式测试的价值是什么?
【发布时间】:2022-01-06 20:45:30
【问题描述】:

当您可以改用 SQL 架构约束时,您何时希望使用 dbt schema testsuniquenot_nullaccepted_valuesrelationships)?

例如,这里有一些 SQL 模式约束可以替代每个 dbt 模式测试:

【问题讨论】:

    标签: sql validation testing dbt


    【解决方案1】:

    dbt 测试比数据库约束更灵活。如果您尝试将空值插入非空目标,您的过程将失败,故事结束。使用 dbt 测试,您可以先执行,然后再测试,这可能很有趣。

    更多示例:

    • 您可以将测试归类为警告而不是错误
    • 您可以定义错误阈值
    • 您可以指定过滤器以仅将测试应用于值的子集
    • 测试在不同的环境(产品/开发等)中表现不同
    • dbt 测试比数据库约束更容易修改

    【讨论】:

      【解决方案2】:

      您不能在视图或 CTE 上使用上面列出的表约束。 dbt 的价值在于允许用户构建SELECT 查询的DAG,而不必担心DDL 或配置。稍后可以将它们配置为表格而不是默认视图,并且无需更改语法。

      【讨论】:

        猜你喜欢
        • 2022-01-22
        • 2010-12-27
        • 1970-01-01
        • 2018-10-30
        • 2015-06-22
        • 2017-11-23
        • 2019-09-27
        • 2019-11-11
        • 1970-01-01
        相关资源
        最近更新 更多