
# 配置HDFS快速关闭文件功能
#### 操作场景
默认情况下关闭HDFS文件时需要等待所有的Block都上报成功（处于COMPLETED状态）。因此HDFS的一部分写性能消耗为等待DataNode块上报以及NameNode处理块上报。对于一个负载较大的集群，等待的消耗对集群影响较大。HDFS可以通过配置NameNode参数"dfs.namenode.file.close.num-committed-allowed"来提前关闭文件，提升写数据性能。但是由于提前关闭了文件，可能在读取数据的时候由于块找不到或者NameNode元数据中记录的数据块信息和DataNode中存储的真实副本不一致而失败。**因此该特性不适用于写完数据即读的场景，请结合业务场景谨慎使用该特性。**
![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
该功能适用于MRS 3.2.0-LTS.1及之后版本。
#### 操作步骤
1. 登录FusionInsight Manager页面。
2. 选择"集群 \> 服务 \> HDFS \> 配置 \> 全部配置"进入HDFS全部配置页面。
3. 搜索并修改"dfs.namenode.file.close.num-committed-allowed"参数，配置项详细说明如下表。 
   
   | 参数                                            | 参数说明                                                                                                                                                                                     |
   |:---|:---|
   | dfs.namenode.file.close.num-committed-allowed | 关闭文件时，允许待关闭文件中处于COMMITTED状态的Block的数量。 默认为：0，即关闭该特性。如果开启该特性，一般建议值为1\~2，不建议太大。 例如：如果该参数值为1，则表示无需等待最后一个Block状态变成COMPLETED即可关闭文件。 |
      
   
   
4. 参数修改后保存配置。
5. 在HDFS"实例"界面，勾选主备NameNode实例，选择"更多 \> 滚动重启实例"，等待滚动重启完成生效。
 
