Первая ошибка проекта "хаос": "Входной путь не существует"
Чтобы настроить простой проект hadoop, я следую этому руководству: http://ebiquity.umbc.edu/Tutorials/Hadoop/23%20-%20create%20the%20project.html
Мой сингл oneoop node работает нормально.
Когда я укажу папку In
, используя этот код:
FileInputFormat.setInputPaths(conf, new Path("In"));
Я получаю эту ошибку:
13/03/03 22:05:27 ERROR security.UserGroupInformation: PriviledgedActionException as:DEVUSER cause:org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: hdfs://localhost:9100/user/DEVUSER/In
В настоящее время папка In
создается в C:\homedir\hadoop-1.0.4\In
Где мне нужно создать папку "В", чтобы она отображалась в hdfs://localhost:9100/user/DEVUSER/In
? Нужно ли обновлять xml файл, чтобы указать на папку в локальной файловой системе?
Ответы
Ответ 1
Сначала вы должны сначала загрузить свои входные файлы в файловую систему HDFS:
bin/hadoop fs -mkdir In
создаст каталог с именем /user/DEVUSER/In
в HDFS.
bin/hadoop fs -put *.txt In
скопирует все *.txt
файлы из текущего каталога в кластер (HDFS).
Вы, кажется, пропустили раздел Загрузить данные из учебника. Следуйте за ней, и ваша проблема должна быть решена.
Ответ 2
Если вы не хотите загружать файл в hdfs, скорее обратитесь к нему из своей локальной системы, попробуйте установить путь ввода таким образом.
FileInputFormat.setInputPaths(conf, new Path("file://path of the In Folder on your File system "));
Ответ 3
Как сказал гарпун, но для какой-то ситуации даже вы попытались создать этот каталог под HDFS, это не будет и даст вам это сообщение: mkdir: `In ': Нет такого файла или каталога
В качестве решения для этого вам необходимо:
bin/hadoop fs -mkdir/tmp/In
а затем скопируйте файлы текстов в кластер HDFS
bin/hadoop fs -put *.txt/tmp/In