Spark Streaming简介
?Spark Streaming 是core Spark的一個擴展,用來處理實時數據流,數據源可以來自Kafka, Flume, HDFS等,經過復雜的算法處理后,存入HDFS,數據庫,或者實時的Dashboards.?
從內部來看,Spark Streaming把進來的流式數據切成一小塊一小塊,然后再交給Spark Engine處理,最終把無間隔的流式數據處理為有微小間隔的批次數據。由此完成了對數據流的實時處理。
?
接下來,介紹幾個重要的概念:
?
Discretized Stream(DStream):DStream是Spark Streaming的一個抽象概念,代表一段連續的數據流,它既可以是從輸入端收到的數據流,也可以是經過轉換處理后的數據流。從內部來看一個DStream是由一組RDD序列構成。
Resilient?Distributed?Dataset(RDD):? RDD是Spark的一個數據結構,它由一組只讀的,可容錯的,可分布式處理的記錄所構成。RDD要么通過讀取外部數據來創建,要么通過轉換現有的RDD來創建。RDD的操作包含Transformation(從現有的RDD生成一個新的RDD)和Action(對RDD執行運算后向Driver程序返回結果)
?
Input DStreams:?Input DStream代表了從數據源接收到的輸入數據流,Spark Streaming提供了兩類數據源,一類是基礎源,比如文件系統,Socket連接。另一類是高級源,比如Kafka, Flume這些。
Transformations on DStreams:?與RDD類型,我們也可以對DStream進行某些轉換(Transformation), 其中常用的一些轉換請參見?這里
Output Operations on DStreams:?DStream的輸出操作允許將DStream的數據存到外部系統中,比如數據庫或者文件系統。具體的輸出操作請參見 這里
?
?
總的來說,Spark Streaming就是將實時數據流分成一個個的RDD,然后對RDD進行各種操作和轉換,最終將處理結果輸出到外部的數據庫或文件系統中。
?
轉載于:https://www.cnblogs.com/LeeZee/p/7659164.html
總結
以上是生活随笔為你收集整理的Spark Streaming简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv-python:win7下,
- 下一篇: UVa10795 - A Differe