MapReduce程式設計五步走

2021-09-09 07:08:33 字數 1324 閱讀 8169

mapreduce全過程的資料都是以鍵值對的形式存在的

hive spark hive hbase 

hadoop hive spark

sqoop flume scala

這裡涉及到乙個偏移量(乙個字元或空格為1位) 

第一行的偏移量為0,內容為「hive spark hive hbase」 

第二行的偏移量為21,內容為「hadoop hive spark」 

第三行的偏移量為39,內容為「sqoop flume scala」

輸入 

mapreduce處理的資料是從hdfs中讀出來的

以偏移量為key,內容value,則存在:

(0,「hive spark hive hbase」)

(21,「hadoop hive spark」)

(39,「sqoop flume scala」)

輸出 將輸入的value中的詞以空格為分割逐個取出來做key,1做value存起來

(hive,1)

(spark,1)

(hive,1)

(hbase,1)

(hadoop,1)

注意:有多少行,map就要迴圈做幾次

輸入 

map的輸出

輸出 相同的key的value進行合併

這裡合併不是進行累加或別的運算,而是合併到乙個集合中

(hive,[1,1,1])

(spark,[1,1])

(hbase,[1])

(hadoop,[1])

.....................

輸入 

shuffle的輸出

輸出 根據業務將value進行合併

例如當前的業務就會將value進行累加

整個mapreduce程式,所有資料以(key,value)形式流動

正常情況下不需要寫** 

僅僅在mapreduce程式執行的時候指定乙個路徑即可

map(key,value,output,context)

key:每行資料的偏移量——基本沒用 

value:每行資料的內容——真正需要處理的內容

不需要寫**

reduce(key,value,output,context)

key:業務需求中的key 

value:要聚合的值

正常情況下不需要寫** 

僅僅在mapreduce程式執行的時候指定乙個路徑即可

SOA成長五步走

幾個月之前,三個soa領導者公司,amberpoint,sonic software和systinet為soa開發推出了乙個成長模型。soa成熟度模型 是基於卡耐基梅隆軟體工程研究所的過程改進方法學上的能力成熟度模型整合 capability maturity model integration,c...

生活減壓五步走

現代社會的生活節奏和工作節奏越來越快,人們承受的壓力也越來越重。無論你是個多麼樂天派的人,也很容易對它束手無策。壓力幾乎每天都來敲我們的門,糾纏不休,驅之不散。各種壓力會使我們的工作效率低下,也可能把我們一天的事都弄得一團糟。那麼,我們有什麼辦法應對嗎?下面介紹的五種減輕壓力的方法,有可能幫助我們找...

理財達人五步走

原文 第乙份,用來做生活費。第二份,用來交朋友 擴大你的人際圈。你的 費可以用掉100元。每個月可以請客兩次,每次150元。請誰呢?記住,請比你有思想的人,比你更有錢的人,和你需要感激的人。每個月,堅持請客,一年下來,你的朋友圈應該已經為你產生價值了,你的聲望 影響力 附加價值正在提公升,形象又好,...