MapReduce 计算框架如何运作
learn from 從0開始學(xué)大數(shù)據(jù)(極客時間)
1. MapReduce 作業(yè)啟動和運(yùn)行機(jī)制
作業(yè)涉及三類關(guān)鍵進(jìn)程:
-
大數(shù)據(jù)應(yīng)用進(jìn)程
這類進(jìn)程是啟動 MapReduce 程序的主入口,主要是指定 Map 和 Reduce 類、輸入輸出文件路徑等,并提交作業(yè)給 Hadoop 集群(JobTracker 進(jìn)程) -
JobTracker 進(jìn)程
這類進(jìn)程根據(jù)輸入數(shù)據(jù)量,命令下面提到的 TaskTracker 進(jìn)程啟動相應(yīng)數(shù)量的 Map 和 Reduce 進(jìn)程任務(wù),并管理整個作業(yè)生命周期的任務(wù)調(diào)度和監(jiān)控
JobTracker 進(jìn)程在整個 Hadoop 集群全局唯一 -
TaskTracker 進(jìn)程
負(fù)責(zé)啟動和管理 Map 進(jìn)程、 Reduce 進(jìn)程
因?yàn)槊總€數(shù)據(jù)塊都有對應(yīng)的 map 函數(shù),TaskTracker 進(jìn)程通常和 HDFS 的 DataNode 進(jìn)程啟動在同一個服務(wù)器
JobTracker 進(jìn)程和 TaskTracker 進(jìn)程是主從關(guān)系:
- 主服務(wù)器負(fù)責(zé) 分配服務(wù)器資源、作業(yè)執(zhí)行的調(diào)度
- 從服務(wù)器完成具體的計算操作
2. MapReduce 數(shù)據(jù)合并與連接機(jī)制
分布式計算需要將不同服務(wù)器上的相關(guān)數(shù)據(jù)合并到一起進(jìn)行下一步計算,這就是 shuffle
總結(jié)
以上是生活随笔為你收集整理的MapReduce 计算框架如何运作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 运算符、表达式、语句
- 下一篇: LeetCode 2136. 全部开花的