
# 使用LakeFormation进行表维护
#### 开通内表服务
LakeFormation表服务配置在创建Iceberg表和编辑Iceberg表时，支持配置表服务选项（仅独享型实例支持），存量实例如需开通表服务功能需执行以下步骤：
1. 登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 在左侧下拉框中选择待操作的LakeFormation实例。
3. 在"总览"页面查看实例"总览"中"是否已开通内表服务"的参数值。 
   如果当前实例已开通，则无"开通内表服务"按钮。
   
   
4. 如果需要为当前实例开通内表服务，请单击页面右上角"开通内表服务"，勾选操作影响后单击"确定"。
![](https://support.huaweicloud.com/devg-aidatalake/public_sys-resources/note_3.0-zh-cn.png)
开通内表服务后，可以创建内表和内部函数，如果需要关闭内表服务，需要彻底清除内表，删除实例时会自动关闭内表服务。
成功开通内表服务功能后，需配置表服务以开启压缩、快照及孤立文件删除功能。
#### 开启压缩
是否将小数据文件合并成更大、更高效的文件，以优化表格性能。
勾选后，需要配置以下压缩参数：
- **压缩策略** ：
  - Binpack：将小文件合并成大文件，通常目标大小为100MB以上，同时执行任何待处理的删除操作。大多数使用场景默认和推荐使用该压缩策略。
  
  - Sort：根据指定的列对数据进行组织，这些列在压缩过程中按层级排序，从而提高过滤操作的查询性能。当查询操作需要频繁对特定列进行过滤时，建议使用此策略。使用前需在列存表属性中使用"sort-order"表属性定义排序顺序。
  
  - Z-Order：通过将多个属性融合为单个标量值来优化数据组织，该标量值可用于排序，从而实现跨多个维度的高效查询。当您需要同时跨多个维度查询数据时，推荐使用此策略。使用前需在Apache Iceberg表的属性中使用"sort-order"表属性定义排序顺序。
   
- **最小输入文件**：触发合并的最小文件数量。最小值3，最大值100，默认值5。
- **合并后文件大小**：合并后期望的文件大小，单位：MB。最小值128，最大值2048，默认值512。
 
#### 开启快照
是否通过删除元数据开销中的旧快照和使不再需要的文件过期来优化表存储。
勾选后，需要配置以下快照保留参数：
- **快照保留时间**：保存时间，单位：小时。最小值24，最大值1440，默认值72。
- **最少保留的快照数**：最少保留的Snapshot数量。最小值1，最大值100，默认值10。
- **删除关联文件** ：是否删除与已过期快照关联的文件。
  快照保留策略在默认配置下会同时删除对应快照的元数据和数据文件，取消勾选"删除关联文件"后可以仅删除数据文件，保留元数据信息。
  
- **执行间隔**：任务执行间隔，单位：小时。最小值1，最大值168，默认值24。
 
#### 开启孤立文件删除
是否定期自动清理孤立文件。
勾选后，需要配置以下孤立文件删除参数：
- **孤立文件保留时间**：孤立文件的保留时间，单位：小时。最小值24，最大值1440，默认值72。
- **执行间隔**：任务执行间隔，单位：小时。最小值1，最大值168，默认值24。
![](https://support.huaweicloud.com/devg-aidatalake/public_sys-resources/note_3.0-zh-cn.png)
- 孤立文件删除策略：会删除没有被元数据引用，被评估为孤立文件的部分。
- 为了保证孤立文件判定的准确性，请确保当前表路径下的文件全都是当前表的数据文件，否则该文件可能会被判定为孤立文件并被删除，该删除操作不可恢复。
 
