flink實戰--狀態管理(State TTL、Operator state、Keyed state)

掃一掃加入大數據公衆號和技術交流羣,瞭解更多大數據技術,還有免費資料等你哦

簡介

             Flink官網的自我介紹:Apache Flink® — Stateful Computations over Data Streams,可以看出狀態計算是Flink引以爲豪的殺手鐗。那什麼是帶狀態的計算呢?簡單說計算任務的結果不僅僅依賴於輸入,還依賴於它的當前狀態。實時計算如果任務失敗導致中間狀態丟失,將是一個非常可怕的事情。比如實時計算每天的pv,uv等指標,任務掉線後中間狀態也丟失了,那隻能從凌晨數據重新計算。如果是有狀態的計算大可不必擔心,從任務掉線的時刻繼續計算,媽媽再也不用擔心我的任務掉線了。下面介紹一下Flink如何實現狀態計算和狀態管理。

Flink中的狀態管理

按照數據的劃分和擴張方式,Flink中大致分爲2類:

 Keyed States:記錄每個Key對應的狀態值一個Task上可能包含多個Key不同Task上不會出現相同的Key ,常用的 MapState,       ValueState     

Operator State

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章