阿里云MaxCompute生命周期操作

MaxCompute提供了数据生命周期管理功能,方便您释放存储空间,简化回收数据的流程。

修改表的生命周期

修改表的生命周期属性的语法格式,如下所示。

ALTER TABLE table_name SET lifecycle days;


说明

  • days参数为生命周期时间,只接受正整数,单位为天。
  • 如果表table_name是非分区表,自最后一次数据被修改开始计算,经过days天后数据仍未被改动,则此表无需您干预,将会被MaxCompute自动回收(类似drop table操作)。
  • 在MaxCompute中,每当表的数据被修改后,表的LastDataModifiedTime将会被更新。因此,MaxCompute会根据每张表的LastDataModifiedTime以及Lifecycle的设置来判断是否要回收此表。
  • 如果table_name是分区表,则根据各分区的LastDataModifiedTime判断该分区是否该被回收。
  • 不同于非分区表,分区表的最后一个分区被回收后,该表不会被删除。
  • 生命周期只能设定到表级别,不能再分区级设置生命周期。
  • 创建表时即可指定生命周期。
  • 非分区表不支持取消Lifecycle,只能修改Lifecycle。分区表可以取消某个具体分区的Lifecycle。

示例如下。

create table test_lifecycle(key string) lifecycle 100;
-- 新建test_lifecycle表,生命周期为100天。
alter table test_lifecycle set lifecycle 50;
-- 修改test_lifecycle表,将生命周期设为50天。

禁止生命周期

特定情况下,部分特定的分区不希望被生命周期功能自动回收掉,例如一个月的月初或双十一期间的数据。此时您可以禁止该分区被生命周期功能回收。

禁止生命周期的语法格式,如下所示。

ALTER TABLE table_name partition_spec ENABLE|DISABLE LIFECYCLE;

示例如下。

ALTER TABLE trans PARTITION(dt='20141111') DISABLE LIFECYCLE;

原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/33567.html

发表评论

登录后才能评论