如何计划雪花使用情况监控

时间:2019-10-11 15:15:08

标签: snowflake-data-warehouse

雪花基本上是一个云数据仓库。 Snowflake的基本工作单位是查询。要监视负载,我们需要以一定的时间间隔监视查询负载。

两个可用选项

1.  INFORMATION_SCHEMA Schema
2.  ACCOUNT_USAGE Schema

这两个架构都包含QUERY_HISTORY视图。在这里,可以使用任何一个架构创建监视仪表板。但是我们需要了解这些模式的局限性,以下是我们的发现

在QUERY_HISTORY中查看

INFORMATION_SCHEMA :仅包含10,000条记录。在这种情况下,无法预测结果数据是否属于期望的持续时间。由于可以根据当时的流量插入1万行。在这种情况下,INFORMATION_SCHEMA结果可能会不一致。     它包含14天间隔的数据或1万条记录。

ACCOUNT_USAGE :包含1年的数据,延迟45分钟。

结论: 在这种情况下,所需的数据分析是连续的,而不是仅使用INFORMATION_SCHEMA进行。

以防万一,所需的数据分析可能需要比使用ACCOUNT_USAGE模式多45分钟的延迟。

1 个答案:

答案 0 :(得分:1)

使用内部工具,我们以10分钟的分辨率对INFORMATION_SCHEMA进行轮询,如果当前块不包含当前块,我们甚至可以继续轮询,如果是,则在批次中添加第一次得到10K的结果。

然后将其扔到InfluxDB中,以便我们可以对其进行图形化显示和警报。主要缺点是,获取历史记录的查询本身就是一个查询,因此,如果您遇到队列时间(并且正在使用同一仓库也有延迟)和一个较旧的问题,如果您饱和了帐户连接限制,则无法进入,以查看导致帐户饱和的原因,在这种状态下,您也无法登录UI。为了解决这个问题,我们对所有工具都设置了限制,所以请不要超出限制。

我们目前每天要进行约300-400K次查询,上述方法对我们来说效果很好。