您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“Hadoop生態(tài)系統(tǒng)的知識(shí)點(diǎn)有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Hadoop生態(tài)系統(tǒng)的知識(shí)點(diǎn)有哪些”吧!
1、Hadoop生態(tài)系統(tǒng)概況
Hadoop是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架。具有可靠、高效、可伸縮的特點(diǎn)。
Hadoop的核心是HDFS和Mapreduce,hadoop2.0還包括YARN。
下圖為hadoop的生態(tài)系統(tǒng):
2、HDFS(Hadoop分布式文件系統(tǒng))
源自于Google的GFS論文,發(fā)表于2003年10月,HDFS是GFS克隆版。
是Hadoop體系中數(shù)據(jù)存儲(chǔ)管理的基礎(chǔ)。它是一個(gè)高度容錯(cuò)的系統(tǒng),能檢測(cè)和應(yīng)對(duì)硬件故障,用于在低成本的通用硬件上運(yùn)行。HDFS簡(jiǎn)化了文件的一致性模型,通過流式數(shù)據(jù)訪問,提供高吞吐量應(yīng)用程序數(shù)據(jù)訪問功能,適合帶有大型數(shù)據(jù)集的應(yīng)用程序。
Client:切分文件;訪問HDFS;與NameNode交互,獲取文件位置信息;與DataNode交互,讀取和寫入數(shù)據(jù)。
NameNode:Master節(jié)點(diǎn),在hadoop1.X中只有一個(gè),管理HDFS的名稱空間和數(shù)據(jù)塊映射信息,配置副本策略,處理客戶端請(qǐng)求。
DataNode:Slave節(jié)點(diǎn),存儲(chǔ)實(shí)際的數(shù)據(jù),匯報(bào)存儲(chǔ)信息給NameNode。
Secondary NameNode:輔助NameNode,分擔(dān)其工作量;定期合并fsimage和fsedits,推送給NameNode;緊急情況下,可輔助恢復(fù)NameNode,但Secondary NameNode并非NameNode的熱備。
3、Mapreduce(分布式計(jì)算框架)
源自于google的MapReduce論文,發(fā)表于2004年12月,Hadoop MapReduce是google MapReduce 克隆版。
源自于google的MapReduce論文
MapReduce是一種計(jì)算模型,用以進(jìn)行大數(shù)據(jù)量的計(jì)算。其中Map對(duì)數(shù)據(jù)集上的獨(dú)立元素進(jìn)行指定的操作,生成鍵-值對(duì)形式中間結(jié)果。Reduce則對(duì)中間結(jié)果中相同“鍵”的所有“值”進(jìn)行規(guī)約,以得到最終結(jié)果。MapReduce這樣的功能劃分,非常適合在大量計(jì)算機(jī)組成的分布式并行環(huán)境里進(jìn)行數(shù)據(jù)處理。
4、Hive(基于Hadoop的數(shù)據(jù)倉庫)
由facebook開源,最初用于解決海量結(jié)構(gòu)化的日志數(shù)據(jù)統(tǒng)計(jì)問題。
Hive定義了一種類似SQL的查詢語言(HQL),將SQL轉(zhuǎn)化為MapReduce任務(wù)在Hadoop上執(zhí)行。
5、Hbase(分布式列存數(shù)據(jù)庫)
源自Google的Bigtable論文,發(fā)表于2006年11月,HBase是Google Bigtable克隆版
HBase是一個(gè)針對(duì)結(jié)構(gòu)化數(shù)據(jù)的可伸縮、高可靠、高性能、分布式和面向列的動(dòng)態(tài)模式數(shù)據(jù)庫。和傳統(tǒng)關(guān)系數(shù)據(jù)庫不同,HBase采用了BigTable的數(shù)據(jù)模型:增強(qiáng)的稀疏排序映射表(Key/Value),其中,鍵由行關(guān)鍵字、列關(guān)鍵字和時(shí)間戳構(gòu)成。HBase提供了對(duì)大規(guī)模數(shù)據(jù)的隨機(jī)、實(shí)時(shí)讀寫訪問,同時(shí),HBase中保存的數(shù)據(jù)可以使用MapReduce來處理,它將數(shù)據(jù)存儲(chǔ)和并行計(jì)算完美地結(jié)合在一起。
數(shù)據(jù)模型:Schema-->Table-->Column Family-->Column-->RowKey-->TimeStamp-->Value
6、Zookeeper(分布式協(xié)作服務(wù))
源自Google的Chubby論文,發(fā)表于2006年11月,Zookeeper是Chubby克隆版
解決分布式環(huán)境下的數(shù)據(jù)管理問題:統(tǒng)一命名,狀態(tài)同步,集群管理,配置同步等。
7、Sqoop(數(shù)據(jù)同步工具)
Sqoop是SQL-to-Hadoop的縮寫,主要用于傳統(tǒng)數(shù)據(jù)庫和Hadoop之前傳輸數(shù)據(jù)。
數(shù)據(jù)的導(dǎo)入和導(dǎo)出本質(zhì)上是Mapreduce程序,充分利用了MR的并行化和容錯(cuò)性。
8、Pig(基于Hadoop的數(shù)據(jù)流系統(tǒng))
由yahoo!開源,設(shè)計(jì)動(dòng)機(jī)是提供一種基于MapReduce的ad-hoc(計(jì)算在query時(shí)發(fā)生)數(shù)據(jù)分析工具
定義了一種數(shù)據(jù)流語言—Pig Latin,將腳本轉(zhuǎn)換為MapReduce任務(wù)在Hadoop上執(zhí)行。
通常用于進(jìn)行離線分析。
9、Mahout(數(shù)據(jù)挖掘算法庫)
Mahout起源于2008年,最初是Apache Lucent的子項(xiàng)目,它在極短的時(shí)間內(nèi)取得了長(zhǎng)足的發(fā)展,現(xiàn)在是Apache的頂級(jí)項(xiàng)目。
Mahout的主要目標(biāo)是創(chuàng)建一些可擴(kuò)展的機(jī)器學(xué)習(xí)領(lǐng)域經(jīng)典算法的實(shí)現(xiàn),旨在幫助開發(fā)人員更加方便快捷地創(chuàng)建智能應(yīng)用程序。Mahout現(xiàn)在已經(jīng)包含了聚類、分類、推薦引擎(協(xié)同過濾)和頻繁集挖掘等廣泛使用的數(shù)據(jù)挖掘方法。除了算法,Mahout還包含數(shù)據(jù)的輸入/輸出工具、與其他存儲(chǔ)系統(tǒng)(如數(shù)據(jù)庫、MongoDB 或Cassandra)集成等數(shù)據(jù)挖掘支持架構(gòu)。
10、Flume(日志收集工具)
Cloudera開源的日志收集系統(tǒng),具有分布式、高可靠、高容錯(cuò)、易于定制和擴(kuò)展的特點(diǎn)。
它將數(shù)據(jù)從產(chǎn)生、傳輸、處理并最終寫入目標(biāo)的路徑的過程抽象為數(shù)據(jù)流,在具體的數(shù)據(jù)流中,數(shù)據(jù)源支持在Flume中定制數(shù)據(jù)發(fā)送方,從而支持收集各種不同協(xié)議數(shù)據(jù)。同時(shí),F(xiàn)lume數(shù)據(jù)流提供對(duì)日志數(shù)據(jù)進(jìn)行簡(jiǎn)單處理的能力,如過濾、格式轉(zhuǎn)換等。此外,F(xiàn)lume還具有能夠?qū)⑷罩緦懲鞣N數(shù)據(jù)目標(biāo)(可定制)的能力??偟膩碚f,F(xiàn)lume是一個(gè)可擴(kuò)展、適合復(fù)雜環(huán)境的海量日志收集系統(tǒng)。
到此,相信大家對(duì)“Hadoop生態(tài)系統(tǒng)的知識(shí)點(diǎn)有哪些”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。