17

Hadoop 2.0.5 で Apache Pig .11.1 を実行しています。

私が Pig で実行するほとんどの単純なジョブは、問題なく動作します。

ただし、大規模なデータセットで GROUP BY または LIMIT 演算子を使用しようとすると、次の接続エラーが発生します。

2013-07-29 13:24:08,591 [main] INFO  org.apache.hadoop.mapred.ClientServiceDelegate - Application state is completed. FinalApplicationStatus=SUCCEEDED. Redirecting to job history server 
013-07-29 11:57:29,421 [main] INFO  org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)

2013-07-29 11:57:30,421 [main] INFO  org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 1 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)

2013-07-29 11:57:31,422 [main] INFO  org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 2 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)
...
2013-07-29 13:24:18,597 [main] INFO  org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 9 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1 SECONDS)
2013-07-29 13:24:18,598 [main] ERROR org.apache.hadoop.security.UserGroupInformation - PriviledgedActionException as:gpadmin (auth:SIMPLE) cause:java.io.IOException

奇妙なことに、これらのエラーは約 2 分間表示され続けた後、停止し、正しい出力が一番下に表示されます。

したがって、Hadoop は正常に動作し、適切な出力を計算しています。問題は、ポップアップし続けるこれらの接続エラーだけです。

LIMITオペレーターは常にこのエラーを受け取ります。MapReduce モードとローカル モードの両方で発生します。オペレーターはGROUP BY小さなデータセットでうまく機能します。

私が気づいたことの 1 つは、このエラーが表示されるたびに、ジョブがジョブ中に複数の JAR ファイルを作成して実行していたことです。ただし、これらのメッセージがポップアップ表示されてから数分後、最終的に正しい出力が表示されます。

これらのメッセージを取り除く方法について何か提案はありますか?

4

4 に答える 4

33

はい、問題はジョブ履歴サーバーが実行されていないことでした。

この問題を解決するために必要だったのは、コマンド プロンプトに次のコマンドを入力することだけでした。

mr-jobhistory-daemon.sh start historyserver

このコマンドは、ジョブ履歴サーバーを起動します。ここで「jps」と入力すると、JobHistoryServer が実行中であることがわかり、Pig ジョブがサーバーへの接続に時間を浪費しなくなりました。

于 2013-08-01T14:41:43.100 に答える
1

私はHadoop 2.6.0を使用しているので、やらなければなりませんでした

$ mr-jobhistory-daemon.sh --config /usr/local/hadoop/etc start historyserver

ここで、/usr/local/hadoop/etc は私の HADOOP_CONF_DIR です。

于 2016-03-10T11:35:19.343 に答える
0

Hadoop 2.2.0 を使用しています。この問題は、履歴サーバーが実行されていないことが原因でした。履歴サーバーを起動する必要がありました。次のコマンドを使用して履歴サーバーを起動しました。

[root@localhost ~]$ /usr/lib/hadoop-2.2.0/sbin/mr-jobhistory-daemon.sh start historyserver

于 2018-01-10T12:35:30.483 に答える