Snowflake cloud data platform 插入件情况下的雪花状微隔墙

Snowflake cloud data platform 插入件情况下的雪花状微隔墙,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,如果我们在表中逐个插入数据并且加载整个文件,雪花的微分区是如何工作的? 与从文件中加载数据相比,使用INSERT逐个加载数据会增加微分区的数量吗?不确定问题的目的是什么,但显然批量加载文件比单独插入记录要好得多,而不仅仅是因为您的问题,但也因为实际的负载性能 至于您的问题,Snowflake将确定,如果它有一个记录微分区,并且您要插入一个额外的记录,它将创建一个新的2记录微分区(假设它们不是非常大的记录)。因此,活动表本身不会有更多的微分区,但作为时间旅行和故障保护的一部分,您仍然会有单个记录微

如果我们在表中逐个插入数据并且加载整个文件,雪花的微分区是如何工作的?
与从文件中加载数据相比,使用INSERT逐个加载数据会增加微分区的数量吗?

不确定问题的目的是什么,但显然批量加载文件比单独插入记录要好得多,而不仅仅是因为您的问题,但也因为实际的负载性能

至于您的问题,Snowflake将确定,如果它有一个记录微分区,并且您要插入一个额外的记录,它将创建一个新的2记录微分区(假设它们不是非常大的记录)。因此,活动表本身不会有更多的微分区,但作为时间旅行和故障保护的一部分,您仍然会有单个记录微分区。所以,如果你一次做一个记录,一遍又一遍,你会有很多额外的微分区需要支付


在Snowflake中插入单记录不是一个好主意。值得研究批量加载的方法。

但是微分区在一段时间后开始,它会将所有新记录重新排列到微分区中,即使在批量插入中,它也必须逐个记录进行重新排列。因此,批量加载或少量加载记录的情况就不同了。如果你说的是压缩和列化,那么这些都是在创建微分区之前在仓库中完成的。如果您指的是集群,这是由事后服务完成的,实际上与这个问题无关。我的问题是,在snowflake中,数据存储在微分区中,因此,例如,如果我们使用insert语句加载1000行,并从文件中加载相同的1000行,那么哪种情况下会有更多的微分区文件或insert文件(如果插入)1个大容量insert语句中有1000行,而不是从文件中复制到,那么微分区计数将是相同的。如果你一次插入一条记录,1000次,那么我的答案就在上面。