国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Flink的容錯(cuò)機(jī)制

這篇具有很好參考價(jià)值的文章主要介紹了Flink的容錯(cuò)機(jī)制。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

容錯(cuò)機(jī)制

容錯(cuò):指出錯(cuò)后不影響數(shù)據(jù)的繼續(xù)處理,并且恢復(fù)到出錯(cuò)前的狀態(tài)。
檢查點(diǎn):用存檔讀檔的方式,將之前的某個(gè)時(shí)間點(diǎn)的所有狀態(tài)保存下來,故障恢復(fù)繼續(xù)處理的結(jié)果應(yīng)該和發(fā)送故障前完全一致,這就是所謂的檢查點(diǎn)。

檢查點(diǎn)的控制節(jié)點(diǎn):jobManager里面的檢查點(diǎn)協(xié)調(diào)器,向source節(jié)點(diǎn)的數(shù)據(jù)插入barrier標(biāo)記。

Flink的容錯(cuò)機(jī)制,flink,java,服務(wù)器

檢查點(diǎn)的保存:
- 周期性觸發(fā)保存
- 保存的時(shí)間點(diǎn):所有算子恰好處理完一個(gè)相同的輸入數(shù)據(jù)時(shí)(使用Barrier機(jī)制)

檢查點(diǎn)分界線Barrier

barrier標(biāo)記表示這個(gè)標(biāo)記之前的所有數(shù)據(jù)已經(jīng)將狀態(tài)更改存入當(dāng)前檢查點(diǎn)。后續(xù)的算子節(jié)點(diǎn)只要遇到它就開始對狀態(tài)做持久化快照保存。在它之后對數(shù)據(jù)狀態(tài)的改變,只能保存到下一個(gè)檢查點(diǎn)中。

檢查點(diǎn)算法:Chandy-Lamport算法的一種變體。
算法兩個(gè)原則:

  1. 當(dāng)上游任務(wù)向多個(gè)并行下游任務(wù)發(fā)送barrier時(shí),需要廣播出去
  2. 而當(dāng)多個(gè)上游任務(wù)向同一個(gè)下游任務(wù)傳遞分界線時(shí),需要在下游任務(wù)執(zhí)行“分界線對齊”操作,也就是需要等到所有并行分區(qū)的barrier都到齊,才可以開始狀態(tài)的保存。

分界線對齊策略

  1. 精確一次(等待分界線2,先到的數(shù)據(jù)暫不進(jìn)行處理):處理多次的結(jié)果是一樣的
    Flink的容錯(cuò)機(jī)制,flink,java,服務(wù)器

  2. 至少一次(對先到的數(shù)據(jù)進(jìn)行處理):檢查點(diǎn)中記錄了先到數(shù)據(jù)對狀態(tài)的更新信息,但是還未保存到狀態(tài)后端,如果此時(shí)發(fā)生故障進(jìn)行故障恢復(fù),會(huì)導(dǎo)致從source重復(fù)發(fā)送剛剛已經(jīng)處理過的先到數(shù)據(jù)。
    Flink的容錯(cuò)機(jī)制,flink,java,服務(wù)器

分界線非對齊策略

Flink的容錯(cuò)機(jī)制,flink,java,服務(wù)器

  • 非對齊策略只有精準(zhǔn)一次
  • 缺點(diǎn)是需要將算子左邊,分界線右邊的所有數(shù)據(jù)存儲(chǔ)起來,增加內(nèi)存壓力。

Flink的容錯(cuò)機(jī)制,flink,java,服務(wù)器

檢查點(diǎn)配置

 CheckpointConfig checkpointConfig = env.getCheckpointConfig();
        //指定一致性語義
//        checkpointConfig.setCheckpointingMode(CheckpointingMode.EXACTLY_ONCE);

        //檢查點(diǎn)的存儲(chǔ)
        //JobManagerCheckpointStorage:將檢查點(diǎn)存儲(chǔ)到JobManager的內(nèi)存中
        //FileSystemCehckpointSotrage:將檢查點(diǎn)存儲(chǔ)到指定的文件系統(tǒng)中
        checkpointConfig.setCheckpointStorage(new FileSystemCheckpointStorage("hdfs://hadoop102:8020/flink/checkpoint"));

        //狀態(tài)后端
//        env.setStateBackend(new EmbeddedRocksDBStateBackend());

        //檢查點(diǎn)間隔
        checkpointConfig.setCheckpointInterval(2000L);

        //檢查點(diǎn)超時(shí)時(shí)間
        checkpointConfig.setCheckpointTimeout(10000);

        //同時(shí)存在的檢查點(diǎn)個(gè)數(shù)
        checkpointConfig.setMaxConcurrentCheckpoints(1);

        //兩次檢查點(diǎn)之間的間隔
        checkpointConfig.setMinPauseBetweenCheckpoints(1000L);

        //檢查點(diǎn)清理
        checkpointConfig.setExternalizedCheckpointCleanup(CheckpointConfig.ExternalizedCheckpointCleanup.DELETE_ON_CANCELLATION);

        //檢查點(diǎn)允許的失敗次數(shù)
        checkpointConfig.setTolerableCheckpointFailureNumber(5);

        //開啟非對齊模式:只有在精準(zhǔn)一次時(shí)才能開啟,且最大同時(shí)存在檢查點(diǎn)只能為1
        checkpointConfig.enableUnalignedCheckpoints();

        //對齊超時(shí),自動(dòng)開啟非對齊
        checkpointConfig.setAlignedCheckpointTimeout(Duration.ofSeconds(5));

        //最終檢查點(diǎn):

        //開啟changlog
        env.enableChangelogStateBackend(true);

通用增量changelog配置:hashmap本身不支持增量存儲(chǔ)狀態(tài),rockDB是支持的。changeLog可以不論hashmap還是rockDB,都實(shí)現(xiàn)增量存儲(chǔ)。開啟該配置可以減少檢查點(diǎn)的持續(xù)時(shí)間,在創(chuàng)建檢查點(diǎn)時(shí),只有changlog中的相關(guān)部分需要上傳。
- 創(chuàng)建更多的文件
- 殘留更多的文件
- 使用更多的IO來上傳狀態(tài)
- 占用更多的CPU資源來序列化狀態(tài)變更

保存點(diǎn)savepoint

檢查點(diǎn)與保存點(diǎn)的區(qū)別:

  1. 檢查點(diǎn)
    • 檢查點(diǎn)是頻繁觸發(fā)的,設(shè)計(jì)目標(biāo)就是輕量和盡快恢復(fù)
    • 檢查點(diǎn)的數(shù)據(jù)在作業(yè)終止后是否刪除可以配置
    • 數(shù)據(jù)存儲(chǔ)格式可能是增量的
  2. 保存點(diǎn)
    • 設(shè)計(jì)更側(cè)重于可移植和操作靈活性,即運(yùn)維
    • 針對計(jì)劃中的,手動(dòng)的運(yùn)維
    • 保存點(diǎn)在作業(yè)終止和恢復(fù)后都不會(huì)刪除
    • 保存點(diǎn)的數(shù)據(jù)格式以狀態(tài)后端獨(dú)立的(標(biāo)準(zhǔn)的)數(shù)據(jù)格式存儲(chǔ)

保存點(diǎn)的用途:文章來源地址http://www.zghlxwxcb.cn/news/detail-758182.html

  • 版本管理和歸檔存儲(chǔ)
  • 更新Flink版本
  • 更新應(yīng)用程序
  • 調(diào)整并行度

保存點(diǎn)的使用之切換狀態(tài)后端

  1. 開啟flink集群
  2. 提交任務(wù) bin/flink run -d -c -Dstate.backend=hashmap 全類名 jar路徑
  3. 保存點(diǎn)的落盤: bin/flink -yid -type canonical yarn_id job_id hdfs://hadoop102/flink-savepoint
  4. 切換狀態(tài)后重啟:bin/flink run -d -Dstate.backend=rocksdb -s hdfs保存點(diǎn)路徑 全類名 jar包路徑

到了這里,關(guān)于Flink的容錯(cuò)機(jī)制的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【Flink】容錯(cuò)機(jī)制

    【Flink】容錯(cuò)機(jī)制

    目錄 1、檢查點(diǎn) ?編輯1.1?檢查點(diǎn)的保存 1.1.1?周期性的觸發(fā)保存 1.1.2 保存的時(shí)間點(diǎn) 1.1.3 時(shí)間點(diǎn)的保存與恢復(fù) 1.1.3.1保存 ?編輯 1.1.3.2 恢復(fù)的具體步驟: 1.2 檢查點(diǎn)算法 1.2.1?檢查點(diǎn)分界線(Barrier) 1.2.2 分布式快照算法(Barrier對齊的精準(zhǔn)一次) 1.2.3 分布式快照算法(Barrier對

    2024年02月04日
    瀏覽(20)
  • Flink 學(xué)習(xí)八 Flink 容錯(cuò)機(jī)制 & checkpoint & savepoint

    Flink 學(xué)習(xí)八 Flink 容錯(cuò)機(jī)制 & checkpoint & savepoint

    https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/concepts/stateful-stream-processing/ 上一節(jié)講述 狀態(tài)后端 ;Flink是一個(gè) 帶狀態(tài)stateful 的數(shù)據(jù)處理系統(tǒng),在處理數(shù)據(jù)的過程中,各個(gè)算子的記錄的狀態(tài)會(huì)隨著算子處理的狀態(tài)而改變 ; 狀態(tài)后端 負(fù)責(zé)將狀態(tài)保存在內(nèi)存或外部持久化存儲(chǔ)中 (內(nèi)存

    2024年02月09日
    瀏覽(22)
  • 大數(shù)據(jù)之flink容錯(cuò)機(jī)制

    大數(shù)據(jù)之flink容錯(cuò)機(jī)制 https://blog.51cto.com/dashujutongmeng/5241407

    2024年02月15日
    瀏覽(23)
  • Flink運(yùn)行架構(gòu)以及容錯(cuò)機(jī)制

    Flink運(yùn)行架構(gòu)以及容錯(cuò)機(jī)制

    flink是一個(gè)開發(fā)框架,用于進(jìn)行數(shù)據(jù)批處理,本文主要探討Flink任務(wù)運(yùn)行的的架構(gòu)。由于在日常生產(chǎn)環(huán)境中,常用的是flink on yarn 和flink on k8s兩種類型的模式,因此本文也主要探討這兩種類型的異同,以及不同角色的容錯(cuò)機(jī)制。 JM是一個(gè)獨(dú)立的JVM進(jìn)程,在HA場景下一個(gè)App能夠同

    2024年01月24日
    瀏覽(21)
  • 大數(shù)據(jù)學(xué)習(xí)之Flink、快速搞懂Flink的容錯(cuò)機(jī)制?。?!

    大數(shù)據(jù)學(xué)習(xí)之Flink、快速搞懂Flink的容錯(cuò)機(jī)制?。?!

    第一章、Flink的容錯(cuò)機(jī)制 第二章、Flink核心組件和工作原理 第三章、Flink的恢復(fù)策略 第四章、Flink容錯(cuò)機(jī)制的注意事項(xiàng) 第五章、Flink的容錯(cuò)機(jī)制與其他框架的容錯(cuò)機(jī)制相比較 目錄 第一章、Flink的容錯(cuò)機(jī)制 Ⅰ、Flink的容錯(cuò)機(jī)制 1. 概念: Ⅱ、?狀態(tài)的一致性: 1.一致性級別: 2

    2024年01月22日
    瀏覽(21)
  • 大數(shù)據(jù)學(xué)習(xí)之Flink、Flink容錯(cuò)機(jī)制的注意事項(xiàng)

    ?第一章、Flink的容錯(cuò)機(jī)制 第二章、Flink核心組件和工作原理 第三章、Flink的恢復(fù)策略 第四章、Flink容錯(cuò)機(jī)制的注意事項(xiàng) 第五章、Flink的容錯(cuò)機(jī)制與其他框架的容錯(cuò)機(jī)制相比較 目錄 第四章、Flink容錯(cuò)機(jī)制的注意事項(xiàng) Ⅰ、注意事項(xiàng) 1. Checkpoint的穩(wěn)定性: 2. 狀態(tài)一致性: 3. 失敗的

    2024年01月23日
    瀏覽(23)
  • 《Flink學(xué)習(xí)筆記》——第十章 容錯(cuò)機(jī)制

    《Flink學(xué)習(xí)筆記》——第十章 容錯(cuò)機(jī)制

    10.1 檢查點(diǎn)(Checkpoint) 為了故障恢復(fù),我們需要把之前某個(gè)時(shí)間點(diǎn)的所有狀態(tài)保存下來,這份“存檔”就是“檢查點(diǎn)” 遇到故障重啟的時(shí)候,我們可以從檢查點(diǎn)中“讀檔”,恢復(fù)出之前的狀態(tài),這樣就可以回到當(dāng)時(shí)保存的一刻接著處理數(shù)據(jù)了。 故障恢復(fù)之后繼續(xù)處理的結(jié)果

    2024年02月10日
    瀏覽(20)
  • 大數(shù)據(jù)-玩轉(zhuǎn)數(shù)據(jù)-Flink 容錯(cuò)機(jī)制

    大數(shù)據(jù)-玩轉(zhuǎn)數(shù)據(jù)-Flink 容錯(cuò)機(jī)制

    在分布式架構(gòu)中,當(dāng)某個(gè)節(jié)點(diǎn)出現(xiàn)故障,其他節(jié)點(diǎn)基本不受影響。在 Flink 中,有一套完整的容錯(cuò)機(jī)制,最重要就是檢查點(diǎn)(checkpoint)。 在流處理中,我們可以用存檔讀檔的思路,把之前的計(jì)算結(jié)果做個(gè)保存,這樣重啟之后就可以繼續(xù)處理新數(shù)據(jù)、而不需要重新計(jì)算了。所以

    2024年02月07日
    瀏覽(22)
  • 大數(shù)據(jù)學(xué)習(xí)之Flink、比較不同框架的容錯(cuò)機(jī)制

    ?第一章、Flink的容錯(cuò)機(jī)制 第二章、Flink核心組件和工作原理 第三章、Flink的恢復(fù)策略 第四章、Flink容錯(cuò)機(jī)制的注意事項(xiàng) 第五章、Flink的容錯(cuò)機(jī)制與其他框架的容錯(cuò)機(jī)制相比較 目錄 第五章、Flink的容錯(cuò)機(jī)制與其他框架的容錯(cuò)機(jī)制相比較 Ⅰ、Flink的容錯(cuò)機(jī)制與其他框架的容錯(cuò)機(jī)

    2024年01月23日
    瀏覽(27)
  • Flink 狀態(tài)管理與容錯(cuò)機(jī)制(CheckPoint & SavePoint)的關(guān)系

    Flink 狀態(tài)管理與容錯(cuò)機(jī)制(CheckPoint & SavePoint)的關(guān)系

    無狀態(tài)計(jì)算的例子: 例如一個(gè)加法算子,第一次輸入 2+3=5 那么以后我多次數(shù)據(jù) 2+3 的時(shí)候得到的結(jié)果都是 5 。得出的結(jié)論就是,相同的輸入都會(huì)得到相同的結(jié)果,與次數(shù)無關(guān)。 有狀態(tài)計(jì)算的例子: 訪問量的統(tǒng)計(jì),我們都知道 Nginx 的訪問日志一個(gè)請求一條日志,基于此我們就

    2024年02月04日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包