我寫使用Hadoop API中的java程序捕獲Java執行的輸出。所以,該Java代碼的輸出是一個jar ..說foo.jar中執行並從蟒
要運行在Hadoop中那個罐子,我做
hadoop jar foo.jar org.foo.bar.MainClass input output
而這個開始很長的Hadoop任務(比如幾分鐘)。
當作業運行.. Hadoop的給我的進步..像
Map 0%, Reduce 0%
Map 20%, Reduce 0%
....
等..作業結束後 ,Hadoop的吐出一堆統計數據(如輸入大小,分割,記錄等).. 所有這一切都是在命令行做..
現在,我試圖做的是..叫蟒蛇這個程序(用簡單的系統執行。)
但我想要的是..當我運行這個python代碼..我也想展示一些這些statistics..but不是所有的..
所以,我在找的是一個方式來捕捉這些統計數據正在被由罐子執行和內部處理它顯示Python和顯示器處理統計..
對於example..By默認情況下,Hadoop的顯示我..
Map 0%, Reduce 0%
Map 20%, Reduce 0%
...
等等..
也許我有什麼是...
def progress_function(map,reduce):
return sum([map,reduce])/2.0
而且我上顯示命令提示符..
progress so far:0
progress so far:10
and so on..
所以長話短說。我有java程序一罐..這當執行吐出一些統計數據..我想從python運行這個Java jar,然後捕獲這些統計數據......然後在python中修改它們並將這些python統計數據顯示給用戶。
聽起來像簡單管道 – Leifingson