hadoop 原始碼分析一

2021-08-25 16:28:33 字數 605 閱讀 4861

inputformat

inputsplit:繼承自writable介面,因此乙個inputsplit實則包含了四個介面函式,讀和寫(readfields和 write),getlength能夠給出這個split中所記錄的資料大小,getlocations能夠得到這個split位於哪些主機之上 (blklocations[blkindex].gethosts()),這裡需要說明的是乙個block要麼對應乙個split,要麼對應多個 split,因此每個split都可以從它所屬的block中獲取主機資訊,而且我猜測block的大小應該是split的整數倍,否則有可能乙個 split跨越兩個block。

recordreader:其實這個介面主要就是為了維護一組鍵值對,任何乙個實現了該介面的類的建構函式都需要是 「(configuration conf, class< ? extends inputsplit> split)」的形式,因為乙個recordreader是有針對性的,就是針對某種split來進行的,因此必須得與某種split繫結起來。這個介面 中最重要的方法就是next,在利用next進行讀取k和v時,需要先通過createkey和createvalue來建立k和v的物件,然後再傳給 next作為引數,使得next對形參中的資料成員進行修改。

Hadoop原始碼分析 第一章 Hadoop指令碼

詳細的內容放在附件中,以下列出大綱,以後會陸續有新的章節放出 第一章指令碼部分寫作大綱,包含以下主題 大綱 1.介紹的集群啟動過程並畫出執行序列圖,用一段文字對整體執行過程進行說明 2.說明集群啟動和停止的方式有哪幾種 start all.sh sop all.sh 和start dfs.sh st...

hadoop原始碼解讀一

開啟已經編譯的hadoop資料夾,bin 看來像hadoop下的各種服務和元件,有cotainer,hdfs,mapred,yarn sbin hadoop各項服務的啟動指令碼,配置指令碼 反正裡面全是指令碼 設定各方面的都有 etc 各項的配置檔案,只要可以配置的都在裡面,包括dfs配置,排程器配...

Hadoop 中 IPC 的原始碼分析

最近開始看 hadoop 的一些原始碼,展開hadoop的原始碼包,各個元件分得比較清楚,於是開始看一下 ipc 的一些原始碼。ipc模組,也就是程序間通訊模組,如果是在不同的機器上,那就可以理解為 rpc 了,也就是遠端呼叫。事實上,hadoop 中的 ipc 也就是基於 rpc 實現的。使用 s...