Hive查询执行失败

时间:2016-11-28 06:35:11

标签: hive

我正在执行一个配置单元查询并且它失败了。 我使用了以下设置的参数。

SET hive.execution.engine=tez ;
SET tez.am.resource.memory.mb=4096;
SET hive.tez.container.size=4096;
set hive.compute.query.using.stats=true;
set hive.stats.fetch.column.stats=true;
set hive.stats.fetch.partition.stats=true;
SET hive.execution.engine=tez ;
SET hive.vectorized.execution.enabled=false;
SET hive.auto.convert.join=false;

我收到了错误。

  

顶点失败,vertexName =地图38,
  vertexId = vertex_1479183638971_463139_1_22,diagnostics = [任务失败,
  的TaskID = task_1479183638971_463139_1_22_000036,
      diagnostics = [TaskAttempt 0 failed,info = [Container container_1479183638971_463139_01_000556完成诊断设置   至[Container failed,exitCode = -104。
      Container [pid = 31713,containerID = container_1479183638971_463139_01_000556]是   超越物理内存限制。当前用法:4.2 GB,4 GB   使用的物理内存;

因此我尝试使用并行选项以下参数仍然会出现一些不同的错误。

SET hive.execution.engine=tez ;
SET tez.am.resource.memory.mb=4096;
SET hive.tez.container.size=4096;
set hive.compute.query.using.stats=true;
set hive.stats.fetch.column.stats=true;
set hive.stats.fetch.partition.stats=true;
SET hive.execution.engine=tez ;
SET hive.vectorized.execution.enabled=false;
SET hive.auto.convert.join=false;
SET tez.am.java.opts=-server -Xmx3276m -Djava.net.preferIPv4Stack=true -XX:+UseNUMA -XX:+UseParallelGC;
SET hive.tez.java.opts=-server -Xmx3276m -Djava.net.preferIPv4Stack=true -XX:+UseNUMA -XX:+UseParallelGC;

我收到了错误。

  

状态:失败
  超出计数器限制:计数器太多:2001 max = 2000 FAILED:   执行错误,返回代码2   org.apache.hadoop.hive.ql.exec.tez.TezTask。超出计数器限制:   计数器太多:2001 max = 2000

请帮帮我。如何让我的查询执行。

先谢谢。

1 个答案:

答案 0 :(得分:0)

SET hive.execution.engine = mr; 它会起作用