Компиляция и запуск задачи
В этом шаге мы скомпилируем Java-классы и запустим задачу MapReduce на кластере Hadoop.
Во - первых, нам нужно скомпилировать Java-классы:
javac -source 8 -target 8 -classpath $HADOOP_HOME/share/hadoop/common/hadoop-common-3.3.6.jar:$HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-client-core-3.3.6.jar:. *.java
Эта команда компилирует Java-классы и помещает скомпилированные файлы .class
в текущую директорию. Параметр -classpath
включает пути к библиотекам Hadoop, которые необходимы для компиляции кода, использующего классы Hadoop. Параметры -source
и -target
используются для указания версий исходного Java и целевого байт-кода, чтобы соответствовать версии Java в Hadoop.
Далее, упакуем файлы .class
с помощью команды jar
:
jar -cvf Artifact.jar *.class
Наконец, мы можем запустить задачу MapReduce, и все данные о пустыне уже хранятся в директории HDFS /input
:
hadoop jar Artifact.jar ArtifactDriver /input /output
После выполнения команды вы должны увидеть логи, показывающие прогресс задачи MapReduce. Как только задача завершена, вы можете найти выходные файлы в директории HDFS /output
. И используйте следующие команды, чтобы просмотреть результат:
hdfs dfs -ls /output
hdfs dfs -cat /output/part-r-00000