【问题标题】:How to test/validate views in Snowflake如何在 Snowflake 中测试/验证视图
【发布时间】:2022-11-08 07:12:31
【问题描述】:

有时,上游 DDL 更改会破坏下游视图(这不应该发生,但人类会犯错误)。

为了在我们的利益相关者之前检测到这些缺陷,有没有办法自动测试 Snowflake 中所有视图的有效性?

【问题讨论】:

    标签: snowflake-cloud-data-platform


    【解决方案1】:

    我们开始在每个视图上调用此查询,如果视图无效(因此测试失败)将产生错误:

    EXPLAIN SELECT 1 FROM database.schema.view LIMIT 1;
    
    • 即使没有EXPLAIN 的查询非常简单,但在更复杂的视图上仍然会很慢。
    • EXPLAIN 只构建查询计划而不执行查询(如果视图无效,查询计划将失败)。
    • 查询计划专门构建在云服务层中,因此这些查询不需要活动仓库,并且基本上是免费的 (as long as your cloud services usage remains below 10% of your total usage)。

    我们使用DBT 每小时运行一次此测试,但您可以使用任何其他允许自动查询的工具(例如SnowSQL)。

    【讨论】:

      猜你喜欢
      • 2013-12-29
      • 2012-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-17
      相关资源
      最近更新 更多