如果是掌握hadoop的使用,java基礎(chǔ)好就可以,看看hadoop權(quán)威指南。
想深入學(xué)習(xí)源碼的話,就需要些網(wǎng)絡(luò)編程的知識(shí)了。具體步驟:1.選擇一個(gè)Hadoop的版本,然后閱讀文檔了解Hadoop:What's Hadoop, Why Hadoop exists;2.安裝Hadoop,三種方式都試下;3.在Hadoop文檔里面有Hadoop Command的資料,I.hdfs command,盡量試試這兩方面的命令;4.Hadoop Files,看看Hadoop文件的概念,關(guān)注它的分布式特點(diǎn),然后看Reduce函數(shù)輸出文件;5.自己寫(xiě)WordCount與Advanced WordCount;6.寫(xiě)Sort程序;7.使用RandomTextWriter;8.模仿、、寫(xiě)自己的;9.yahoo有一個(gè)Hadoop的教程,英文版的,里面的內(nèi)容很好;10.《hadoop權(quán)威指南》當(dāng)參考書(shū),自己就可以實(shí)戰(zhàn)了。
如果是掌握hadoop的使用,java基礎(chǔ)好就可以,看看hadoop權(quán)威指南。
想深入學(xué)習(xí)源碼的話,就需要些網(wǎng)絡(luò)編程的知識(shí)了。
具體步驟:
1.選擇一個(gè)Hadoop的版本,然后閱讀文檔了解Hadoop:What's Hadoop, Why Hadoop exists;
2.安裝Hadoop,三種方式都試下;
3.在Hadoop文檔里面有Hadoop Command的資料,I.hdfs command,盡量試試這兩方面的命令;
4.Hadoop Files,看看Hadoop文件的概念,關(guān)注它的分布式特點(diǎn),然后看Reduce函數(shù)輸出文件;
5.自己寫(xiě)WordCount與Advanced WordCount;
6.寫(xiě)Sort程序;
7.使用RandomTextWriter;
8.模仿、、寫(xiě)自己的;
9.yahoo有一個(gè)Hadoop的教程,英文版的,里面的內(nèi)容很好;
10.《hadoop權(quán)威指南》當(dāng)參考書(shū),自己就可以實(shí)戰(zhàn)了!
在平臺(tái)方面,hadoop環(huán)境需要搭建在linux服務(wù)器上,首先需要了解Linux的基礎(chǔ)知識(shí)與命令;
開(kāi)發(fā)方面,hadoop首先是個(gè)提供大數(shù)據(jù)存儲(chǔ)的平臺(tái),因此我們要使用其存儲(chǔ)功能,因此需要掌握其數(shù)據(jù)操作的api(scala api 或者 java api);其次是hadoop是大數(shù)據(jù)分析的數(shù)據(jù)源,熟悉對(duì)大數(shù)據(jù)的 分析/使用 方法(spark/map-reduce技術(shù),都有scala 和 java兩種api)。
因此,學(xué)習(xí)hadoop必須掌握scala或者java中的一門(mén)開(kāi)發(fā)語(yǔ)言,然后在學(xué)習(xí)hadoop數(shù)據(jù)操作命令,api,spark/map-reduce分析技術(shù)。
另外,還可以學(xué)習(xí)hbase這種基于hdfs的結(jié)構(gòu)化大數(shù)據(jù)存儲(chǔ)技術(shù),和flume大數(shù)據(jù)采集技術(shù)。
HBase – Hadoop Database,是一個(gè)高可靠性、高性能、面向列、可伸縮的分布式存儲(chǔ)系統(tǒng),利用HBase技術(shù)可在廉價(jià)PC Server上搭建起大規(guī)模結(jié)構(gòu)化存儲(chǔ)集群。
HBase是Google Bigtable的開(kāi)源實(shí)現(xiàn),類似Google Bigtable利用GFS作為其文件存儲(chǔ)系統(tǒng),HBase利用Hadoop HDFS作為其文件存儲(chǔ)系統(tǒng);Google運(yùn)行MapReduce來(lái)處理Bigtable中的海量數(shù)據(jù),HBase同樣利用Hadoop MapReduce來(lái)處理HBase中的海量數(shù)據(jù);Google Bigtable利用 Chubby作為協(xié)同服務(wù),HBase利用Zookeeper作為對(duì)應(yīng)。 [1] 上圖描述了Hadoop EcoSystem中的各層系統(tǒng),其中HBase位于結(jié)構(gòu)化存儲(chǔ)層,Hadoop HDFS為HBase提供了高可靠性的底層存儲(chǔ)支持,Hadoop MapReduce為HBase提供了高性能的計(jì)算能力,Zookeeper為HBase提供了穩(wěn)定服務(wù)和failover機(jī)制。
此外,Pig和Hive還為HBase提供了高層語(yǔ)言支持,使得在HBase上進(jìn)行數(shù)據(jù)統(tǒng)計(jì)處理變的非常簡(jiǎn)單。 Sqoop則為HBase提供了方便的RDBMS數(shù)據(jù)導(dǎo)入功能,使得傳統(tǒng)數(shù)據(jù)庫(kù)數(shù)據(jù)向HBase中遷移變的非常方便。
在平臺(tái)方面,hadoop環(huán)境需要搭建在linux服務(wù)器上,首先需要了解Linux的基礎(chǔ)知識(shí)與命令;開(kāi)發(fā)方面,hadoop首先是個(gè)提供大數(shù)據(jù)存儲(chǔ)的平臺(tái),因此我們要使用其存儲(chǔ)功能,因此需要掌握其數(shù)據(jù)操作的api(scala api 或者 java api);其次是hadoop是大數(shù)據(jù)分析的數(shù)據(jù)源,熟悉對(duì)大數(shù)據(jù)的 分析/使用 方法(spark/map-reduce技術(shù),都有scala 和 java兩種api)。
因此,學(xué)習(xí)hadoop必須掌握scala或者java中的一門(mén)開(kāi)發(fā)語(yǔ)言,然后在學(xué)習(xí)hadoop數(shù)據(jù)操作命令,api,spark/map-reduce分析技術(shù)。另外,還可以學(xué)習(xí)hbase這種基于hdfs的結(jié)構(gòu)化大數(shù)據(jù)存儲(chǔ)技術(shù),和flume大數(shù)據(jù)采集技術(shù)。
聲明:本網(wǎng)站尊重并保護(hù)知識(shí)產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請(qǐng)?jiān)谝粋€(gè)月內(nèi)通知我們,我們會(huì)及時(shí)刪除。
蜀ICP備2020033479號(hào)-4 Copyright ? 2016 學(xué)習(xí)鳥(niǎo). 頁(yè)面生成時(shí)間:3.888秒