【问题标题】:Snowflake Query Profile - Total Execution Time雪花查询配置文件 - 总执行时间
【发布时间】:2021-12-28 19:13:05
【问题描述】:

我们在 Snowflake 中运行了一个查询,报告“总执行时间”为 3 分 50 秒。在查看查询配置文件以查看哪些节点花费的时间最多后,“最昂贵的节点”仅加起来 159 毫秒。其余节点最多只能加起来 296 毫秒。所以我们总共可能有 455 毫秒或不到半秒。 “总执行时间”的另外 3 分 49 秒从何而来?这是查询配置文件的几个片段。

Total Execution Time

Most Expensive Nodes

【问题讨论】:

    标签: snowflake-cloud-data-platform


    【解决方案1】:

    您的查询是否有多个阶段,例如顶部的 1001,2001。当仓库执行失败并重新启动时,可能会发生这种情况。这是超长总处决的原因之一。如果在发布后您在最新版本的软件上开始执行,但在失败的情况下回滚到以前的版本,则可能会发生这种情况。

    但很可能系统正在等待锁定的表。

    通过列出查询 ID 的 query execution stats 应该可以观察到这两种情况。

    【讨论】:

    • 查询配置文件中只有一个阶段。我得到了查询执行统计信息,它没有报告“TRANSACTION_BLOCKED_TIME”的任何内容。在实时查看查询配置文件时,我发现唯一奇怪的是扫描的字节数。在总执行时间的大部分时间里,它都停留在 97%。也没有排队时间。
    • 还想补充一点,没有溢出到本地或远程存储。我可以一遍又一遍地运行相同的查询,以便从缓存中扫描所有数据,但即使节点加起来不到半秒,运行仍然需要三分钟以上。
    • @IADataPlatform 如果QUERY_HISTORY 的列总数加起来不接近总数,我会提交错误报告
    猜你喜欢
    • 1970-01-01
    • 2021-09-21
    • 2022-01-20
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多