當JobTracker將映射任務分配給TaskTracker時,是否需要與NameNode進行通信?或者它可以從InputSplit本身獲取信息? 當我查看代碼時,我看到InputSplits與BlockLocations打包在一起。 JobTracker會使用這些信息還是需要使用Namenode?Hadoop - 文件到塊映射
1
A
回答
0
客戶端計算拆分信息並將它們與拆分信息一起寫入HDFS。
您可以看看Hadoop 1.x JobSplit.SplitMetaInfo
有序列化實現,也序列化的位置。
jobtracker只是選擇這些序列化並對它們進行調度,其中位置只是提示如果插槽可用時更快執行的提示。
0
JobTracker確實聯繫NameNode以獲取塊位置。如果作業處理的塊數量非常大,此過程可能會花費一些時間。
+0
謝謝唐納德。我的困惑與Job Tracker爲什麼要做到這一點有關,因爲InputSplit確實具有關於可以從中獲取數據的可能位置和主機的元數據。謝謝。 – Suresh
+0
InputSplit實際上並不知道。它需要去NameNode找出。 –
相關問題
- 1. Hadoop未找到映射類
- 2. Hadoop術語映射到硬件
- 3. Hadoop:映射二進制文件
- 4. Hadoop:爲映射分組文件
- 5. 處理小文件映射減少hadoop
- 6. Hadoop遞歸映射
- 7. Hadoop Streaming - 外部映射器腳本 - 文件未找到
- 8. Hadoop無法找到映射程序
- 9. Hadoop映射器上下文對象
- 10. 映射到目標文件
- 11. Hadoop的許多映射器
- 12. Hadoop幾個映射器
- 13. Hadoop的流單映射
- 14. hadoop過濾映射輸出
- 15. HADOOP:從映射器發射矩陣
- 16. 如何將內存映射到散列映射到文件
- 17. 訪問hadoop中間映射輸出文件
- 18. STDIN或文件作爲Hadoop環境中的映射器輸入?
- 19. XML文件輸入映射/減少Hadoop Windows服務器
- 20. 讀取hadoop映射中的excel文件reduce
- 21. Hadoop Streaming:映射器'包裝'二進制可執行文件
- 22. 多個輸出文件Hadoop的數據流與Python映射
- 23. 無法從映射器打開文件HDFS Hadoop的
- 24. Hadoop的gzip的輸入文件只有一個映射
- 25. 如何使本地文件系統的映射寫在Hadoop中
- 26. Hadoop流式Python多輸入文件單映射器
- 27. Hadoop按照每個映射工作流多個文件
- 28. hadoop中每個映射器的單個或多個文件?
- 29. Hadoop的2.2映射文件的創建失敗
- 30. 如何在Hadoop中保留映射器中間文件
謝謝托馬斯。所以,這只是一個提示?讓我們看看這個場景。比方說,JobTracker識別要運行的數據是否位於TaskTracker的本地驅動器上,是否會通知TaskTracker?或者TaskTracker會聯繫NameNode來識別這個? – Suresh
沒有這樣的交流。 Jobtracker內部的調度程序將查看「SplitMetaInfo」,如果該位置有可用的槽,它將向tasktracker發送指令以運行具有該輸入的任務。 –
如果數據在機器中沒有(無DataLocal),它的責任是找到數據所在的機器? TaskTracker是否需要與NameNode對話,還是可以使用元數據(包含塊位置)並直接與其他機器通信? – Suresh