1

このトピックに関する投稿をいくつか見ましたが、問題の解決策を見つけることができませんでした。Hadoop バージョン Hadoop 2.0.0-cdh4.2.0、および Java バージョン「1.7.0_09-icedtea」を使用しています。単純な mapreduce の例で、カウンターを使用して相互作用を制御するプログラムを実行しています。また、データ通信にはシーケンスファイルも使用しています。コードは単純です。たとえば、3 などの数字で始まります。マッパーは数字を変更せず、値を送信するだけです。レデューサーは、実行するたびに数値を 1 減らします。数値が 0 より大きい場合、カウンターはインクリメントされます。最終的に、数値は 0 に減少する必要があり、プログラムはその時点で停止する必要があります。ただし、最初の反復後 (2 回目の反復中) に常に次のエラーが発生します。

" Running job: job_201304151408_0181
13/05/10 18:55:54 INFO mapred.JobClient:  map 0% reduce 0%
13/05/10 18:56:03 INFO mapred.JobClient:  map 100% reduce 0%
13/05/10 18:56:10 INFO mapred.JobClient:  map 100% reduce 33%

13/05/10 18:56:11 INFO mapred.JobClient: Task Id : attempt_201304151408_0181_r_000002_0, Status : FAILED
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException): Lease mismatch on /user/harsha/iterone/import/data owned by DFSClient_NONMAPREDUCE_-592566041_1 but is accessed by DFSClient_NONMAPREDUCE_-965911637_1"

誰でも助けてもらえますか?ありがとうございました。

よろしく...

4

1 に答える 1

0

通常、存在しないファイルに書き込もうとすると、リースの不一致が発生します。

/user/harsha/iterone/import/dataにあるかどうかを確認してくださいhdfs

それはファイルですか?

于 2013-11-15T06:25:27.753 に答える