2016-06-24 3 views
0

Я пытаюсь запустить задание mapreduce, взятое из Интернета. В этом задании вводится файл «points.dat» и создается кластеризация k-mean. Он должен создать файл centroids.dat и файл с точками, сопоставляемыми с их собственным центроидом. Через пару месяцев это работало, но теперь я пытаюсь перезапустить новую установку.не может запустить работу MapReduce на Hadoop

Я сделал

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

Все хорошо, и появляется файл в средстве веб-службы в/пользователя // путь на HDFS. Jps нормально

В спросы банку арг:

<input> <output> <n clusters> 

так я сделал

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

он создает файл "centroids.dat" в/пользователя/и из каталога /. Насколько я понимаю, он пытается перечитать «centroids.dat» для выполнения. Так заканчивается с некоторыми неудачами, как

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

Так Java поднять FileNotFoundException

Я пытался сократить этот вопрос как можно больше. Если больше информации необходимы, не проблема для меня

+0

просто идея, у вас есть право на запись файлов в папке? Иногда, если вы работаете на внешних серверах, это происходит. –

+0

Я работаю на местном уровне. Однако я не специалист в Linux. Как я могу это проверить? – QuasarLex

ответ

0

Я не думаю, что вам не хватает, чтобы отметить главный класс в вашей команде

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

в главном классе я государственной статической силы основных (String [] арг) бросает исключение { если (арг = 3!) { System.err.println ("Использование: KMeans ") ; System.exit (2); } и, если я поместил имя основного класса после пути, оно печатает «использование: Kmeans .... и т. Д.». – QuasarLex

+0

вы можете вставить код? ??? если он не является конфиденциальным. –

 Смежные вопросы

  • Нет связанных вопросов^_^