Hadoop學習中的一些概念區分
1. Namenode、Datanode、Jobtracker、Tasktracker區別
-
Hadoop的叢集是基於master/slave模式,namenode和jobtracker屬於master,datanode和tasktracker屬於slave,master只有一個,而slave有多個。
-
SecondaryNameNode記憶體需求和NameNode在一個數量級上,所以通常secondary NameNode(執行在單獨的物理機器上)和 NameNode 執行在不同的機器上。
-
JobTracker對應於NameNode,TaskTracker對應於DataNode.
DataNode和NameNode是針對資料存放來而言的,JobTracker和TaskTracker是對於MapReduce執行而言的。
mapreduce中幾個主要概念,mapreduce 整體上可以分為這麼幾條執行線索:jobclient,JobTracker與TaskTracker。
-
JobClient會在使用者端通過JobClient類將已經配置引數打包成jar檔案的應用儲存到hdfs,並把路徑提交到Jobtracker,然後由JobTracker建立每一個Task(即 MapTask 和 ReduceTask) 並將它們分發到各個TaskTracker服務中去執行。
-
JobTracker是master服務,軟體啟動之後JobTracker接收Job,負責排程Job的每一個子任務。task運行於TaskTracker上,並監控它們,如果發現有失敗的task就重新執行它。一般情況應該把JobTracker 部署在單獨的機器上。
-
TaskTracker是執行在多個節點上的slaver服務。TaskTracker主動與JobTracker通訊,接收作業,並負責直接執行每一個任務。 TaskTracker 都需要執行在HDFS的DataNode上。
參考來源:
作者:XiaoYu_0204
來源:CSDN
原文:https://blog.csdn.net/qq_38295166/article/details/79751032
版權宣告:本文為博主原創文章,轉載請附上博文連結!