动态表刷新跳过、缓慢或失败故障排除¶
本主题可帮助您解决刷新跳过、缓慢或失败的问题。
监控动态表刷新情况时,请注意以下几点:
如果您看到很多 SKIPPED 条目,请参阅 跳过刷新。
如果您看到一致的 FAILED 条目,请参阅 刷新缓慢或失败。
如果您看到 SCHEDULED 或 EXECUTING 条目卡顿很长时间,请参阅 刷新缓慢或失败。
跳过刷新¶
动态表按时间表刷新。计划刷新开始时,以下情况可能会导致跳过刷新:
如果正在刷新的动态表上游有另一个动态表,而上游的刷新失败或被跳过。
如果动态表的上一个刷新仍在运行。
如果动态表的刷新时间通常比目标滞后时间长,或目标滞后和实际滞后之间存在显著差异,Snowflake 可能会跳过刷新以降低未来的跳过率。
例如,如果动态表的目标滞后为 1 分钟,但通常需要一小时才能刷新,则系统会相应地调整“实际滞后”。
手动刷新永远不会跳过,但可能会导致跳过其他计划的刷新,特别是在对动态表执行频繁的手动刷新时。这样做会阻止下游动态表刷新。因此,如果某动态表具有根据目标延迟进行刷新的下游动态表,Snowflake 建议您避免频繁地对该动态表执行手动刷新。
刷新缓慢或失败¶
动态表的刷新性能依赖于对其处理的工作负载或数据的特定假设。刷新失败通常是由于动态表的查询定义问题、输入数据(例如,解析错误)或内部系统问题造成的。
对于缓慢刷新,请使用 Snowsight 中的 “Refresh History”页面 来可视化动态表刷新持续时间内的变化并找出异常值:

对于失败的刷新,使用 Refresh History 页面来确定刷新失败是由延迟更新还是数据不一致造成的。Source Data Timestamp 列显示上次成功刷新时更新的时间。刷新失败不会提高此值。如果该值远远落后于指定的目标滞后值,则表明您的动态表滞后。
此外,您可以通过点击每次刷新旁边的 Show query profile 来使用 Query Profile 进行高级故障排除。这会显示查询的图表。

您还可以使用 Snowsight 中的 Graph 视图,通过可视化动态表的依赖关系进行故障排除。失败或暂停的上游动态表将自动导致其下游动态表刷新失败。有关更多信息,请参阅 查看连接到动态表的表图形。