Hadoop歸納——學習筆記<一>

以前有幸在MOOC學院抽中 小象學院hadoop體驗課。 

這是小象學院hadoop2.X概述第一章的筆記java

第一章主要講的是hadoop基礎知識。老師講的仍是比較全面簡單的,起碼做爲一個非專業碼農以及數據庫管理人員,也能狗大體瞭解其特色。後面由於8月比較忙,就主要看案例那一部分了,應用及基礎部分筆記基本沒怎麼作。mysql

基本上是3/4屏幕放視頻,1/4開着馬克飛象算法

首先是歸納圖(以hadoop2.0爲例) 

sql



不在博客園上閱讀時纔會看到的,這篇博文歸http://www.cnblogs.com/weibaar 全部數據庫

僅保證在博客園博客上的排版乾淨利索還有代碼塊與圖片正確顯示,他站請保留做者信息尊重版權啊 編程

1、Hadoop基礎架構:

HDFS(分佈式存儲層,主要儲存數據) 
YARN(集羣資源管理層) 
MapReduce 分佈式數據處理,java
服務器

HDFS爲最基本的,分佈式文件系統

Redundant, Reliable Storage 
它可擴展性好,資源不夠時再買服務器就能夠直接集成了。另外數據重分佈也很方便,對服務器崩潰等等處理也及時。 
其會把如1G等大文件,會冗餘均等儲存在多個服務器上(即便一個服務器崩潰了也無所謂),其過程均在後臺處理而用戶體驗不到。
架構

YARN負責集羣管理調度

Cluster Resource Management 
它兼容多個計算框架(spark/mapreduce等等),能夠統一管理調度多個應用程序 
另外,對多用戶管理方便(能夠方便分配用戶資源等等) 
基本是數據庫管理者調度資源等用的
框架

MapReduce是計算框架的一種

依然方便擴展,適合數據離線處理 
裏面涉及幾個框架圖,有空看看這些框架圖能夠更瞭解他們的架構與應用原理。
分佈式


2、Hadoop具體模塊解析(應用層)

Hadoop1.0 
Hive 數據倉庫 與sql整合 
Pig 流行引擎 
Mahout 數據挖掘庫 
–>Oozie 能夠調度上述三種做業,前後處理什麼做業,設定執行做業 
–>Hbase 構建了hdfs之上的分佈式數據庫 
–>數據引用 flume sqoop 
協調服務zookeeper

Hadoop2.0 
增長了YARN(計算框架) 
預裝了新一代軟件 hive2 pig2等等

Hive: 日誌數據處理,數據倉庫

能夠把sql語句轉化爲MapReduce語句 
與數據庫進行接口,做爲一個相似於SQL的查詢語言,使咱們不用直接編寫程序調用HDFS數據 
它通常用於離線數據處理,而不是交互性數據處理。 
通常用於: 
1)日誌分析(如pv uv):百度、淘寶 
2)多維度數據分析 
3)海量結構化數據李賢分析 
4)低成本進行海量數據分析,不用專門學習MapReduce(簡稱MR)

不在博客園上閱讀時纔會看到的,這篇博文歸http://www.cnblogs.com/weibaar 全部

僅保證在博客園博客上的排版乾淨利索還有代碼塊與圖片正確顯示,他站請保留做者信息尊重版權啊


Pig: 數據流語言,也是基於MapReduce

sql表達能力過於有限,不夠直觀。所以對於adhoc的數據分析不夠。定義了新的pig Latin語言 
也是用於離線數據分析 
(PPT裏對比了單詞分組的MapReduce/hive/pig的案例) 
感受pig更像一個對象式編程,還能夠自編寫函數。而hive結構型數據處理轉換成本更低(sql),大公司仍是在用它居多

Mahout: 提供數據挖掘庫

包括推薦、聚類、分類三大算法。 
反正經常使用的數據挖掘算法都有了。

不在博客園上閱讀時纔會看到的,這篇博文歸http://www.cnblogs.com/weibaar 全部

僅保證在博客園博客上的排版乾淨利索還有代碼塊與圖片正確顯示,他站請保留做者信息尊重版權啊

HBase:分佈式數據庫

有表的概念 
可是Hbase會有版本、時間戳概念,就是若是新數據進來插入,不會覆蓋原來的cell,而是儲存在時間戳裏(每一行數據)經過版本號數量限制可限定儲存的版本數 
另外有column family,能夠由任意column組成(適合變量)

Zookeeper:用於解決分佈式環境下數據管理問題

用戶不會直接使用這個系統,而是底層系統用zookeeper解決資源配置問題,包括HDFS/HBase/YARN等 
阿里巴巴也開發了使用Zookeeper,Dubbo/Metaq


Sqoop:數據同步工具

就是把Hadoop跟傳統mysql,db2等數據庫結合 
屬於基於MapReduce的一個程序

Flume:日誌收集系統

與Sqoop相似,用於把日誌導入hadoop裏面 
能夠把網站使用的數據統一加載到HDFS裏(加載基於Flume的客戶端)agent-collector-HDFS 
涉及客戶端內容。(ATM採集信息等集羣)

不在博客園上閱讀時纔會看到的,這篇博文歸http://www.cnblogs.com/weibaar 全部

僅保證在博客園博客上的排版乾淨利索還有代碼塊與圖片正確顯示,他站請保留做者信息尊重版權啊

Oozie:用於調度不一樣的做業之間的管理與調度

對於有先後關係的、須要週期性按期性執行的工具進行調度甚至監控報警(郵件、短信報警)

相關文章
相關標籤/搜索