配置HDFS单目录文件数量
操作场景
通常一个集群上部署了多个服务,且大部分服务的存储都依赖于HDFS文件系统。当集群运行时,不同组件(例如Spark、Yarn)或客户端可能会向同一个HDFS目录不断写入文件。但HDFS系统支持的单目录文件数目是有上限的,因此用户需要提前做好规划,防止单个目录下的文件数目超过阈值,导致任务出错。
HDFS提供了“dfs.namenode.fs-limits.max-directory-items”参数设置单个目录下可以存储的文件数目。
操作步骤
- 请参考修改集群服务配置参数,进入HDFS的“全部配置”页面。
- 搜索配置项“dfs.namenode.fs-limits.max-directory-items”。
表1 参数说明 参数名称
描述
默认值
dfs.namenode.fs-limits.max-directory-items
定义目录中包含的最大条目数。
取值范围:1~6400000
1048576
- 设置单个HDFS目录下最大可容纳的文件数目。保存修改的配置。保存完成后请重新启动配置过期的服务或实例以使配置生效。
用户尽量将数据做好存储规划,可以按时间、业务类型等分类,不要单个目录下直属的文件过多,建议使用默认值,单个目录下约100万条。