修改hive内存限制

错误:

GB physical memory used; 4.7 GB of 2.1 GB virtual memory used. Killing container.
Dump of the process-tree for container_1454126356092_0026_01_000373

<property>
        <name >mapred.child.java.opts</name>
        <value>-Xmx3024m </value>
    </property>
    <property>
        <name>mapreduce.reduce.memory.mb</name>
        <value>4096</value>
    </property>
    <property>
        <name>mapreduce.map.memory.mb</name>
        <value>4096</value>
    </property>
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Hive内存溢出的处理方法如下: 1. 增加集群的物理内存:如果集群的物理内存比较小,可以考虑增加物理内存。 2. 调整Hive的Java虚拟机内存设置:可以通过修改Hive的Java虚拟机内存设置来避免内存溢出。可以通过在Hive CLI或Hive的配置文件中设置以下参数来调整Java虚拟机内存设置: - hive.heapsize:设置Hive CLI的堆大小,单位为MB,默认为200MB。 - hive.exec.dynamic.partition.mode:设置分区模式,可以设置为strict、nonstrict或strictstrict,默认为strict。 - hive.exec.max.dynamic.partitions:设置最大动态分区数,默认为1000。 - hive.exec.max.dynamic.partitions.pernode:设置每个节点的最大动态分区数,默认为100。 - hive.exec.reducers.bytes.per.reducer:设置每个reducer处理的数据量大小,单位为字节,默认为1GB。 3. 调整Hive查询的输入文件大小:可以通过增加Hive查询的输入文件大小来减少内存使用量。可以通过以下方式来增加输入文件大小: - 压缩输入文件:可以使用压缩算法来压缩输入文件,以减少内存使用量。 - 增加输入文件的块大小:可以通过增加输入文件的块大小来减少内存使用量。 4. 优化Hive查询:可以通过优化Hive查询来减少内存使用量。可以通过以下方式来优化Hive查询: - 避免使用大表连接:可以通过避免使用大表连接来减少内存使用量。 - 使用分区表:可以通过使用分区表来减少内存使用量。 - 使用Bucket表:可以通过使用Bucket表来减少内存使用量。 - 使用MapReduce Combiner:可以通过使用MapReduce Combiner来减少内存使用量。 以上是Hive内存溢出的处理方法,根据具体情况选择相应的方法来解决。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值