更新時(shí)間:2017-09-01 來源:黑馬程序員云計(jì)算大數(shù)據(jù)培訓(xùn)學(xué)院 瀏覽量:
有兩種數(shù)據(jù)需要被進(jìn)行checkpoint:
1.元數(shù)據(jù)checkpoint—-將定義了流式計(jì)算邏輯的信息,報(bào)錯(cuò)到容錯(cuò)的存儲(chǔ)系統(tǒng)上,比如HDFS
當(dāng)運(yùn)行Spark—Streaming應(yīng)用程序的Driver進(jìn)程所在的節(jié)點(diǎn)失敗時(shí),該信息可以用于進(jìn)行恢復(fù)。
元數(shù)據(jù)信息包括了:
1.1:配置信息—?jiǎng)?chuàng)建Spark-Streaming應(yīng)用程序的配置信息,比如SparkConf
1.2:DStream的操作信息—-定義了Spark-Stream應(yīng)用程序的計(jì)算邏輯的DStream操作信息
1.3:未處理的batch信息—-哪些job正在排隊(duì),還沒處理的batch信息。
2.數(shù)據(jù)checkpoint—將實(shí)時(shí)計(jì)算過程中產(chǎn)生的RDD的數(shù)據(jù)保存到可靠的存儲(chǔ)系統(tǒng)中
對(duì)于一些將多個(gè)batch的數(shù)據(jù)進(jìn)行聚合的,有狀態(tài)的transformation操作,這是非常有用的,
在這種tranformation操作中,生成的RDD是依賴與之前的batch的,這會(huì)導(dǎo)致隨著時(shí)間的推移,Rdd的依賴
鏈條越來越長(zhǎng),要避免由于依賴鏈條越來越長(zhǎng),導(dǎo)致一起變得越來越長(zhǎng)的失敗恢復(fù)時(shí)間,有狀態(tài)的transformation
操作執(zhí)行過程中間產(chǎn)生的RDD,會(huì)定期的被checkpoint盜可靠的存儲(chǔ)系統(tǒng)上,比如HDFS,從而削減RDD的依賴鏈條,進(jìn)而縮短失敗恢復(fù)時(shí),
RDD的回復(fù)時(shí)間