Snowflake中克隆表后删除原表,克隆表是否会丢失?
问题解答
不会丢失。
在Snowflake中,使用CREATE OR REPLACE TABLE "SCHEMA1"."TABLE2_CLONE_FROM_SCHEMA1" CLONE "SCHEMA2"."TABLE2";语句创建的克隆表是独立的时间点快照副本,核心特性如下:
- 克隆操作会完整复制原表的结构、数据、约束及权限配置,生成一个完全独立的新表对象
- 克隆完成后,原表(
SCHEMA2.TABLE2)与克隆表(SCHEMA1.TABLE2_CLONE_FROM_SCHEMA1)之间不存在依赖关联 - 后续对原表执行删除或其他修改操作,都不会影响克隆表的数据和结构
补充说明:Snowflake默认的克隆是零拷贝克隆,初期会共享底层存储以节省空间,但这只是存储层面的优化,逻辑上两个表完全独立。当原表被删除后,Snowflake会自动调整存储的共享关系,克隆表的数据会被完整保留。
内容的提问来源于stack exchange,提问作者Santhosh
相关产品推荐
相关产品推荐

