它既能保證資料一致性「exactly once",又能實時快速的處理海量資料。與生俱來的 watermark 功能讓它能對複雜資料亂序場景應對自如,它充分體現了「批」、「流」一體的完美結合同時又代表著「流」、「表」二象性的和諧統一。
兩種資料集:無邊界資料集(連續不斷追加)和有邊界資料集
兩種執行模式
- 流式傳輸(streaming) :只要資料生成,連續執行的處理
- 批處理(batch):在有限的時間內執行並執行到完整的處理,完成後釋放計算資源
使用任一型別的執行模型來處理任一型別的資料集都是可能的,但不一定是最優的。
flink依賴於流式處理模型,這是一種適用於處理無界資料集的流程:流執行是對連續生成的資料進行連續處理。
flink是分布式流處理的開源框架:
提供準確的結果,即使在無序或延遲資料的情況下也是如此
具有狀態和容錯能力,可以在保持應用狀態的同時無故障地從故障中恢復
大規模執行,在數千個節點上執行,具有非常好的吞吐量和延遲特性
狀態管理,無序資料處理,靈活的視窗 - 對於flink來說在無界資料集上計算的結果準確性至關重要.
flink保證用於狀態計算的一次性語義。「有狀態」意味著應用程式可以維護一段時間內已處理的資料的聚合或彙總,flink的檢查點機制可以確保在發生故障時應用程式狀態的一致性語義。
flink支援流處理和視窗與事件時間語義,事件時間使得計算準確的結果變得容易,這些流可能產生無序資料或者資料延遲到達的情況。
除了資料驅動的視窗之外,flink還支援基於時間,計數或會話的靈活視窗。windows可以通過靈活的觸發條件進行定製,以支援複雜的流式傳輸模式。flink的視窗使得可以對建立資料的環境的現實進行建模。
參考文件
flink簡介
2021最新大資料技術之Flink核心原始碼解析課程
課程介紹 本套教程另闢蹊徑,針對flink 1.12.0版本的核心模組進行原始碼級講解,從任務提交流程 通訊過程 task排程 記憶體模型四大方面入手,庖丁解牛逐行分析原始碼,手術刀級別剖析flink核心架構!課程目錄 00.flink核心解析 課程簡介 01.flink核心解析 提交流程 程式入口...
大資料 Flink部落 1
大資料兩個主要的儲存系統 hdfs和hbase 批處理比較熱門的大資料框架是hadoop和spark hadoop和spark的最基本的區別 hadoophe spark 這二者都是大資料框架,即便如此二者各自存在的目的是不同的。hadoop是乙個分布式的資料基礎設施,它是將龐大的資料集分派到由若干...
大資料基礎 Flink 視窗模型
在大多數場景下,我們需要統計的資料流都是無界的,因此我們無法等待整個資料流終止後才進行統計。通常情況下,我們只需要對某個時間範圍或者數量範圍內的資料進行統計分析 如每隔五分鐘統計一次過去一小時內所有商品的點選量 或者每發生1000次點選後,都去統計一下每個商品點選率的佔比。在 flink 中,我們使...