Hadoop 请求数据长度 Requested Data length 超过配置的最大值

这篇具有很好参考价值的文章主要介绍了Hadoop 请求数据长度 Requested Data length 超过配置的最大值。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、问题

现象

Spark 任务速度变慢,也不失败。

DataNode 内存足够 CPU 负载不高 GC 时间也不长。

查看 DataNode 日志,发现有些日志出现很多 Netty RPC 超时。超时的 destination 是一个 NameNode 节点,然后查看 NameNode 节点的日志,报错如下:

Hadoop 请求数据长度 Requested Data length 超过配置的最大值,# Hadoop,hadoop,大数据,分布式

二、解决方案

查找对应 Hadopo 源码

源码
org.apache.hadoop.ipc.Server.Connection#checkDataLength

    private void checkDataLength(int dataLength) throws IOException {
      if (dataLength < 0) {
        String error = "Unexpected data length " + dataLength +
                       "!! from " + getHostAddress();
        LOG.warn(error);
        throw new IOException(error);
      } else if (dataLength > maxDataLength) { 
        String error = "Requested data length " + dataLength +
              " is longer than maximum configured RPC length " + 
            maxDataLength + ".  RPC came from " + getHostAddress();
        LOG.warn(error);
        throw new IOException(error);    // <-------------- 异常从此处抛出来
      }
    }

this.maxDataLength = conf.getInt(CommonConfigurationKeys.IPC_MAXIMUM_DATA_LENGTH,
       CommonConfigurationKeys.IPC_MAXIMUM_DATA_LENGTH_DEFAULT);

  /** Max request size a server will accept. */
  public static final String IPC_MAXIMUM_DATA_LENGTH =
      "ipc.maximum.data.length";
  /** Default value for IPC_MAXIMUM_DATA_LENGTH. */
  public static final int IPC_MAXIMUM_DATA_LENGTH_DEFAULT = 64 * 1024 * 1024;


修改NameNode的hdfs-site.xml配置文件,添加以下配置:

<property>
  <name>ipc.maximum.data.length</name>
  <value>67108864</value>
  <description>This indicates the maximum IPC message length (bytes) that can be
    accepted by the server. Messages larger than this value are rejected by the
    immediately to avoid possible OOMs. This setting should rarely need to be
    changed.
  </description>
</property>

64M -> 256M

67108864 * 4 = 268435456

允许ipc通讯最大的数据包为256MB,默认配置为64MB。

最后重启 NameNode,再重启 DataNode。文章来源地址https://www.toymoban.com/news/detail-714510.html

到了这里,关于Hadoop 请求数据长度 Requested Data length 超过配置的最大值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【算法】编写一个函数,返回两个正数的和,有可能超过ulong长度

    编写一个函数,返回两个数字的和。输入数字是字符串,函数必须返回一个字符串。 示例: 添加(“123”,“321”);-“444” 添加(“11”,“99”);-“110” 备注: 输入的数字很大,有可能超过ulong长度。 输入是一个只有数字的字符串。 数字是正数。     算法实现:

    2024年02月14日
    浏览(12)
  • windows 文件夹目录过长超过长度259字符 文件打不开

      当路径超过260个字符时,Windows操作系统就无法处理文件或文件夹,并且无法打开或重命名。这是因为Windows系统使用的文件系统,即FAT和NTFS文件系统,都有最大路径限制。NTFS文件系统最大长度限制为32767个字符,但操作系统和应用程序默认的限制是260个字符。这是由于历史

    2024年02月07日
    浏览(16)
  • The maximum length of cell contents (text) is 32,767 charactersExcel导出单元格长度超长

    一、问题描述 导出excel接口报错,错误信息如下: ava.lang.IllegalArgumentException: The maximum length of cell contents (text) is 32767 characters at org.apache.poi.ss.usermodel.CellBase.checkLength(CellBase.java:309) at org.apache.poi.ss.usermodel.CellBase.setCellValue(CellBase.java:290) 二、定位问题 从错误信息查看源码,定位

    2024年02月16日
    浏览(14)
  • MVC 字符串的长度超过了为 maxJsonLength 属性设置的值 重写result

    报错信息: 字符串的长度超过了为 maxJsonLength 属性设置的值 该属性在system.mvc.jsonresult里,但是没有给他设置值,所以他应该是默认值很小。 想重写这个jsonresult,给这个属性赋一个最大值,就比较稳妥 重写方法: 这里我本来没写构造函数,直接调父类得MaxJsonLength 属性,发

    2024年02月12日
    浏览(15)
  • VUE element-ui之form表单中input输入超过规定长度error提醒,并实时显示输入长度,可无限输入

    需求:输入超过规定长度error提醒,并实时显示输入长度,可无限输入 步骤: 我的项目中使用校验比较多,所以进行简单的封装: 新建js文件写入下面的函数 需要校验的组件引用使用: data中定义: form表单中prop要和rules中定义校验名一致: 看效果: 可以看到我们自定义n

    2024年02月16日
    浏览(17)
  • 【自然语言处理】【长文本处理】RMT:能处理长度超过一百万token的Transformer

    相关博客 【自然语言处理】【大模型】赋予大模型使用工具的能力:Toolformer与ART 【自然语言处理】【长文本处理】RMT:能处理长度超过一百万token的Transformer 【自然语言处理】【大模型】MPT模型结构源码解析(单机版) 【自然语言处理】【大模型】ChatGLM-6B模型结构代码解析

    2024年02月08日
    浏览(12)
  • 【云计算与大数据计算】Hadoop MapReduce实战之统计每个单词出现次数、单词平均长度、Grep(附源码 )

    需要全部代码请点赞关注收藏后评论区留言私信~~~ 下面通过WordCount,WordMean等几个例子讲解MapReduce的实际应用,编程环境都是以Hadoop MapReduce为基础 WordCount用于计算文件中每个单词出现的次数,非常适合采用MapReduce进行处理,处理单词计数问题的思路很简单,在 Map阶段处理每

    2024年02月16日
    浏览(14)
  • JAVA测试报错idsException : Index 0 out of bounds for length 0:意为数组索引越界异常,索引0超出长度0的界限。怎么解决呢?

    报错idsException : Index 0 out of bounds for length 0:意为数组索引越界异常,索引0超出长度0的界限 这段代码本身并没有明显的数组索引越界异常,因为它对line数组中的第一个和第二个元素分别进行了访问,而且在访问之前还没有做数组长度的检查。但是,如果line数组的长度小于

    2024年02月13日
    浏览(11)
  • HTTP POST请求发送form-data格式的数据

    发送请求给 第三方服务的接口 ,且请求报文格式为 multipart/form-data 的数据。支持复杂类型的参数,包含文件类型 4.1.1、 依赖包 4.1.1、 实现

    2024年02月12日
    浏览(12)
  • JAVA实现postman form-data和raw方式请求数据的代码

    java raw方式 的实现代码如下: Url url = new Url(\\\"\\\"); HttpURLConnection connection = (HttpURLConnection ) url.oepnConnection(); connection.setDoOutput(true); connection.setDoInput(true); connection.setUseCaches(false); connection.setInstanceFollowRedirects(true); connection.setRequestMethod(\\\"POST\\\"); connection.setRequestProperty(\\\"Accept\\\",\\\"application/

    2023年04月08日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包