Hadoop 配置单元内存不足,即使有两行

Hadoop 配置单元内存不足,即使有两行,hadoop,hive,out-of-memory,Hadoop,Hive,Out Of Memory,我使用以下查询测试了配置单元: create table test (key string, value string) stored as orc; insert into table test values ('a','a'), ('b','b'); select key, count(*) from test group by key; 我得到了内存不足错误: 错误:运行任务时失败:java.lang.RuntimeException:java.lang.OutOfMemoryError

我使用以下查询测试了配置单元:

create table test (key string, value string) stored as orc;
insert into table test values ('a','a'), ('b','b');
select key, count(*) from test group by key;
我得到了内存不足错误:

错误:运行任务时失败:java.lang.RuntimeException:java.lang.OutOfMemoryError:java堆空间 位于org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:157) 位于org.apache.hadoop.hive.ql.exec.tez.TezProcessor.run(TezProcessor.java:137)

我在网上搜索过,但人们通常在处理更大的文件时会出现这种错误。在我的例子中,文件只有两行,我的计算机有14G内存


我已经将/etc/hadoop/conf/hadoop-env.sh hadoop\u HEAPSIZE设置为1024。它不起作用。

首先我增加了tez.runtime.io.sort.mb,但是我得到了这个错误:tez.runtime.io.sort.mb应该大于0,并且应该小于可用的任务内存


然后我按照@Hellmar Becker的建议增加了hive.tez.java.opts(以及一些其他参数)。这解决了问题。

我在创建卡车表时遇到了与此中的ORC相同的错误。您可以尝试使用以下方式压缩ORC存储:

CREATE TABLE XXX STORED AS ORC TBLPROPERTIES ("orc.compress.size"="1024");

我希望这对我有帮助(对我来说,它起作用了)。

尝试了许多解决方案,但都不起作用。利用这项工作的时间-

CREATE TABLE avg_mileage (truckid STRING,avgmpg BIGINT ) STORED AS ORC;

他们也同意它在沙箱中的问题。。。

您检查过Tez的堆空间了吗?您可以在这里找到一些建议: