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