Как запустить программу подсчета слов в hadoop 2.6.0, установленном в Ubuntu 14.04? [закрыто]


-1
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

Я не понимаю команду, которую мне нужно написать вместо javac -classpath.


Ответы:


2

Вы также должны добавить путь к выходной папке назначения для файлов классов в вашей команде.

Следуй этим шагам.

  • Создайте каталог назначения для файлов классов. Например, это называется intersect_classes .

    mkdir intersect_classes
    
  • Скомпилируйте программу.

    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 -d intersect_classes WordCount.java
    
  • Создайте банку "intersect.jar"

    jar -cvf intersect.jar -C intersect_classes/ .
    
  • Скопируйте входной файл из локального источника в файловую систему hadoop

    bin/hadoop dfs -put <path of input in localFileSystem>/inputfile <path of input in HDFS FileSystem>/inputfile
    
  • Запустите приложение:

    bin/hadoop jar intersect.jar Intersect <path of input in HDFS FileSystem>/inputFile <paht of output in HDFS FileSystem>/output
    
  • Выход:

    bin/hadoop dfs -cat <path of output in HDFS FileSystem>/output/*
    

Выходная папка может содержать более одного выходного файла в зависимости от количества редукторов. Содержимое точного файла можно просмотреть, заменив '*' именем файла, присутствующим в выходной папке.

  • Извлеките выходной файл из файловой системы hadoop в локальное место назначения:

    bin/hadoop dfs -get <path of output in HDFS FileSystem>/output <path of output in HDFS FileSystem>/output
    

Хотя это может теоретически ответить на вопрос, было бы предпочтительным включить здесь основные части ответа и предоставить ссылку для справки.
Тим

@Tim, содержание вопроса написано плохо, поэтому я предпочитаю отвечать на вопрос, просто рекомендуя ссылку.
Акшай Пратап Сингх

Плохой вопрос не означает, что вы не можете дать хороший ответ.
Тим

@Tim и Pilot6, я отредактировал свой ответ и добавил соответствующие шаги, которые необходимо выполнить, чтобы решить эту проблему.
Акшай Пратап Сингх

Как мы находим путь ввода в файловой системе HDFS?
Винеет Каушик
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.