spark streaming雜記

checkpoint:
checkpoint都放啥子?
  1. Metadata checkpointing : 保存流計算的定義信息到容錯存儲系統(tǒng)如 HDFS 中。這用來恢復應用程序中運行 worker 的節(jié)點的故障。
    元數(shù)據(jù)包括 :
    Configuration : 創(chuàng)建 Spark Streaming 應用程序的配置信息。
    DStream operations : 定義 Streaming 應用程序的操作集合。
    Incomplete batches : 操作存在隊列中的未完成的批。
  2. Data checkpointing : 保存生成的 RDD 到可靠的存儲系統(tǒng)中,這在有狀態(tài) transformation(如結合跨多個批次的數(shù)據(jù))中是必須的。在這樣一個 transformation 中,生成的 RDD 依賴于之前批的 RDD,隨著時間的推移,這個依賴鏈的長度會持續(xù)增長。在恢復的過程中,為了避免這種無限增長。有狀態(tài)的 transformation 的中間 RDD 將會定時地存儲到可靠存儲系統(tǒng)中,以截斷這個依賴鏈。
checkpoint啥子時候寫
checkpoint啥子時候讀?

時間:checkpoint是在action動作計算結束之后執(zhí)行。

在Spark Streaming整個架構體系里面,數(shù)據(jù)接收其實最為關鍵的一個流程,在數(shù)據(jù)接收完之后,后面的數(shù)據(jù)處理上面就是復用Spark Core的數(shù)據(jù)處理架構

spark streaming with kafka

  1. recivers
    spark partition與kafka partition無關。
    spark 獲取revicer及對應prefreLocations。
    獲取可以使用的executor,makeReciveRDD,編寫rdd compute方法(startReceiverFunc),submit rdd
  2. dirct
    Spark Streaming會創(chuàng)建與 Kafka partitions 相同數(shù)量的 paritions 的 RDD,RDD 的 partition與 Kafka 的 partition 一一對應。
    保證事務性。
spark streaming 保證事物一致性

確認能否允許少量數(shù)據(jù)不一致,不能的話,可以通過

1、可以利用事務性數(shù)據(jù)庫來保證事務一致性,如mysql/redis
2、自己設置數(shù)據(jù)處理+checkpoint為原子性操作實現(xiàn)

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容