無論我從不同的客戶端服務器提交一堆hadoop作業還是從同一個服務器上提交所有作業,它是否對資源有任何可衡量的影響?我想不是因爲所有的工作都是在集羣中完成的。它是否正確?從哪裏提交hadoop作業,重要嗎?
回答
真的不應該在哪裏提交你的工作。客戶端本身並沒有太多的工作,它使用RPC協議來聯繫服務,然後只是閒置直到作業完成。
此外,最重要的是您使用哪種調度程序來分配資源,這可能會產生最大的差異,並決定分配哪些資源以分配哪些工作。更多關於工作調度here。
這很重要,請檢查我的回覆。 –
在提交給Hadoop集羣的客戶端上唯一需要大量資源的是計算輸入拆分。當輸入數據很大或從同一客戶端提交的作業過多時,由於輸入拆分計算,作業提交可能會變慢。
我無法回想起Hadoop版本或參數,但包含一個可配置參數,用於將提交作業的客戶端的輸入拆分計算移至Hadoop集羣。
有趣的是,您有多少工作需要同時從同一個盒子提交到明顯(超過幾秒鐘)的速度才能提交作業?我剛剛嘗試了在同一個框中同時提交的一些非重要輸入的作業,但我實際上看不到任何重要的資源影響。這看起來像是一個邊緣案例,除非你經常提交工作,否則我不會看到發生的情況,但+1提到它! –
我在Apache論壇上閱讀了這篇文章,並且無法掌握該主題。 –
我不認爲你可以將輸入分割計算移動到「經典」版本的Job Tracker中。紗,您可以使用
「yarn.app.mapreduce.am.compute-拆分式集羣」
我猜移動它,Hadoop的人不想超載作業服務器與輸入分流創建。類似於不爲HDFS中的Namenode分配太多工作的設計決定。
在YARN中,每項工作都有自己的應用程序主控,因此不用擔心超負荷工作跟蹤器等SPOF /瓶頸主控。
在參考原始問題時,客戶端工作必須聯繫到namenode才能獲取塊位置(我已經看到塊存儲類中的部分代碼調用某些元數據的數據節點...不確定無論這些發生在輸入拆分創建期間還是發生在任務追蹤器節點中)。如果您在同一個客戶端節點上處理大量作業,這可能會成爲問題。 如果您正在使用YARN,如果所有這些通信都發生在羣集內,則性能會有所增加。
需要檢查Oozie如何處理這個問題。
希望這有助於! Arun
我發現YARN中集羣端輸入拆分計算的唯一參考是https://issues.apache.org/jira/browse/MAPREDUCE-207,它仍然沒有解決。你的信息來源是什麼? –
- 1. 提交Hadoop作業
- 2. 如何從另一個hadoop作業提交hadoop作業
- 3. Hadoop HDInsight .NET SDK API提交作業
- 4. 提交Hadoop作業有哪些不同的方式?
- 5. 使用p4提交時,-j(選擇作業)選項在哪裏?
- 6. 如何從Web應用程序提交作業到hadoop羣集?
- 7. 從oozie提交豬作業
- 8. 從Hadoop作業中提取JobID等
- 9. Hadoop重用作業對象
- 10. 我們還需要在Spark 2.0.0中提交作業嗎?
- 11. git從GitHub位於哪裏提交?
- 12. 重新提交懸掛作業(開始作業)
- 13. 完成作業後提交批作業
- 14. hadoop FIFO調度不會使提交的作業並行運行?
- 15. 如何將多個作業提交到hadoop羣集
- 16. Hadoop - 在大數據上提交作業的時間
- 17. 鏈接多個hadoop作業,無需等待提交
- 18. 如何在作業提交前將jar分發給hadoop
- 19. 的Hadoop - 提交作業,有很多的依賴(jar文件)
- 20. 在Windows上使用Hadoop 2.6.0提交作業時出錯
- 21. Hadoop:提交作業後客戶端的CPU負載過高
- 22. Hadoop - 編譯成功但提交作業失敗後
- 23. Hadoop YARN作業提交後狀態保持未定義
- 24. 如何通過Yarn,Hadoop提交Spark Scala作業
- 25. 如何像其他Linux用戶一樣提交hadoop作業
- 26. 使用AWS Hadoop集羣設置的Spark作業提交
- 27. 如何從jar提交Dataflow作業?
- 28. 提取hadoop作業的屬性
- 29. Clojure中的Hadoop - 從哪裏開始?
- 30. HTCondor作業提交標籤
不,沒關係。只有調度程序將決定運行哪個作業。 –