Я установил hadoop 2. 6 на Ubuntu 14.04 Мне нужна помощь в его запуске
У меня есть 64-битная Ubuntu 14.04, и я установил кластер с одним узлом hadoop 2.6, и все узлы работают, но когда я пытаюсь поместить образец текстового файла в hdfs, он не работает, я начал изучать hadoop, поэтому, пожалуйста, объясните это было бы полезно. Мне нужна помощь с командой для помещения тестового файла в hdfs и выполнения простых вычислений для текстового файла. учебники, найденные в сети, сбивают с толку, так как некоторые команды различаются для разных версий hadoop и ubuntu.
1 ответ
Чтобы поместить файл в HDFS, вы можете использовать put
команда как показано под:
hadoop fs -put path-in-your-local-filesystem path-in-HDFS
Обратите внимание, что если вы хотите поместить свой файл в новый каталог в HDFS, put
не будет создавать сам каталог. Тебе следует mkdir
сначала как показано: (-p
создавать родительские каталоги по мере необходимости)
hadoop fs -mkdir -p /user/input
hadoop fs -put /home/hduser/Desktop/input-file /user/input
(при условии, что входной файл сохранен на рабочем столе hduser)
Чтобы выполнить вычисления в файле с помощью Hadoop, вам нужно написать map
а также reduce
функции. Я бы посоветовал вам начать с программы Word Count, чтобы начать изучение программирования MapReduce. Вы можете обратиться к Hadoop: Полное руководство.
Затем вам нужно скомпилировать исходный файл Java (скажем, WordCount.java), используя:
sudo javac -classpath /usr/local/hadoop/share/hadoop/common/hadoop-common-2.6.0.jar:/usr/local/hadoop/share/hadoop/common/lib/hadoop-annotations-2.6.0.jar:/usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.6.0.jar WordCount.java
Затем создайте JAR-файл со всеми классами, используя
jar -cvf wc WordCount*.class
где wc - имя недавно созданного фляги.
Затем запустите программу, используя
hadoop jar jar-name main-class-name input-path-in-HDFS output-path-in-HDFS
Для этого примера вы можете использовать
hadoop jar wc WordCount /user/input/input-file /user/output
Он автоматически создаст выходной каталог в HDFS.