大數(shù)據(jù)平臺介紹_第1頁
大數(shù)據(jù)平臺介紹_第2頁
大數(shù)據(jù)平臺介紹_第3頁
大數(shù)據(jù)平臺介紹_第4頁
大數(shù)據(jù)平臺介紹_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

大數(shù)據(jù)平臺介紹大數(shù)據(jù)二零一五年七月2021/6/2012目錄Hadoop大數(shù)據(jù)生態(tài)圈介紹大數(shù)據(jù)應用介紹3Cloudera

Manager介紹Hadoop大數(shù)據(jù)生態(tài)圈2021/6/20HDFS為海量的數(shù)據(jù)提供了存儲,MapReduce為海量的數(shù)據(jù)提供了計算。Hive定義了一種類似SQL的查詢語言(HQL),將SQL轉化為MapReduce任務在Hadoop上執(zhí)行。hive是基于Hadoop的大型數(shù)據(jù)倉庫(Data

Warehouse),其目標是簡化Hadoop上的數(shù)據(jù)聚集、即席查詢及大數(shù)據(jù)集的分析等操作;HBase是一個針對結構化數(shù)據(jù)的可伸縮、高可靠、高性能、分布式和面向列的動態(tài)模式數(shù)據(jù)庫,分布式存儲系統(tǒng)

Zookeeper((分分布布式式協(xié)協(xié)作作服服務務))它是一個針對大型分布式系統(tǒng)的可靠協(xié)調系統(tǒng),提供的功能包括:配置維護、名字服務、分布式同步、組服務等。ZooKeeper的目標就是封裝好復雜易出錯的關鍵服務,將簡單易用的接口和性能高效、功能穩(wěn)定的系統(tǒng)提供給用戶解決分布式環(huán)境下的數(shù)據(jù)管理問題:統(tǒng)一命名,狀態(tài)同步,集群管理,配置同步等。7、、Sqoop((數(shù)數(shù)據(jù)據(jù)同同步步工工具具))Sqoop是SQL-to-Hadoop的縮寫,主要用于傳統(tǒng)數(shù)據(jù)庫和Hadoop之前傳輸數(shù)據(jù)。數(shù)據(jù)的導入和導出本質上是Mapreduce程序,充分利用了MR的并行化和容錯性。8、、Pig((基基于于Hadoop的的數(shù)數(shù)據(jù)據(jù)流流系系統(tǒng)統(tǒng)))Pig是Yahoo!提出的類似于Hive的大數(shù)據(jù)集分析平臺,它提供的類SQL語言叫PigLatin,一種基于操作符的數(shù)據(jù)流式的接口,該語言的編譯器會把類SQL的數(shù)據(jù)分析請求轉換為一系列經(jīng)過優(yōu)化處理的MapReduce運算9、、Mahout((數(shù)數(shù)據(jù)據(jù)挖挖掘掘算算法法庫庫))Mahout的主要目標是創(chuàng)建一些可擴展的機器學習領域經(jīng)典算法的實現(xiàn),旨在幫助開發(fā)人員更加方便快捷地創(chuàng)建智能應用程序。Mahout現(xiàn)在已經(jīng)包含了聚類、分類、推薦引擎(協(xié)同過濾)和頻繁集挖掘等廣泛使用的數(shù)據(jù)挖掘方法。除了算法,Mahout還包含數(shù)據(jù)的輸入/輸出工具、與其他存儲系統(tǒng)(如數(shù)據(jù)庫、MongoDB

或Cassandra)集成等數(shù)據(jù)挖掘支持架構。

Mahout

是一個很強大的數(shù)據(jù)挖掘工具,Mahout最大的優(yōu)點就是基于hadoop實現(xiàn),把很多以前運行于單機上的算法,轉化為了MapReduce模式,這樣大大提升了算法可處理的數(shù)據(jù)量和處理性能。10、、Flume((日日志志收收集集工工具具))Cloudera開源的日志收集系統(tǒng),具有分布式、高可靠、高容錯、易于定制和擴展的特點。它將數(shù)據(jù)從產生、傳輸、處理并最終寫入目標的路徑的過程抽象為數(shù)據(jù)流,在具體的數(shù)據(jù)流中,數(shù)據(jù)源支持在Flume中定制數(shù)據(jù)發(fā)送方,從而支持收集各種不同協(xié)議數(shù)據(jù)。同時,F(xiàn)lume數(shù)據(jù)流提供對日志數(shù)據(jù)進行簡單處理的能力,如過濾、格式轉換

等。此外,F(xiàn)lume還具有能夠將日志寫往各種數(shù)據(jù)目標(可定制)的能力。總的來說,F(xiàn)lume是一個可擴展、適合復雜環(huán)境的海量日志收集系統(tǒng)。Hadoop生態(tài)圈Hadoop簡介

Hadoop一個分布式系統(tǒng)基礎架構,由Apache基金會開發(fā)。用戶可以在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運算和存儲。簡單地說來,

Hadoop是一個可以更容易開發(fā)和運行處理大規(guī)模數(shù)據(jù)的軟

件平臺。

Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數(shù)據(jù)提供了存儲,則MapReduce為海量的數(shù)據(jù)提供了計算。Hadoop能解決哪些問題海量數(shù)據(jù)需要及時分析和處理。海量數(shù)據(jù)需要深入分析和挖掘。數(shù)據(jù)需要長期保存問題:磁盤IO成為一種瓶頸,而非CPU資源。網(wǎng)絡帶寬是一種稀缺資源硬件故障成為影響穩(wěn)定的一大因素HDFS適應條件HDFS:為以流式數(shù)據(jù)訪問模式存儲超大文件而設計的文件系統(tǒng)。流式數(shù)據(jù)訪問指的是幾百MB,幾百GB,幾百TB,甚至幾百PB流式數(shù)據(jù)訪問HDFS建立的思想是:一次寫入、多次讀取模式是最高效的。商用硬件hadoop不需要運行在昂貴并且高可靠的硬件上。HDFS不適應條件低延遲數(shù)據(jù)訪問HDFS是為了達到高數(shù)據(jù)吞吐量而優(yōu)化的,這是以延遲為代價的,對于低延遲訪問,可以用Hbase(hadoop的子項目)。大量的小文件多用戶寫入,任意修改NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。HDFS基本單元

Block(塊):HDFS基本儲存單元,是個邏輯單元。一個文件有可能包含多個塊,一個塊有可以包含多個文件,由文件的大小和塊大小的參數(shù)決定。dfs.block.size參數(shù)。Hdfs中Block的大小,默認64MB,如果設置大,就會有可能導致Map運行慢,設置小,有可能導致Map個數(shù)多,所有一定要設置適當。(目前主流機器建議設置為128M)

設置一個Block64MB,如果上傳文件小于該值,仍然會占用一個Block的命名空間(NameNode

metadata),但是物理存儲上不會占用64MB的空間

Block大小和副本數(shù)由Client端上傳文件到HDFS時設置,其中副本數(shù)可以變更,Block是不可以再上傳后變更的NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。HDFS處理機制

Client:切分文件;訪問HDFS;與NameNode交互,獲取文件位置信息;與DataNode交互,讀取和寫入數(shù)據(jù)。

NameNode:Master節(jié)點,管理HDFS的名稱空間和數(shù)據(jù)塊映射信息,配置副本策略,處理客戶端請求。

DataNode:Slave節(jié)點,存儲實際的數(shù)據(jù),匯報存儲信息給

NameNode。Secondary

NameNode:輔助NameNode,分擔其工作量;定期合并fsimage和fsedits,推送給NameNode;緊急情況下,可輔助恢復NameNode,但Secondary

NameNode并非NameNode的熱備NameNode主要功能提供名稱查詢服務DataNode通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。HDFS文件讀取NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。MapReduce簡介簡介

MapReduce是一個高性能的批處理分布式計算框架,用于對海量數(shù)據(jù)進行并行分析和處理。MapReduce將分析任務分為大量的并行Map任務和Reduce任務兩類。

與傳統(tǒng)數(shù)據(jù)倉庫和分析技術相比,MapReduce適合處理各種類型的數(shù)據(jù),包括結構化、半結構化和非結構化數(shù)據(jù)。結構化、半結構化、非結構化數(shù)據(jù)

結構化數(shù)據(jù)(即行數(shù)據(jù),存儲在數(shù)據(jù)庫里,可以用二維表結構來邏輯表達實現(xiàn)的數(shù)據(jù))

不方便用數(shù)據(jù)庫二維邏輯表來表現(xiàn)的數(shù)據(jù)即稱為非結構化數(shù)據(jù)(包括所有格式的辦公文檔、文本、圖片、XML、HTML、各類報表、圖像和音頻/視頻信

息等等)

所謂半結構化數(shù)據(jù),就是介于完全結構化數(shù)據(jù)(如關系型數(shù)據(jù)庫、面向對象數(shù)據(jù)庫中的數(shù)據(jù))和完全無結構的數(shù)據(jù)(如聲音、圖像文件等)之間的數(shù)據(jù),HTML文檔就屬于半結構化數(shù)據(jù)。它一般是自描述的,數(shù)據(jù)的結構和內容混在一起,沒有明顯的區(qū)分。NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。MapReduce簡介適合處理的任務適用于離線批處理任務

是以“行”為處理單位的,無法回溯已處理過的“行”,故每行都必須是一個獨立的語義單元,行與行之間不能有語義上的關聯(lián)。

相對于傳統(tǒng)的關系型數(shù)據(jù)庫管理系統(tǒng),MapReduce計算模型更適合于處理半結構化或無結構話的數(shù)據(jù)。不適合處理的任務不適合一般web應用不適合實時響應的任務不適合小數(shù)據(jù)集的處理不適合需要大量臨時空間的任務不適合CPU密集且具有許多交叉調用的任務NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。MapReduce工作原理MapReduce執(zhí)行流程MapReduce角色Client:作業(yè)提交發(fā)起者。

JobTracker:初始化作業(yè),分配作業(yè),與TaskTracker通信,協(xié)調整個作業(yè)。

TaskTracker:保持JobTracker通信,在分配的數(shù)據(jù)片段上執(zhí)行

MapReduce任務。任務的分配

TaskTracker和JobTracker之間的通信與任務的分配是通過心跳機制完成的。

TaskTracker會主動向JobTracker詢問是否有作業(yè)要做,如果自己可以做,那么就會申請到作業(yè)任務,這個任務可以使Map也可能是Reduce任務。NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。MapReduce工作原理任務的執(zhí)行申請到任務后,TaskTracker會做如下事情:拷貝代碼到本地拷貝任務的信息到本地啟動JVM運行任務狀態(tài)與任務的更新

任務在運行過程中,首先會將自己的狀態(tài)匯報給TaskTracker,然后由

TaskTracker匯總告之JobTracker。作業(yè)的完成

JobTracker是在接受到最后一個任務運行完成后,才會將任務標志為成功。此時會做刪除中間結果等善后處理工作。MapReduce工作原理NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例根據(jù)URL的頂級域名進行分類統(tǒng)計輸入、輸出格式:文件源文件格式如下:–統(tǒng)計目標:NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例1.編寫MapReduce函數(shù),客戶端作業(yè)–Map函數(shù)NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例–Reduce函數(shù)–Job設置NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例編譯、打包成jar文件略3.源文件提交到HDFS文件系統(tǒng)文件從本地提交到HDFS文件系統(tǒng)[put命令]–查看HDFS文件系統(tǒng)中已提交的文件NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例使用Hadoop命令提交作業(yè)–提交作業(yè)–查看作業(yè)http://localhost:50030NameNode主要功能提供名稱查詢服務通過向NN發(fā)送心跳保持與其聯(lián)系(3秒一次),如果NN

10分鐘沒有收到DN的心跳,則認為其已經(jīng)lost,并copy其上的block到其它DN每個集群都有一個,不接收或記錄任何實時數(shù)據(jù)變化,但與NN進行通信,定期保存HDFS元數(shù)據(jù)快照。如NN發(fā)生問題,及時作為備用NN使用,將宕機時間和數(shù)據(jù)的損失降低到最小。Hadoop實例查看執(zhí)行結果–查看執(zhí)行結果生成的文件查看HDFS文件系統(tǒng)中的結果HDFS文件拷貝到本地,查看結果Hive簡介Hive是什么hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,可以將結構化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供完整的sql查詢功能,可以將sql語句轉換為MapReduce任務進行運行。其優(yōu)點是學習成本低,可以通過類SQL語句快

速實現(xiàn)簡單的MapReduce統(tǒng)計,不必開發(fā)專門的MapReduce應用,十分適

合數(shù)據(jù)倉庫的統(tǒng)計分析。Hive是建立在Hadoop上的數(shù)據(jù)倉庫基礎構架。它提供了一系列的工具,可以用來進行數(shù)據(jù)提取轉化加載(ETL),這是一種可以存儲、查詢和分析存儲在Hadoop中的大規(guī)模數(shù)據(jù)的機制。Hive定義了簡單的類SQL查詢語言,稱為HQL,它允許熟悉SQL的用戶查詢數(shù)據(jù)。同時,這個語言也允許熟悉MapReduce開發(fā)者的開發(fā)自定義的mapper和reducer來處理內建的mapper和reducer無法完成的復雜的分析工作。Hive實例創(chuàng)建托管表–1.在Hive命令行執(zhí)行建表語句–2.查看元數(shù)據(jù)庫中的表信息、字段信息[sds、columns_v2]Hive實例–3.從本地向net_addr_1表中導入數(shù)據(jù)–4.查看導入的數(shù)據(jù)Hive實例根據(jù)URL的頂級域名進行分類統(tǒng)計-Hive實現(xiàn)1.源數(shù)據(jù)入表[略],使用已生成的net_addr_12.源數(shù)據(jù)加工轉換,生成中間表INSERT

OVERWRITE

TABLE

net_addr_3

selectnet_id,regexp_replace(net_url,"(.+\\.)",

"")

from

net_addr_1;–3.根據(jù)中間表數(shù)據(jù)進行統(tǒng)計Hbase簡介

HBase是一個針對結構化數(shù)據(jù)的可伸縮、高可靠、高性能、分布式和面向列的動態(tài)模式數(shù)據(jù)庫。和傳統(tǒng)關系數(shù)據(jù)庫不同,HBase采用了BigTable的數(shù)據(jù)模型:增強的稀疏排序映射表(Key/Value),其中,鍵由行關鍵字、列關鍵字和時間戳構成。HBase提供了對大規(guī)模數(shù)據(jù)的隨機、實時讀寫訪問,同時,HBase中保存的數(shù)據(jù)可以使用MapReduce來處理,它將數(shù)據(jù)存儲和并行計算完美地結合在一起。利用HBase技術可在廉價PC

Server上搭建起大規(guī)模結構化存儲集群HFile,HBase中KeyValue數(shù)據(jù)的存儲格式HMaster沒有單點問題,HBase中可以啟動多個HMaster,通過Zookeeper的Master

Election機制保證總有一個Master運行

HStore存儲是HBase存儲的核心了,其中由兩部分組成,一部分是MemStore,一部分是StoreFiles。MemStore是Sorted

MemoryBuffer,用戶寫入的數(shù)據(jù)首先會放入MemStore,當MemStore滿了以后會Flush成一個StoreFile(底層實現(xiàn)是HFile)但是在分布式系統(tǒng)環(huán)境中,無法避免系統(tǒng)出錯或者宕機,因此一旦HRegionServer意外退出,MemStore中的內存數(shù)據(jù)將會丟失,這就需要引入HLog了。Hbase架構Hbase實例1、構建Hbase表hbase_testhbase>

create

"hbase_test",

"id01"2、構建hive外表hive_test,并對應hbase_test表CREATE

EXTERNAL

TABLE

hive_test

(id01

STRING)STORED

BY

"org.apache.hadoop.hive.hbase.HBaseStorageHandler"WITH

SERDEPROPERTIES

("hbase.columns.mapping"

=

":key,id01")TBLPROPERTIES(""

=

"hbase_test");3、數(shù)據(jù)通過hive_test導入到hbase_test表中INSERT

OVERWRITE

TABLE

hive_test

SELECT

id01

FROM

hive_date;Hbase實例大數(shù)據(jù)應用介紹2021/6/20用戶上網(wǎng)行為分析系統(tǒng)用戶行為分析系統(tǒng)數(shù)據(jù)處理流程圖ElasticSearch是一個基于Lucene的搜索服務器Kibana

是一個為ElasticSearch

提供日志分析的Web

ui工具,可使用它對日志進行高效的搜索、可視化、分析等各種操作Flume是Cloudera提供的一個分布式、可靠、和高可用的海量日志采集、聚合和傳輸?shù)娜罩臼占到y(tǒng),支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時,F(xiàn)lume提供對數(shù)據(jù)進行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力由于采集數(shù)據(jù)的速度和數(shù)據(jù)處理的速度不一定同步,因此添加一個消息中間件來作為緩沖,選用apache的kafka,kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),kafka是一種高吞吐量的分布式發(fā)布訂閱消息系統(tǒng),它可以處理消費者規(guī)模的網(wǎng)站中的所有動作流數(shù)據(jù)。Kafka

是一個非常通用的系統(tǒng)。你可以有許多生產者和很多的消費者共享多個主題Topics。相比之下,Flume是一個專用工具被設計為旨在往HDFS,HBase發(fā)送數(shù)據(jù)。它對HDFS有特殊的優(yōu)化,并且集成了Hadoop的安全特性。所以,Cloudera

建議如果數(shù)據(jù)被多個系統(tǒng)消費的話,使用kafka;如果數(shù)據(jù)被設計給Hadoop使用,使用Flume。adoop是磁盤級計算,進行計算時,數(shù)據(jù)在磁盤上,需要讀寫磁盤;Storm是內存級計算,數(shù)據(jù)直接通過網(wǎng)絡導入內存。讀寫內存比讀寫磁盤速度快n個數(shù)量級。根據(jù)Harvard

CS61課件,磁盤訪問延遲約為內存訪問延遲的75000倍。所以Storm更快

storm的網(wǎng)絡直傳、內存計算,其時延必然比hadoop的通過hdfs傳輸?shù)偷枚啵划斢嬎隳P捅容^適合流式時,storm的流式處理,省去了批處理的收集數(shù)據(jù)的時間;因為storm是服務型的作業(yè),也省去了作業(yè)調度的時延。所以從時延上來看,storm要快于Hadoop從原理角度來講:Hadoop

M/R基于HDFS,需要切分輸入數(shù)據(jù)、產生中間數(shù)據(jù)文件、排序、數(shù)據(jù)壓縮、多份復制等,效率較低。Storm基于ZeroMQ這個高性能的消息通訊庫,不持久化數(shù)據(jù)。說一個典型的場景,幾千個日志生產方產生日志文件,需要進行一些ETL操作存入一個數(shù)據(jù)庫。假設利用hadoop,則需要先存入hdfs,按每一分鐘切一個文件的粒度來算(這個粒度已經(jīng)極端的細了,再小的話hdfs上會一堆小文件),hadoop開始計算時,1分鐘已經(jīng)過去了,然后再開始調度任務又花了一分鐘,然后作業(yè)運行起來,假設機器特別多,幾鈔鐘就算完了,然后寫數(shù)據(jù)庫假設也花了很少的時間,這樣,從數(shù)據(jù)產生到最后可以使用已經(jīng)過去了至少兩分多鐘。而流式計算則是數(shù)據(jù)產生時,則有一個程序去一直監(jiān)控日志的產生,產生一行就通過一個傳輸系統(tǒng)發(fā)給流式計算系統(tǒng),然后流式計算系統(tǒng)直接處理,處理完之后直接寫入數(shù)據(jù)庫,每條數(shù)據(jù)從產生到寫入數(shù)據(jù)庫,在資源充足時可以在毫秒級別完成Storm的主要特點如下:1.簡單的編程模型。類似于MapReduce降低了并行批處理復雜性,Storm降低了進行實時處理的復雜

性。2.可以使用各種編程語言。你可以在Storm之上使用各種編程語言。默認支持Clojure、Java、Ruby和Python。要增加對其他語言的支持,只需實現(xiàn)一個簡單的Storm通信協(xié)議即可。3.容錯性。Storm會管理工作進程和節(jié)點的故障。4.水平擴展。計算是在多個線程、進程和服務器之間并行進行的。5.可靠的消息處理。Storm保證每個消息至少能得到一次完整處理。任務失敗

時,它會負責從消息源重試消息。6.快速。系統(tǒng)的設計保證了消息能得到快速的處理,使用?MQ作為其底層消息隊列。7.本地模式。Storm有一個“本地模式”,可以在處理過程中完全模擬Storm集群。這讓你可以快速進行開發(fā)和單元測試。唯品會日志處理框架簡介唯品會日志處理框架簡介全國重點車輛聯(lián)網(wǎng)聯(lián)控平臺Cloudera

Manager介紹2021/6/20Cloudera

Manager介紹

CDH(Cloudera"s

Distribution,including

Apache

Hadoop),是Hadoop眾多分支中的一種,由Cloudera維護,基于穩(wěn)定版本的Apache

Hadoop構建,并集成了很多補丁,可直接用于生產環(huán)境。

Cloudera

Manager則是為了便于在集群中進行Hadoop等大數(shù)據(jù)處理相關的服務安裝和監(jiān)控管理的組件,對集群中主機、Hadoop、Hive、Hbase、Spark等服務的安裝配置管理做了極大簡化。Cloudera

Manager有四大功能管理監(jiān)控診斷集成Cloudera

Manager介紹Cloudera

Flume

Flume是Cloudera提供的日志收集系統(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);

Flume是Cloudera提供的一個高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時,F(xiàn)lume提供對數(shù)據(jù)進行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力。Cloudera

Manager介紹Cloudera

Impala

Cloudera

Impala對你存儲在Apache

Hadoop在HDFS,HBase的數(shù)據(jù)提

供直接查詢互動的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論