Apache Hadoop簡介 對Hadoop感興趣,寫點東西記錄一下學習之路。 (不跟風,合適的才是最好的,並不是全部企業都會用Hadoop,學習每樣東西最重要的是學習他的思維) Apache Hadoop是一個分析和處理大數據的軟體平臺,允許大型數據集使用簡單的編程模型在電腦集群進行分散式處理 ...
Apache Hadoop簡介
對Hadoop感興趣,寫點東西記錄一下學習之路。
(不跟風,合適的才是最好的,並不是全部企業都會用Hadoop,學習每樣東西最重要的是學習他的思維)
- 什麼是Apache Hadoop?
Apache Hadoop是一個分析和處理大數據的軟體平臺,允許大型數據集使用簡單的編程模型在電腦集群進行分散式處理。傳統無法解決大型數據集帶來的存儲和計算問題,Hadoop最核心的設計就是:HDFS和MapReduce,使用HDFS分散式文件系統解決大數據存儲問題,使用MapReduce並行計算框架解決大數據分析計算問題。
學習第一手資料當然是上官網找資料,Apache Hadoop官網:http://hadoop.apache.org/
2.Hadoop版本區別(簡單說明)
在Hadoop版本中,區別比較明顯的有兩個大方向的版本:1.X跟2.X。
1.X版本中主要有HDFS跟MapReduce兩個框架組成,Hadoop1.X的MapReduce框架也叫MRv1,。
2.X版本中,由於MRv1在擴展性、可靠性、資源利用率和多框架方面存在明顯不足,MRv2將資源管理功能抽象成YARN資源調度作業管理系統,也導致單一的MapReduce框架變成支持多框架支持(MapReduce比較適合離線計算)。所以Hadoop2.X版本變成了HDFS+MapReduce+YARN
其實在Hadoop2.x版本還對HDFS進行了優化,NameNode可以橫向擴展不過對於MapReduce的變化相對沒那麼突出。
3.版本選擇問題
老樣子,就項目遺留舊版本,老公司比較多用Hadoop1.0,新公司新項目比較多用Hadoop2.0,厲害的公司自己開發自己的。所以個人覺得兩個版本都要學。
4.學習計劃
對於Hadoop學習計劃,我是這樣計劃的,Hadoop設計理念與基本架構(理論知識)-->環境準備-->HDFS學習-->MapReduce學習-->YARN學習
前期知識儲備:
(1)由於Hadoop大部分搭建在linux,所以要有基本的linux命令行知識,知道基本的ls,cd等等命令,(不會也沒事,同時學)
(2)JavaSE基礎,不管做什麼,Java基礎都要學好,多線程,I/O,網路編程等等。
本文用於挖坑,日後慢慢填坑,堅持每日一文填坑。