hadoop生態系統如下圖所示:
hdfs(hadoop distributed file system)是分布式檔案系統,是針對谷歌開發的分布式檔案系統gfs(google file system)的開源實現,是hadoop兩大核心組成部分之一。
hdfs有namenode和datanode兩部分,namenode是整個檔案系統目錄,基於記憶體儲存,儲存的是一些檔案的詳細資訊,比如檔名、檔案大小、建立時間、檔案位置等,有且僅有乙個;datanode儲存檔案的資料資訊,也就是檔案本身,不過是分割後的小檔案。
hdfs是一種底層資料儲存方式。hive與hbase的資料一般都儲存在hdfs上,hdfs為他們提供高可靠性的底層儲存支援。
hbase:
hbase是針對谷歌bigtable的開源實現,是乙個高可靠、高效能、面向列、可伸縮的分布式資料庫,主要用來儲存非結構化和半結構化的鬆散資料。需要注意的是,hbase可以使用本地檔案系統而不用hdfs作為底層資料儲存方式,不過為了提高資料可靠性和系統的健壯性,發揮hbase處理大資料量等功能,一般都使用hdfs作為hbase的底層資料儲存方式。
hbase的執行建立在hadoop上,在hadoop生態系統中,hdfs為hbase提供了高可靠性的底層儲存支援,mapreduce為hbase提供了高效能的計算能力,zookeeper為hbase提供了穩定服務和failover機制。pig和hive還為hbase提供了高層語言支援,使得在hbase上進行資料統計處理變的非常簡單。 sqoop則為hbase提供了方便的rdbms(關係型資料庫)資料匯入功能,使得傳統資料庫資料向hbase中遷移變的非常方便。
hbase是乙個開源的not-only-sql的資料庫,像其他資料庫一樣提供隨即讀寫功能。hdfs最適於執行批次分析,而不能滿足實時需要,hbase能夠處理大規模資料,它不適於批次分析,但它可以向hadoop實時地呼叫資料。如果需要實時訪問一些資料,就把它存入hbase。
下面再以**的形式對hdfs和hbase作乙個比較:
Hadoop生態系統
摘要 介紹hadoop生態系統,從hadoop生態系統有什麼成員,成員能做什麼和hadoop生態系統能夠提供大資料問題解決方案兩方面來認識。hadoop生態圖,通俗地說,就是hadoop核心模組和衍生的子專案。一幅hadoop生態圖,讓我想到了兩個問題。問題一 hadoop生態系統包括哪些成員?每個...
Hadoop 生態系統
hadoop是乙個分布式儲存和計算平台。主要解決海量資料的儲存與分析計算問題 1 高可靠性 hadoop底層維護多個資料副本,所以即使hadoop某個計算元素或儲存出現故障,也不會導致資料的丟失。2 高擴充套件性 在集群間分配任務資料,可方便的擴充套件數以乾計的節點。3 高效性 在mapreduce...
Hadoop生態系統
hadoop生態系統 廣義的hadoop hdfs 檔案儲存系統基於硬碟 yarn 資源排程框架 mapreduce 分布式處理框架 hive 資料倉儲 rconnections 資料分析 mahout 機器學習庫 pig 指令碼語言,跟hive類似 oozie 工作流引擎,管理作業執行順序 zoo...