spark streaming常用調優


1、Spark Streaming第一次運行不丟失數據

  kafka參數 auto.offset.reset 參數設置成earliest 從最初始偏移量開始消費數據。

2、Spark Streaming精准一次消費

  1. 手動維護偏移量
  2. 處理完業務數據后,再進行提交偏移量操作
  3. 極端情況下,如在提交偏移量時斷網或者停電會造成spark程序第二次啟動時重復消費問題,所以在涉及到金額或者精確性非常高的場景會使用事務保證精確一次消費。下級數據庫需支持事務

3、Spark Streaming控制每秒消費數據的速度

  通過spark.streaming.kafka.maxRatePerPartition參數來設置Spark Streaming從kafka每分區每秒拉取的條數。比如10個分區,每個分區每秒最多拉去1000條。則每秒最高拉去10000條數據。

4、spark streaming背壓機制

  把spark.streaming.backpressure.enabled 參數設置為ture,開啟背壓機制后Spark Streaming會根據延遲動態去kafka消費數據,上限由spark.streaming.kafka.maxRatePerPartition參數控制,

       所以兩個參數一般會一起使用。

5、spark streaming優雅關閉

  把spark.streaming.stopGracefullyOnShutdown參數設置成ture,Spark會在JVM關閉時正常關閉StreamingContext,而不是立馬關閉

       Kill 命令:yarn application -kill     后面跟 applicationid


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM