Hadoop 从纱线边缘读取字节时发生OutOfMemory错误

Hadoop 从纱线边缘读取字节时发生OutOfMemory错误,hadoop,yarn,giraph,Hadoop,Yarn,Giraph,我正在纱线中执行BFS算法,并为顶点上的数据(顶点数据)创建一个自定义值。但是,在我这样做之后,读取边缘的过程出现了一些错误 我将错误追溯到以下代码行: 在ByteArrayEdges中,变量SerializedGesBytesUsed获取值1987015248,并在分配新数组时给出OutOfMemory错误(据我所知,java限制为64K) } 我不知道为什么会发生这种情况,但在使用自定义顶点数据之前,这个问题并不存在 完整的日志在这里(我直接从eclipse进行测试,因为在伪分布式集群中

我正在纱线中执行BFS算法,并为顶点上的数据(顶点数据)创建一个自定义值。但是,在我这样做之后,读取边缘的过程出现了一些错误

我将错误追溯到以下代码行:

  • 在ByteArrayEdges中,变量
    SerializedGesBytesUsed
    获取值
    1987015248
    ,并在分配新数组时给出OutOfMemory错误(据我所知,java限制为64K)

    }

我不知道为什么会发生这种情况,但在使用自定义顶点数据之前,这个问题并不存在

完整的日志在这里(我直接从eclipse进行测试,因为在伪分布式集群中要困难得多):

用于执行此操作的来自终端的行是:

$HADOOP_HOME/bin/yarn jar $GIRAPH_HOME/gaph-examples/target/giraph-examples-1.1.0-for-hadoop-2.4.0-jar-with-dependencies.jar algoritmos.masivos.BusquedaDeCaminosNavegacionalesWikiquotesMasivo lectura_de_grafo.BusquedaDeCaminosNavegacionalesWikiquote -vif pruebas.IdTextWithValueDoubleInputFormat -vip /user/hduser/input/wiki-graph-chiquito.txt -vof pruebas.IdTextWithValueTextOutputFormat -op /user/hduser/output/caminosNavegacionales -w 2 -yh 250
也许我应该使用
EdgeInputFormat


感谢阅读。

我认为实际问题在于分配给Maptask容器的内存不足,这导致Java堆空间错误

要快速解决此问题,您可能希望通过在配置中分配更多内存来扩展纱线映射/减少节点的内存容器

请倾向于为warn-site.xml中的以下属性集分配更多内存

mapreduce.map.memory.mb
mapreduce.reduce.memory.mb

mapreduce.map.java.opts
mapreduce.reduce.java.opts

[注意:*.memory.mb属性应该高于*.java.opts属性]

Hi@hserus,谢谢您的回复。我没有“mapreduce.map.java.opts”或“mapreduce.java.reduce.opts”的任何地方,但我在“纱线环境sh”中有“纱线HEAPSIZE=2048”,在HADOOP env.sh中有“HADOOP\u HEAPSIZE=2048”。我的主节点中只有mapreduce.map.memory.mb和mapreduce.reduce.memory.mb(我有一个3节点集群)。我将尝试在我的主节点中添加*.java.opts属性,并递增预先存在的*.memory.mb值,以查看是否可以使其正常工作。起初这是一个内存错误问题,但解决后,可能会出现另一个问题。。。
$HADOOP_HOME/bin/yarn jar $GIRAPH_HOME/gaph-examples/target/giraph-examples-1.1.0-for-hadoop-2.4.0-jar-with-dependencies.jar algoritmos.masivos.BusquedaDeCaminosNavegacionalesWikiquotesMasivo lectura_de_grafo.BusquedaDeCaminosNavegacionalesWikiquote -vif pruebas.IdTextWithValueDoubleInputFormat -vip /user/hduser/input/wiki-graph-chiquito.txt -vof pruebas.IdTextWithValueTextOutputFormat -op /user/hduser/output/caminosNavegacionales -w 2 -yh 250
mapreduce.map.memory.mb
mapreduce.reduce.memory.mb

mapreduce.map.java.opts
mapreduce.reduce.java.opts