
# Cleaning
#### 约束与限制
本章节仅适用于MRS 3.3.0-LTS及之后版本。
#### 命令功能
对Hudi表进行cleaning操作，具体作用可以参考[Hudi Cleaning操作说明](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_24089.html)章节。
#### 命令格式
**call run_clean(table=\>'\[table\]', clean_policy=\>'\[clean_policy\]', retain_commits=\>'\[retain_commits\]', hours_retained=\> '\[hours_retained\]', file_versions_retained=\> '\[file_versions_retained\]');**
#### 参数描述
表1参数描述 
| **参数**                | **描述**                                                               | 是否必填 |
|:---|:---|:---|
| table                 | 需要查询Hudi表的表名称，支持database.tablename格式。                                | 是    |
| clean_policy          | 清理老版本数据文件的策略，默认KEEP_LATEST_COMMITS。                                  | 否    |
| retain_commits        | 指定保留最近多少次Commit的数据文件（单位：次）。仅在clean_policy为KEEP_LATEST_COMMITS时生效。    | 否    |
| hours_retained        | 指定保留最近多少小时内的数据文件（单位：小时）。仅在clean_policy为KEEP_LATEST_BY_HOURS时生效。      | 否    |
| file_version_retained | 指定保留每个文件组的最近多少个版本（单位：个）。仅在clean_policy为KEEP_LATEST_FILE_VERSIONS时生效。 | 否    |
   
#### 示例
以下示例中，hudi_table1为表名，需替换为实际的表名。
```
call run_clean(table => 'hudi_table1');
call run_clean(table => 'hudi_table1', retain_commits => 2);
call run_clean(table => 'hudi_table1', clean_policy => 'KEEP_LATEST_FILE_VERSIONS', file_version_retained => 1);
```
#### 注意事项
cleaning操作只有在满足触发条件后才会对分区的老版本数据文件进行清理，不满足触发条件虽然执行命令成功也不会执行清理。
#### 系统响应
可在客户端中查看查询结果。
