2016-06-24 6 views
0

私はmapreduceジョブをインターネットから取得しようとしています。この仕事は入力として 'points.dat'ファイルを取り込み、k-meansクラスタリングを行います。 'centroids.dat'というファイルと、それ自身の重心と一致する点を持つファイルを生成する必要があります。数ヶ月間はこれが動作していましたが、今は新しいインストールで再実行しようとしています。は、HadoopでMapReduceジョブを実行できません。

私は

bin/hdfs dfs -copyFromLocal ..//..//../home/<myusername>/Downloads/points.dat 

を作ったすべてが正常であると、ファイルはHDFS上の/ユーザー//パス内のWebサービスツールに表示されます。 JPSは、jarファイルが引数を要求

okです:

<input> <output> <n clusters> 

ので、私はそれで/ユーザー "centroids.dat" ファイル/アウト/ディレクトリが作成されます

bin/hadoop jar ../../../home/<myusername>/Downloads/kmeans.jar /user/<myusername>/ /out 3 

を作りました。私が理解できる限り、 "centroids.dat"を再読み込みして実行しようとします。だから、だから私は、できるだけ多くの質問を短縮しようとしたにFileNotFoundException

を調達するJava

"failed creating symlink /tmp/hadoop-<myusername>/mapred/local/1466809349241/centroids.dat <- /usr/local/hadoop/centroids.dat 

ようないくつかの失敗で終わります。詳細情報が必要な場合は、私

+0

ジャストアイデアをメインクラスに言及するために欠けていると思いませんか?場合によっては、外部のサーバーで作業する場合、これが発生します。 –

+0

私は地元で働いています。しかし、私はLinuxの専門家ではありません。どうすれば確認できますか?メインクラスの – QuasarLex

答えて

0

のための問題は、私はあなたのフォルダ内のファイルを書き込むための権利を持っているか、あなたはあなたのコマンドに

bin/hadoop jar kmeans.jar MainClass input output 
+0

私は のpublic static無効メイン(文字列[] args)を持っているが、例外{ 場合をスローします(引数= 3!){ System.err.println( "使用法:関数kmeans ") ; System.exit(2); } パスの後にメインクラスの名前を置くと "usage:Kmeans .... etc etc"と表示されます – QuasarLex

+0

コードを貼り付けることはできますか?それが機密でない場合。 –

関連する問題