
# CLEANARCHIVE
#### 命令功能
用于对Hudi表的归档文件进行清理，以减少Hudi表的数据存储及读写压力。
#### 命令格式
- 按文件容量进行清理，需要配置参数：
  ```
  hoodie.archive.file.cleaner.policy = KEEP_ARCHIVED_FILES_BY_SIZE;
  hoodie.archive.file.cleaner.size.retained = 5368709120;
  ```
  提交SQL
  ```
  run cleanarchive on tableIdentifier/tablelocation;
  ```
  
- 按保留时间进行清理，需要配置参数：
  ```
  hoodie.archive.file.cleaner.policy = KEEP_ARCHIVED_FILES_BY_DAYS;
  hoodie.archive.file.cleaner.days.retained = 30;
  ```
  提交SQL
  ```
  run cleanarchive on tableIdentifier/tablelocation;
  ```
  
 
#### 参数描述
表1参数描述 
| 参数                                        | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|
| tableIdentifier                           | Hudi表的名称。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| tablelocation                             | Hudi表的存储路径。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| hoodie.archive.file.cleaner.policy        | 清理归档文件的策略：目前仅支持KEEP_ARCHIVED_FILES_BY_SIZE和KEEP_ARCHIVED_FILES_BY_DAYS两种策略，默认策略为KEEP_ARCHIVED_FILES_BY_DAYS。 - KEEP_ARCHIVED_FILES_BY_SIZE策略可以设置归档文件占用的存储空间大小  - KEEP_ARCHIVED_FILES_BY_DAYS策略可以清理超过某个时间点之外的归档文件   |
| hoodie.archive.file.cleaner.size.retained | 当清理策略为KEEP_ARCHIVED_FILES_BY_SIZE时，该参数可以设置保留多少字节大小的归档文件，默认值5368709120字节（5G）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| hoodie.archive.file.cleaner.days.retained | 当清理策略为KEEP_ARCHIVED_FILES_BY_DAYS时，该参数可以设置保留多少天以内的归档文件，默认值30（天）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
   
#### 注意事项
- 归档文件，没有备份，删除之后无法恢复。
- 使用由DLI提供的元数据服务时，本命令不支持使用OBS路径。
 
#### 系统响应
可以检查任务状态是否成功，查看任务日志确认有无异常。
