Hadoop中的MapReduce(5)

        在MapReduce中,它也是主從結構,主節點:JobTracker,從節點:TaskTracker。主節點只有一個從節點有不少個,主節點在主機上,從節點分佈到其餘機器上。算法

        JobTrackerapp

                    做用:框架

                            一、負責接收用戶提交的做業;oop

                            二、負責把計算任務分給TaskTracker執行;spa

                            三、監控TaskTracker的執行狀況;日誌

        TaskTracker:orm

                    做用:排序

                            一、執行JobTracker分配的計算任務;接口

            JobClient隊列

                    概念:是用戶做業與JobTracker交互的主要接口。

                     做用:

                            一、負責提交做業,負責啓動;

                            二、跟蹤任務執行;

                            三、訪問任務狀態和日誌等;

Hadoop中基於RPC的通訊協議

                    一、JobSubmissionProtocol:是JobClient與JobTracker通訊的接口。

                                執行過程:TaskTracker每隔一段時間向JobTracker發送hearbeat(心跳機制)提交當前TaskTracker所在機

                                器的內存,CPU,磁盤等狀態信息,是否能夠接收新任務等信息;JobTracker接收到hearbeat

                                給TaskTracker返回須要所作的job或task操做,是否開啓新的任務。TaskTracker能夠從取

                                得JobTracker取得當前文件系統路徑,須要執行Job的Jar文件路徑等.

                           二、InterTrackerProtocol:是TaskTracker與JobTracker通訊的接口。

                                做用:主要用來提交,執行Job和取得當前Job狀態;JobClient能夠經過此協議提交Job(submitJob),

                                          取得當前Job的參數,狀態,Counter,Task狀態,文件系統路徑,jar文件路徑,全部Job的狀

                                          態,還有Job隊列的信息,此外JobClient還能夠提交KillJob和設定Job優先級等任務到                                                          JobTracker。

MapReduce中驅動默認設置

                

InputFormat

TextInputFormat

MapperClass

IdentityMapper

MapOutputKeyClass

LongWritable

MapOutputValueClass

Text

PartitionerClass

HashPartitioner

ReduceClass

IdentityReduce

OutputKeyClass

LongWritable

OutputValueClass

Text

OutputFormatClass

TextOutputFormat


MapReduce中常見的算法

                                一、單詞計數

                                二、數據去重

                                三、排序

                                四、Top k

                                五、選擇

                                六、投影

                                七、分組

                                八、多表鏈接

                                九、單表關聯

MapReduce原理

                        


MapReduce爲何能實現失敗檢測?

                    正是因爲採用了無共享框架,全部MapReduce纔可以實現失敗檢測,這也意味着各個任務之間彼此獨立。

MapReduce做業

                    MapReduce做業(Job)是客戶端須要執行的一個工做單元:它包括輸入數據,MapReduce程序和配置信息等。

                    注意:在MapReduce中不能處理文件名以_(下劃線)開頭的文件.



                                                                                                                 Name:Xr

                                                                                                                 Date:2014-02-23 15:45

相關文章
相關標籤/搜索