动态表性能和优化¶
了解如何优化和监控动态表,以提高速度和成本效益。本部分介绍基本概念和访问更详细主题的链接。
动态表 性能 是指完成 动态表刷新 的速度和效率。性能良好的动态表刷新速度足以满足其 目标滞后,而不会消耗过多的计算资源。
为什么性能很重要¶
- 数据新鲜度
动态表刷新基于您指定的 目标滞后,即源表更新和动态表内容更新之间允许的最大延迟。当刷新时间过长时,管道可能无法满足新鲜度要求。
For example, setting a target lag of five minutes when your refresh takes eight minutes means your pipeline can't maintain the required freshness.
- 成本效益
Dynamic tables require virtual warehouses for refreshes, which consume credits. Poorly optimized dynamic tables might scan more data than necessary, trigger full refreshes when incremental would suffice, or require larger warehouses to complete within target lag windows.
有关成本的更多信息,请参阅 了解动态表的成本。
性能决策¶
影响动态表性能的变更根据您可以进行变更的 时间 分为两类:
设计变更 |
调整 |
|
|---|---|---|
时间 |
创建管道之前。 |
管道运行之后。 |
影响 |
高 |
中 |
灵活性 |
难以更改;需要重新创建表。 |
易于更改;无需重新创建表。 |
示例 |
查询结构、刷新模式、管道设计。 |
仓库大小、群集密钥、目标滞后。 |
有关这两个类别的详细指南,请参阅 优化动态表性能。
开始使用¶
要开始进行动态表性能优化,请尝试实践教程:
- 教程:为 SCD Type 1 工作负载优化动态表性能
了解如何识别和解决动态表管道中的性能瓶颈。本教程展示了不同 SQL 模式会如何影响增量刷新,以及如何使用
QUALIFY子句有效移除重复行。