您好,登錄后才能下訂單哦!
本篇內容主要講解“Storm基本架構是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Storm基本架構是什么”吧!
目前常用的流式實時計算引擎分為兩類:面向行和面向微批處理,其中面向行的流式實時計算引擎的代表是Apache Storm,典型特點是延遲低,但吞吐率也低。而面向微批處理的流式實時計算引擎代表是Spark Streaming,其典型特點是延遲高,但吞吐率也高。
主流的流式數據線分四個階段:
1、數據采集:負責從不同數據源上實時采集數據,可選包括Flume以及自定義Kafka Producer
2、數據緩沖:為了平衡數據采集速率與數據處理速率不對等。eg:Kafka
3、實時分析:流式地從數據緩沖區獲取數據,并快速完成數據處理。比如:Storm和Spark Streaming
4、結果存儲:將計算結果存儲到外部系統,比如:大量可實時查詢的系統,可存儲Hbase中,小量但需要可高并發查詢系統,可存儲Redis。
Storm:
基本概念:
1、Tuple:由一組可序列化的元素構成。
2、Stream:無限個Tuple組成一個Stream
3、Topology:類似與MapReduce的job,由一系列Spout和Blot構成的DAG
4、Spout:Stream的數據源
5、Bolt:消息處理邏輯
基本架構:
1、Nimbus:集群的管理和調度組件
2、Supervisor:計算組件
3、Zookeeper:Nimbus和Supervisor之前的協調組件。
Spark Streaming:
基本概念:核心思想是把流式處理轉化為“微批處理”,即以時間為單位切分數據流,每個切片內的數據對應一個RDD,進而采用Spark引擎進行快速計算。正是由于Spark Streaming采用了微批處理方式,因此只能將其作為近實時處理系統,而不是嚴格意義上的實時流式處理。
Spark Streaming 對流式數據做了進一步抽象,它將流式數據批處理化,每一批數據被抽象成RDD,這樣流式數據變成了流式的RDD序列,這便是Dstream,Spark Streaming 在Dstream上定義了一系列操作,主要分兩類:transformation和output,其中一個transformation操作能夠將一個Dstream變換成另一個Dstream,而output操作可產生一個或一組結果,并將輸出到指定外部系統中。
Spark幾個組件的抽象及操作對比:
1、Spark Code 數據抽象RDD 數據操作transformation&action
2、Spark SQL 數據抽象:DataFrame、DataSet,操作:transformation&action
3、Spark Streaming:數據抽象:Dstream,操作:transformation&action
到此,相信大家對“Storm基本架構是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。