0
我有一個MR作業準備就緒。 到目前爲止,我正在通過致電./bin/hadoop jar jarname
運行任務。運行映射從另一個java進程減少任務
現在我必須從另一個java進程運行相同的MR作業。我怎樣才能做到這一點?
謝謝。
我有一個MR作業準備就緒。 到目前爲止,我正在通過致電./bin/hadoop jar jarname
運行任務。運行映射從另一個java進程減少任務
現在我必須從另一個java進程運行相同的MR作業。我怎樣才能做到這一點?
謝謝。
如果您確實想從外部Java程序使用hadoop jar
運行,您可以嘗試ProcessBuilder。
ProcessBuilder probuilder = new ProcessBuilder("hadoop jar...");
// Start the process and wait for it to finish.
Process process = processBuilder.start();
//Read output
InputStream is = process.getInputStream();
InputStreamReader ir = new InputStreamReader(is);
BufferedReader br = new BufferedReader(ir);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
int exitStatus = process.waitFor();
System.out.println("Job finished with status: " + exitStatus);
這會給我Hadoop MR任務執行狀態嗎? – LPD
是的,請嘗試一下。你可以看到,我正在打印輸入流。 –
好吧會做到這一點..謝謝一噸:) – LPD