在了解sparkstreaming之前,先來弄清幾個變數:
//生成sparkjob,使用jobgenerator來生成spark job,然後在乙個執行緒池執行這些job
private[streaming] val scheduler = new jobscheduler(this)
//private[streaming] val waiter = new contextwaiter
private[streaming] val progresslistener = new streamingjobprogresslistener(this)
建立dstreamgraph,可以模擬rdd,dstreamgraph類似於rdd dag
private[streaming] val graph: dstreamgraph = else
}
如果使用checkpoint,那麼就從checkpoint中恢復graph,否則新建乙個,dstreamgraph用來動態的建立dstream dag ,
dstreamgraph有兩個重要成員:
private val inputstreams = new arraybuffer[inputdstream[_]]()
private val outputstreams = new arraybuffer[dstream[_]]()
inputstreams集合用來記錄所有的輸入資料流
outputstreams集合用來記錄所有的dstream
Spark Streaming入門詳解
背景 使用spark主要是使用spark streaming,spark streaming的魔力之所在於 1.流式處理,如今是乙個流處理時代,一切與流不相關的都是無效的資料。3.spark streaming本身是乙個程式,spark streaming在處理資料的時候會不斷感知資料。所以對構建複...
Spark Streaming 程式監控
官網中指出,spark中專門為sparkstreaming程式的監控設定了額外的途徑,當使用streamingcontext時,在web ui中會出現乙個 streaming 的選項卡,在此選項卡內,統計的內容展示如下 這其中包括接受的記錄數量,每乙個batch內處理的記錄數,處理時間,以及總共消耗...
spark streaming讀取kafka示例
spark streaming讀取kafka示例,其中 spark streaming優雅的關閉策略優化部分參考 如何管理spark streaming消費kafka的偏移量部分參考 spark向kafka中寫入資料部分參考 object demo 建立streamingcontext return...