动态表刷新跳过或失败故障排除¶
本主题可帮助您解决刷新跳过或失败的问题。有关刷新缓慢的诊断,请参阅 监控动态表性能。
监控动态表刷新情况时,请注意以下几点:
如果您看到很多 SKIPPED 条目,请参阅 跳过刷新。
如果您看到一致的 FAILED 条目,请参阅 刷新失败。
如果您看到 SCHEDULED 或 EXECUTING 条目卡顿很长时间,请参阅 监控动态表性能。
跳过刷新¶
动态表按时间表刷新。计划刷新开始时,以下情况可能会导致跳过刷新:
如果正在刷新的动态表上游有另一个动态表,而上游的刷新失败或被跳过。
如果动态表的上一个刷新仍在运行。
如果动态表的刷新时间通常比目标滞后时间长,或目标滞后和实际滞后之间存在显著差异,Snowflake 可能会跳过刷新以降低未来的跳过率。
例如,如果动态表的目标滞后为 1 分钟,但通常需要一小时才能刷新,则系统会相应地调整“实际滞后”。
要提高刷新性能,请参阅 优化动态表性能。
手动刷新永远不会跳过,但可能会导致跳过其他计划的刷新,特别是在对动态表执行频繁的手动刷新时。这样做会阻止下游动态表刷新。因此,如果某动态表具有根据目标延迟进行刷新的下游动态表,Snowflake 建议您避免频繁地对该动态表执行手动刷新。
刷新失败¶
刷新失败通常是由于动态表的查询定义问题、输入数据(例如,解析错误)或上游失败问题造成的。
查找失败的刷新¶
要查找失败的刷新,请查询刷新历史记录:
您还可以使用 Snowsight 中的 Refresh History 页面查看失败的刷新。Source Data Timestamp 列显示上次成功刷新的时间。刷新失败不会提高此值。如果远远落后于目标滞后,则动态表存在滞后。
诊断刷新的失败¶
使用 Query Profile,通过选择每个刷新旁的 Show query profile 来进行故障排除。这会显示查询的执行图表。
使用 Snowsight 中的 Graph 视图来可视化依赖关系。失败或暂停的上游动态表会导致其下游动态表失败。有关更多信息,请参阅 查看连接到动态表的表图形。
查询事件表以查找故障¶
您可以查询事件表以查找动态表中的刷新失败:
有关配置事件表和设置警报的更多信息,请参阅 动态表的事件表监控和警报。