如何在使用hadoopjar时增加堆的大小?

uxhixvfz  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(508)

我正在用 hadoop jar 命令。然而,为了让程序运行得更快,我需要增加hadoop的堆大小。我尝试了以下方法,但是没有任何效果(我有hadoopversion2.5),即使是在同一个终端上。

export HADOOP_HEAPSIZE=16384
export HADOOP_OPTS="-Xmx16g"

另一种方法是将以下内容添加到mapred-site.xml文件中,但不幸的是,我不是管理员,所以不能这样做。

<property>
    <name>mapred.child.java.opts</name>
    <value>-Xmx16384m</value>
</property>

有没有其他方法也可以做到这一点?

kiayqfof

kiayqfof1#

在使用hadoop jar时增加堆大小的一种方法对我很有用:

HADOOP_CLIENT_OPTS="-XX:-UseGCOverheadLimit -Xmx16384m" hadoop jar parquetExample.jar

如您所见,您设置了环境变量的值(也适用于其他环境变量,在本例中,我将max size设置为 16384m )在同一条线上 hadoop jar 命令。

ht4b089n

ht4b089n2#

我通过修改hadoop\u client\u opts环境变量解决了这个问题,如下所示。

export HADOOP_CLIENT_OPTS="-Xmx16g $HADOOP_CLIENT_OPTS"

请注意,我使用的程序只在主节点上运行。换句话说,它不是一个分布式应用程序。

相关问题