2016-03-30 4 views
0

Ich versuche, einen Map-Reduce-Code auszuführen, der in einem Hadoop-Dateisystem vorhanden ist.
Die herkömmliche Art, es auszuführen:
hadoop jar [pfad-zu-jar-datei-in-lokal] [hauptklasse] [args] ...
[pfad-zu-jar-datei-in local] - Meine JAR-Datei befindet sich in HDFS.Wie führe ich eine MapReduce-JAR-Datei aus, die sich in HDFS befindet?

+0

Gibt es einen bestimmten Grund, die JAR-Datei in HDFS zu behalten? Sie können copyToLocal die JAR-Datei versuchen und dann auf die herkömmliche Weise ausführen. – SurjanSRawat

+0

Edge Node Access wurde vom Client deaktiviert, wir haben nur Zugriff auf Hadoop Environment. Es wurden keine Unix-Systemberechtigungen vergeben. –

Antwort

0

Siehe similar question. Alle hadoop-Befehle werden vom Skript bin/hadoop aufgerufen. Für eine JAR-Datei ausführen verwendet es RunJar Klasse, die Code-Schnipsel

int firstArg = 0; 
String fileName = args[firstArg++]; 
File file = new File(fileName); 

wo filename Punkte jarfile hat folgende.

+0

Also in meinem Fall gibt es keine Möglichkeit, eine Map Reduce auszuführen, in HDFS vorhanden? –

Verwandte Themen