1. 程式人生 > >學習hadoop——第1篇

學習hadoop——第1篇

正式從資料庫往大資料,沖沖衝!!!

先把整體框架以及整體思路建立,好理解

Hadoop的思想之源:Google 

Google搜尋引擎,Gmail,安卓,AppspotGoogle Maps,Google earth,Google 學術,Google翻譯,Google+,

下一步Google what??

 不使用超級計算機,不使用儲存(淘寶的去i,去e,去o之路) 

    大量使用普通的pc伺服器(去掉機箱,外設,硬碟),提供有冗餘的叢集服務 

    全世界多個數據中心,有些附帶發電廠 

    運營商向Google倒付費 


Google面對的資料和計算難題

      大量的網頁怎麼儲存?

      搜尋演算法 

      Page-Rank計算問題


倒排索引  

 Page Rank

這是Google最核心的演算法,用於給每個網頁價值評分,是Google“在垃圾中找黃金 ”的關鍵演算法,這個演算法成就了今天的Google 

Map-reduce思想:計算PR

Google帶給我們的關鍵技術和思想

 GFS 

 Map-Reduce

 Bigtable 


Hadoop的源起——Lucene 

Doug Cutting開創的開源軟體,用java書寫程式碼,實現與Google類似的全文搜尋功能 ,它提供了全文檢索引擎的架構,包括完整的查詢引

擎和索引引擎 

早期釋出在個人網站和SourceForge,2001年年底成為apache軟體基金會jakarta的 一個子專案

Lucene的目的是為軟體開發人員提供一個簡單易用的工具包,以方便的在目標系統中 實現全文檢索的功能,或者是以此為基礎建立起完整

的全文檢索引擎 

對於大數量的場景,Lucene面對與Google同樣的困難。迫使Doug Cutting學習和模 仿Google解決這些問題的辦法 

一個微縮版:Nutch


目前Hadoop達到的高度

          實現雲端計算的事實標 準開源軟體

         包含數十個具有強大 生命力的子專案 

         已經能在數千節點上 執行,處理資料量和 排序時間不斷打破世界紀錄 

                                  


Hadoop元件


Hadoop的架構

Namenode 名稱節點


Secondary Namenode 輔助名稱節點


DataNode 資料節點

JobTracker 作業跟蹤

程式和資料在同一物理節點上


TaskTracker 任務跟蹤



Master與Slave

資料分析者面臨的問題

 資料日趨龐大,無論是入庫和查詢,都出現效能瓶頸

    使用者的應用和分析結果呈整合趨勢,對實時性和響應時間要求越來越高 

    使用的模型越來越複雜,計算量指數級上升

Hadoop的思想

  用更多的小型元件來代替大型元件,並且開源

Hadoop體系下的分析手段

     主流:Java程式 

     輕量級的指令碼語言:Pig 

     SQL技巧平穩過渡:Hive 

     NoSQL:HBase