
# 配置HDFS细粒度锁
#### 操作场景
历史版本的HDFS使用了全局锁，读-写互斥，写-写互斥，即全局一把锁。但是实际上并非所有的读-写，写-写操作都会产生资源竞争。因此在该版本汇总引入了细粒度锁特性（FGL）。FGL对全局锁按照目录以及操作类型进行拆分，只有会产生资源竞争的操作才会使用同一个锁。因此极大地提升了写性能。
例如Client1和Client2同时对不相关的目录A、B进行写操作，此时对A和B的操作没有竞争关系，不会持有同一把锁，可以极大提升写性能。
![](https://support.huaweicloud.com/cmpntguide-lts-mrs/public_sys-resources/note_3.0-zh-cn.png)
该功能适用于MRS 3.5.0及之后版本。
#### 操作步骤
1. 使用MRS集群管理员用户（例如**admin**）登录Manager页面。
2. 选择"集群 \> 服务 \> HDFS \> 配置 \> 全部配置"进入HDFS全部配置页面。
3. 搜索并修改"dfs.namenode.fgl.enable"参数，配置项详细说明如下表。 
   
   | 参数                      | 参数说明                           | 备注        |
   |:---|:---|:---|
   | dfs.namenode.fgl.enable | 是否开启细粒度锁特性。开启之后可以有效提升HDFS读写性能。 | 默认为：false |
      
   
   
4. 参数修改后保存配置。
5. 在HDFS"实例"界面，勾选主备NameNode实例，选择"更多 \> 滚动重启实例"，等待滚动重启完成生效。
 
