(第1篇)什麼是hadoop大數據?我又爲什麼要寫這篇文章?

前言


這些天,有很多人諮詢我大數據相關的一些信息,覺得大數據再未來會是一個朝陽行業,希望能儘早學會、入行,借這個機會,我決定寫一下關於大數據的知識和我這些年的感悟。


點擊鏈接  http://ijiajia.blog.51cto.com 訪問我的博客,學習更多hadoop知識


我寫這個博客目的就是爲了幫助新人快速入大數據行業,市面上有很多類似的書籍都是重理論少實踐,特別缺少一線企業實踐經驗的傳授,這個課程讓您少走彎路快速入門實踐,讓您再最短時間內達到一個一線企業大數據工程師的能力標準因爲在課程整理和實踐安排上過濾掉很多用不上的知識直接帶領大家以最直接方式掌握大數據使用方法。

 

知名一線互聯網公司從事大數據開發管理多年,深知業界大數據公司一直對大數據人才渴望,同時知道有很多大數據愛好者想參與進這個朝陽行業,因爲平時也是需要參與大數據工程師的招聘與培養所以特別想通過一種方式,讓廣大的大數據愛好者更好的企業對接,優秀的人才找到合適的企業,《Hadoop大數據實戰手冊根據多年從業經驗整理的系列課程,接下來的文章是根據這本書再次整理成文,希望讓更多的大數據愛好者收益

  

  那hadoop又是什麼呢?


    hadoop簡介

Hadoop是一個由Apache基金會所開發的開源分佈式系統基礎架構。用戶可以在不瞭解分佈式底層細節的情況下,開發分佈式程序,充分利用集羣的威力進行高速運算和存儲。解決了大數據(大到一臺計算機無法進行存儲,一臺計算機無法在要求的時間內進行處理)的可靠存儲和處理。適合處理非結構化數據,包括HDFSMapReduce基本組件。

1.Hadoop版本衍化歷史

由於Hadoop版本混亂多變初級用戶造成一定困擾,所以對其版本衍化歷史有個大概瞭解,有助於在實踐過程中選擇合適的Hadoop版本

Apache Hadoop版本分爲分爲1.02.0兩代版本,我們將第一代Hadoop稱爲Hadoop 1.0,第二代Hadoop稱爲Hadoop 2.0。下圖Apache Hadoop的版本衍化

wKioL1i9CEqjXLt7AACAJogPNII749.jpg 

第一代Hadoop包含三個大版本,分別是0.20.x0.21.x0.22.x,其中,0.20.x最後演化成1.0.x,變成了穩定版

第二代Hadoop包含兩個版本,分別是0.23.x2.x,它們完全不同於Hadoop 1.0,是一套全新的架構,均包含HDFS FederationYARN兩個系統,相比於0.23.x2.x增加了NameNode HAWire-compatibility兩個重大特性。

wKiom1i9CD2Qy4fVAABzzwkuLAI068.jpg 

Hadoop遵從Apache開源協議,用戶可以免費地任意使用和修改Hadoop,也正因此,市面上出現了很多Hadoop版本,其中比較出名的一是Cloudera公司的發行版該版本稱爲CDHCloudera Distribution Hadoop)。

截至目前爲止,CDH共有4個版本,其中,前兩個已經不再更新,最近的兩個,分別是CDH3(在Apache Hadoop 0.20.2版本基礎上演化而來的)和CDH4Apache Hadoop 2.0.0版本基礎上演化而來的),分別對應ApacheHadoop 1.0Hadoop 2.0


2. Hadoop生態圈

架構師和開發人員通常會使用一種軟件工具,用於其特定的用途軟件開發。例如,他們可能會說,TomcatApache Web服務器,MySQL是一個數據庫工具。

然而,當提到Hadoop的時候,事情變得有點複雜。Hadoop包括大量的工具,用來協同工作。因此,Hadoop可用於完成許多事情,以至於,人們常常根據他們使用的方式來定義它。

對於一些人來說,Hadoop是一個數據管理系統。他們認爲Hadoop是數據分析的核心,彙集了結構化和非結構化的數據,這些數據分佈在傳統的企業數據棧的每一層。對於其他人,Hadoop是一個大規模並行處理框架,擁有超級計算能力,定位於推動企業級應用的執行。還有一些人認爲Hadoop作爲一個開源社區,主要爲解決大數據的問題提供工具和軟件。因爲Hadoop可以用來解決很多問題,所以很多人認爲Hadoop是一個基本框架。

雖然Hadoop提供了這麼多的功能,但是仍然應該把它歸類爲多個組件組成的Hadoop生態圈,這些組件包括數據存儲、數據集成、數據處理和其它進行數據分析的專門工具。

wKiom1i9C-3z-B0kAAGnj_qExNY386.png

該圖主要列舉了生態圈內部主要的一些組件,底部開始進行介紹:

1) HDFSHadoop生態圈的基本組成部分是Hadoop分佈式文件系統(HDFS)。HDFS是一種數據分佈式保存機制,數據被保存在計算機集羣上。數據寫入一次,讀取多次。HDFSHBase等工具提供了基礎。

2)MapReduceHadoop的主要執行框架是MapReduce,它是一個分佈式、並行處理的編程模型。MapReduce把任務分爲map(映射)階段和reduce(化簡)。開發人員使用存儲在HDFS中數據(可實現快速存儲),編寫HadoopMapReduce任務。由於MapReduce工作原理的特性, Hadoop能以並行的方式訪問數據,從而實現快速訪問數據。

3) HbaseHBase是一個建立在HDFS之上,面向列的NoSQL數據庫,用於快速讀/寫大量數據。HBase使用Zookeeper進行管理,確保所有組件都正常運行。

4) ZooKeeper:用於Hadoop的分佈式協調服務。Hadoop的許多組件依賴於Zookeeper,它運行在計算機集羣上面,用於管理Hadoop操作。

5) HiveHive類似於SQL高級語言,用於運行存儲在Hadoop上的查詢語句,Hive讓不熟悉MapReduce開發人員也能編寫數據查詢語句,然後這些語句被翻譯爲Hadoop上面的MapReduce任務。像Pig一樣,Hive作爲一個抽象層工具,吸引了很多熟悉SQL而不是Java編程的數據分析師。

6) Pig它是MapReduce編程的複雜性的抽象。Pig平臺包括運行環境和用於分析Hadoop數據集的腳本語言(Pig Latin)。其編譯器將Pig Latin翻譯成MapReduce程序序列。

7) Sqoop是一個連接工具,用於在關係數據庫、數據倉庫和Hadoop之間轉移數據。Sqoop利用數據庫技術描述架構,進行數據的導入/導出;利用MapReduce實現並行化運行和容錯技術。


  現在,我們對hadoop有了一個基本的瞭解,接下來我們就要進行hadoop環境的安裝,我會在下一篇文章中詳細介紹,如何安裝hadoop。


 wKioL1jIq8PDkxXsAABC3HPbV6s466.jpg


如何用4個月學會Hadoop開發並找到年薪25萬工作?

 

免費分享一套17年最新Hadoop大數據教程100Hadoop大數據必會面試題

因爲鏈接經常被和諧,需要的朋友請加微信 ganshiyun666 來獲取最新下載鏈接,註明“51CTO”

 

教程已幫助300+人成功轉型Hadoop開發,90%起薪超過20K,工資比之前翻了一倍。

百度Hadoop核心架構師親自錄製

內容包括0基礎入門、Hadoop生態系統、真實商業項目實戰3大部分。其中商業案例可以讓你接觸真實的生產環境,訓練自己的開發能力。

wKioL1mdQGiDPhHeAAAuZtp-5xs706.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章