the directory item limit is exceed: limit=1048576问题的解决

当spark流式数据分析处理跑了一段时间之后,突然会出现报错,如下:


意思就是目录超过了HDFS的文件个数限制。




然而这个问题网上真的不太好找,在定位一番之后,终于明确就是HDFS本身的容量限制问题,而这个正常在配置里面是没有的,只有新增加一行配置才能生效,否则就是按照默认的1048576来处理。


<property>
  <name>dfs.namenode.fs-limits.max-directory-items</name>
  <value>1048576</value>
  <description>Defines the maximum number of items that a directory may
      contain. Cannot set the property to a value less than 1 or more than
      6400000.</description>
</property>


把这个配置添加到hdfs-site.xml中,把值设置为大一些,问题搞定。


不过在此也存在一个问题,这个HDFS的限制有个范围,最多不能超过6400000,因此后续还要考虑到历史数据的删除。


做大数据就是各种坑。在数据不多的时候还真不好发现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值