本文为您介绍MaxCompute表的生命周期概念。

MaxCompute表的生命周期(Lifecycle),指表(分区)数据从最后一次更新的时间算起,在经过指定的时间后没有变动,则此表(分区)将被MaxCompute自动回收。这个指定的时间就是生命周期。

  • 生命授权单位:Days(天),只接受正整数。
  • 如果您为非分区表指定了生命周期,则自最后一次数据被修改的时间(LastDataModifiedTime)起算,经过Days天后数据仍未被改动,则此表将会被MaxCompute自动回收(类似drop table操作)。
  • 如果您为分区表指定了生命周期,则可以根据各个分区的LastDataModifiedTime判断该分区是否应该被回收。不同于非分区表,分区表的最后一个分区被回收后,该表不会被删除。
    说明

    生命周期回收为每天定时启动,扫描全量分区。扫到时,Last modify time需超过Lifecycle指定的时间才回收。

    假设某个分区表生命周期为1天,该分区数据最后一次被修改的时间是17号15点0分。如果18号的回收扫描在15点前扫到这个表(不到一天),则不会回收上述分区。如果19号回收扫描时发现这个表的这个分区Last modify time超过Lifecycle指定的时间,则上述分区会被回收。

  • 生命周期只能设定到表级别,不能在分区级设置生命周期。创建表时即可指定生命周期。
  • 如果您没有为表指定生命周期,则表(分区)不会根据生命周期规则被MaxCompute自动回收。

关于建表时如何指定、修改表生命周期、修改表LastDataModifiedTime等操作,请参见表操作