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