1. ホーム
  2. hadoop

Hiveとは。org.apache.hadoop.hive.ql.exec.MapRedTask からコード2を返す。

2023-12-12 17:29:19

質問

私は取得しています。

FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask

ハイブコンソールのコマンドを使用して、パーティション化されたテーブルのコピーを作成しようとしているとき。

CREATE TABLE copy_table_name LIKE table_name;
INSERT OVERWRITE TABLE copy_table_name PARTITION(day) SELECT * FROM table_name;

最初、意味解析のエラーが出たので、設定しました。

set hive.exec.dynamic.partition=true
set hive.exec.dynamic.partition.mode=nonstrict

上記のプロパティが何をするのかよくわからないが?

ハイブコンソールからのフルアウトプットです。

Total MapReduce jobs = 1
Launching Job 1 out of 1
Number of reduce tasks determined at compile time: 1
In order to change the average load for a reducer (in bytes):
  set hive.exec.reducers.bytes.per.reducer=<number>
In order to limit the maximum number of reducers:
  set hive.exec.reducers.max=<number>
In order to set a constant number of reducers:
  set mapred.reduce.tasks=<number>
Starting Job = job_201206191101_4557, Tracking URL = http://jobtracker:50030/jobdetails.jsp?jobid=job_201206191101_4557
Kill Command = /usr/lib/hadoop/bin/hadoop job  -Dmapred.job.tracker=master:8021 -kill job_201206191101_4557
2012-06-25 09:53:05,826 Stage-1 map = 0%,  reduce = 0%
2012-06-25 09:53:53,044 Stage-1 map = 100%,  reduce = 100%
Ended Job = job_201206191101_4557 with errors
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.MapRedTask

どのように解決するのですか?

それは本当のエラーではありません、ここではそれを見つける方法を説明します。

hadoop jobtracker web-dashboard に行き、失敗した hive mapreduce ジョブを見つけ、失敗したタスクのログを見ます。それは 本当の エラーが表示されます。

コンソール出力のエラーは役に立ちません。これは主に、本当のエラーを引き出すための個々のジョブ/タスクのビューを持っていないためです (複数のタスクでエラーが発生する可能性があります)。

お役に立てれば幸いです。