我已經寫了一個MapReduce作業,需要3個命令行參數 - 關鍵字,輸入路徑,輸出路徑。它會計算關鍵字在輸入文件中出現的次數並輸出相同的次數。我想創建一個網頁(可能使用Apache Tomcat),其中它將關鍵字作爲輸入。當我點擊提交時,它應該觸發MapReduce作業並將結果輸出到網頁上。這怎麼可能 ?。 我曾嘗試以下鏈接所有的答案,他們沒有工作鏈接MapReduce作業與網頁
如果有可能,請提供樣本工作代碼。這將是非常有益的
我已經寫了一個MapReduce作業,需要3個命令行參數 - 關鍵字,輸入路徑,輸出路徑。它會計算關鍵字在輸入文件中出現的次數並輸出相同的次數。我想創建一個網頁(可能使用Apache Tomcat),其中它將關鍵字作爲輸入。當我點擊提交時,它應該觸發MapReduce作業並將結果輸出到網頁上。這怎麼可能 ?。 我曾嘗試以下鏈接所有的答案,他們沒有工作鏈接MapReduce作業與網頁
如果有可能,請提供樣本工作代碼。這將是非常有益的
好MapReduce工作基本上是專爲在後臺運行的批處理和批處理過程,而不是互動哪些在這種情況下,你想要的。但也有一些事情可以
,如果你使用的是Java初始化工作中的驅動程序 布爾成功= job.waitForCompletion(真) 這將啓動MapReduce工作,並會等到MapReduce工作完成。此時,您可以從輸出目錄中收集結果
啓動mapreduce作業後,您可以開始在hdfs中彙集輸出目錄。一旦mapreduce作業完成,則在輸出目錄的根目錄中創建一個單一的文件_SUCCESS。所以你要等到這個文件出現在hdfs輸出目錄中,這表明作業已經完成。閱讀輸出的所有文件可怕的,在網頁的過程和顯示效果
沙赫扎德
是什麼不是上面的鏈接工作?他們似乎給你所需的一切。如果您已經撰寫了MR作業,大部分代碼應該對您很熟悉。 –
你現在怎麼調用MapReduce作業 - 使用hadoop jar?您提供的鏈接允許調用作業,但不顯示輸出文件。你打算在哪裏運行Web服務器 - 在主服務器上? '我已經在以下鏈接上嘗試了所有答案,並且他們不工作 - 你卡在哪裏? – Jedi
我在第二個鏈接的第二個答案中編寫了解決方案。該網頁已創建,當我點擊提交時,它顯示資源文件/ CallJobFromServlet未找到,經過一些調整,它開始在瀏覽器上顯示源代碼CallJobFromServlet。 Thomas的第一個答案是您爲每個MapReduce作業編寫的簡單主函數。我沒有看到他將它與網絡服務器連接起來 –