DataWorks的生命周期主要分为两部分:数据同步时间和表的生命周期。
在数据同步方面,DataWorks会以数据同步的时间作为分区的依据。例如,如果业务系统产生数据的时间被标记为Bizdate,那么就会按照(T+1)加工,一般是每天计算前一天的业务数据。这样,表就会按照这个业务时间来分区,不同的分区就存不同业务系统时间的数据。
对于表的生命周期,这是指从最后一次更新的时间算起,在经过指定的时间后没有变动,则此表(分区)将被MaxCompute自动回收。这个指定的时间就是生命周期。对于非分区表,当LastModifiedTime超过设定的生命周期时长时,MaxCompute会回收这些数据并删除对应的表。而对于分区表,则根据各分区的LastModifiedTime判断该分区数据是否该被回收,当最后一个分区被回收后,该表不会被删除。
您还可以在DataWorks中修改MaxCompute表的生命周期,具体步骤是进入DataWorks的数据源配置页面,找到对应的MaxCompute数据源,然后在数据源配置页面中找到MaxCompute表的配置选项,并点击“编辑”按钮。此外,DataWorks还默认为您创建了天、周、月等9个基础周期粒度,您可以根据实际业务需求,在该周期粒度的基础上,创建更细粒度的时间周期。
表的生命周期(Lifecycle),指表(分区)数据从最后一次更新的时间算起,在经过指定的时间后没有变动,则此表(分区)将被MaxCompute自动回收,这个指定的时间就是生命周期。生命周期回收为每天定时启动,扫描全量分区。
设置生命周期
--创建新表。
CREATE [external] TABLE [if not exists] <table_name>
[(<col_name> <data_type> [default <default_value>] [comment <col_comment>], ...)]
[comment <table_comment>]
[partitioned BY (<col_name> <data_type> [comment <col_comment>], ...)]
--用于创建聚簇表时设置表的Shuffle和Sort属性。
[clustered BY | range clustered BY (<col_name> [, <col_name>, ...]) [sorted BY (<col_name> [ASC | DESC] [, <col_name> [ASC | DESC] ...])] INTO <number_of_buckets> buckets]
--仅限外部表。
[stored by StorageHandler]
--仅限外部表。
[with serdeproperties (options)]
--仅限外部表。
[location <osslocation>]
--生命周期
lifecycle <days>;
--基于已存在的表创建具备相同结构的新表但不复制数据,支持外部表和湖仓一体外部项目中的表。
create table [if not exists] <table_name> like <existing_table_name> [lifecycle <days>];
——参考来源于阿里云官方文档。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。