雪花零副本克隆账单

时间:2019-12-02 18:36:16

标签: snowflake-data-warehouse

摘自雪花文件clone storage usage。 克隆组中的每个表都有一个独立的生命周期,有时需要将这些表中存储的所有权转移到克隆组中的另一个表中。例如,考虑一个包含以下内容的克隆组:

T1 >> T2 >> T3

T1有10M数据,(p0=5M + p1=5M) T1T2共享5M数据(Partition1 -> p1)

T2有1500万数据,(p1 + p2=5M + p3=5M) T2T3共享1000万个(p1 + p2)数据

T3有1200万数据,(p1 + p2 + p4=2M) T3T2总共共享10M数据。 (p1 + p2)

如果时间旅行窗口为零。 T2被删除:

p1仍然是t1的所有权,并由t3引用吗? p2的所有权将从t2转移到t3

t2删除后的总存储使用量为 p0 + p1 + p2 + p4 = 5 + 5 + 5 + 2 = 17

1 个答案:

答案 0 :(得分:2)

编辑:根据进一步的研究更新答案

似乎微分区所有权确实会在时间旅行窗口(在本例中为0)之后更改所有权,所以我相信您是正确的

  • p0和p1仍归t1所有
  • p2和p4将归t3所有
  • 您的存储数学看起来正确,应该为17

请参阅Owned Storage vs Referenced Storage文档


相关:存储指标似乎没有变化,即使删除或重命名,它仍将指向原始表。 参见Table Storage Metrics usage notes

  

存储字节始终归表所有并因此计费   最初添加字节的位置。如果随后克隆了该表,   这些初始字节的存储量度永远不会转移到克隆中,   即使从源表中删除了字节。