Недопустимый JAR при запуске примера HADOOP
Я установил hadoop-2.4.0 в 14.04 LTS,
Я перешел по этой ссылке, успешно выполнил запуск и остановку служб,
но когда я попытался выполнить пример,
$ /bin/hadoop jar hadoop*examples*.jar wordcount /user/hduser/gutenberg /user/hduser/gutenberg-output
и я получаю ответ как,
Not a valid JAR: /hadoop*examples*.jar
РЕДАКТИРОВАТЬ 1
Я установил JAVA 7(т.е. JDK 1.7), и когда я использовал Hadoop-1.0.3, он работает нормально.
Причина проблемы, когда я пытаюсь выполнить с Hadoop-2.4.0.
НОТА
От этого урока моя система отличается следующим:
- Я использую JAVA 7 вместо JAVA 6.
- Я использую Hadoop 2.4.0 вместо Hadoop-1.0.3
- Я использую Ubuntu 14.04 вместо Ubuntu 10.04.
И я могу успешно выполнить HAdoop-1.0.3 с JAVA 7 14.04.
Мой вопрос, почему я не могу запустить то же самое для Hadoop-2.4.0.
4 ответа
Я также следовал тому же учебнику и столкнулся с той же проблемой при последней установке (hadoop 2.7.1). Я должен был изменить это с
$ /bin/hadoop jar hadoop*examples*.jar wordcount /user/hduser/gutenberg /user/hduser/gutenberg-output
в
$ /bin/hadoop jar ./share/hadoop/mapreduce/hadoop-*-examples*.jar wordcount /user/hduser/gutenberg /user/hduser/gutenberg-output
У меня такая же проблема. Вот решение.
ОС - Ubuntu 14.04 64-битная
Java - OpenJDK 7
Hadoop - Hadoop 2.4.1
Шаг 1: создайте каталог hdfs для ввода: hadoop dfs -mkdir -p /usr/local/hadoop/input
Шаг 2: теперь вставьте файл JAR в эту папку с помощью команды hadoop.hadoop dfs -copyFromLocal /home/hduser/Desktop/sample.txt /usr/local/hadoop/input
Шаг 3: Перейдите в папку $HADOOP_HOME/share/hadoop/mapreduce в терминале.cd $HADOOP_HOME/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount /usr/local/hadoop/input/sample.txt /usr/local/hadoop/output
Здесь будет создана папка / usr / local / hadoop / output. Каждый раз вы должны дать новое имя.
ПРИМЕЧАНИЕ: вы не можете просто перечислить папки ввода и вывода, используя ls
в терминале.
Шаг 4: Чтобы просмотреть вывод, используйте это:hadoop dfs -cat /usr/local/hadoop/output/part-r-00000
Этот учебник был протестирован со следующими версиями программного обеспечения:
Ubuntu Linux 10.04 LTS (устарело: 8.10 LTS, 8.04, 7.10, 7.04)
Он не обновлялся с 10.04 по 2012 год. То есть (я думаю, ваша проблема).
14.04 и 10.04 работают совсем по другому...
Sun Java 6
Sun Java больше не доступна в Ubuntu, поэтому, вероятно, она и не работает.
Я использую hadoop-2.7.2 и для решения этой проблемы просто перейдите в каталог hadoop-2.7.2 и вместо того, чтобы писать напрямую hadop*exaples*jar
напишите следующее:
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar