Ich mag mich irren, aber alle (?) Beispiele, die ich mit Apache Hadoop gesehen habe, nehmen als Eingabe eine Datei im lokalen Dateisystem (zB org.apache.hadoop.examples.Grep)Hadoop: map/reduce von HDFS
Gibt es eine Möglichkeit zum Laden und Speichern der Daten auf dem Hadoop-Dateisystem (HDFS)? Zum Beispiel habe ich eine tabulatorgetrennte Datei namens 'stored.xls' auf HDFS mit hadoop-0.19.1/bin/hadoop dfs -put ~/local.xls stored.xls
. Wie sollte ich die JobConf konfigurieren, um sie zu lesen?
Danke.
Dank, aber es löst eine Ausnahme zu sagen, dass „file: /home/me/workspace/HADOOP/stored.xls“ (dies ist ein lokaler Pfad) nicht existiert. Die Datei in HDFS befindet sich in "/user/me/stored.xls". Ich habe auch einen neuen Pfad ("/ user/me/stored.xls") ausprobiert und es funktioniert auch nicht. – Pierre
Zunächst ist es seltsam, dass sich Hadoop über "file:" und nicht über "hdfs:" beschwert hat. Es könnte sein, dass Ihre hadoop-site.xml falsch konfiguriert ist. Und zweitens, wenn das immer noch nicht funktioniert, geben Sie mkdir ein und setzen stored.xls in das "input" -Verzeichnis (alles mit dem Befehl bin/hadoop fs). Und, neuer Pfad ("Eingabe") statt neuer Pfad ("stored.xls") – yogman
Das Aufdecken Ihrer Befehlszeile zum Ausführen des Jobs würde nicht schaden. – yogman