雪花仓库缓存

时间:2020-09-27 21:09:03

标签: caching snowflake-cloud-data-platform

我在文档的任何地方都找不到此类信息。我想弄清楚缓存在以下情况下的行为:

  • WH向外扩展,附加服务器上的查询是否使用第一台服务器上的缓存?扩展时,是否复制了缓存然后进行了同步?
  • WH会缩减规模,并且缓存中有很多数据-缓存是否被部分截断(由于较小的硬件所致)?
  • 关闭并重新打开WH后,是否可能会恢复缓存?如果可以,可以估计机会吗? 预先感谢您提供的信息

2 个答案:

答案 0 :(得分:1)

要回答直接问的问题:

  • 否,多集群仓库中的每个集群都维护自己的缓存,但是当运行中的集群超过1个时,Snowflake服务将尝试在包含该查询最佳缓存的仓库上执行查询。
  • 按比例缩小时,您将丢失仓库中的节点,并且这些节点的缓存也将丢失。
  • 如果暂停仓库,则会丢失缓存。

答案 1 :(得分:0)

我认为您是在谈论数据缓存(或SSD缓存或本地磁盘缓存)。这样想吧。仓库是节点的集群。这些节点不过是基础云提供商的计算实例。例如,如果是AWS,则这些节点是EC2实例。这些实例中的每一个都附加有SSD,并且当查询从远程存储中检索数据时,SSD会缓存部分或全部表数据(对于AWS,则为S3)。这些缓存将一直可用,直到仓库处于活动状态为止。在此期间,任何需要来自同一表的数据的查询都可以访问SSD缓存中的数据。但是,如果仓库暂停,那么下次恢复时,您可能无法连接到相同的计算节点,因此您可能会完全丢失数据缓存。