更新时间:2022-12-07 GMT+08:00
开启或关闭数据多版本
功能描述
DLI提供多版本功能,用于数据的备份与恢复。开启多版本功能后,在进行删除或修改表数据时(insert overwrite或者truncate操作),系统会自动备份历史数据并保留一定时间,后续您可以对保留周期内的数据进行快速恢复,避免因误操作丢失数据。其他多版本SQL语法请参考多版本备份恢复数据。
DLI数据多版本功能当前仅支持通过Hive语法创建的OBS表,具体建表语法可以参考使用Hive语法创建OBS表。
语法格式
- 开启多版本功能
ALTER TABLE [db_name.]table_name SET TBLPROPERTIES ("dli.multi.version.enable"="true");
- 关闭多版本功能
1 2
ALTER TABLE [db_name.]table_name UNSET TBLPROPERTIES ("dli.multi.version.enable");
开启多版本功能后,在执行insert overwrite或者truncate操作时会自动在OBS存储路径下存储多版本数据。关闭多版本功能后,需要通过如下命令把多版本数据目录回收。RESTORE TABLE [db_name.]table_name TO initial layout;
关键字
- SET TBLPROPERTIES:设置表属性,开启多版本功能。
- UNSET TBLPROPERTIES:取消表属性,关闭多版本功能。
参数说明
参数 |
描述 |
---|---|
db_name |
Database名称,由字母、数字和下划线(_)组成。不能是纯数字,且不能以下划线开头。 |
table_name |
表名称。 |
注意事项
DLI数据多版本功能当前仅支持通过Hive语法创建的OBS表,具体建表语法可以参考使用Hive语法创建OBS表。
示例
- 修改表test_table,开启多版本功能。
1 2
ALTER TABLE test_table SET TBLPROPERTIES ("dli.multi.version.enable"="true");
- 修改表test_table,关闭多版本功能。
1 2
ALTER TABLE test_table UNSET TBLPROPERTIES ("dli.multi.version.enable");
回退多版本路径。RESTORE TABLE test_table TO initial layout;
父主题: 修改表