概述
Fink用於處理計算的,如下圖所示,將交易、日誌、物聯網、點選流的資料輸入到Flink中進行處理計算,處理完成之後輸出到應用、日誌、資料庫中。Flink是以流的方式對資料進行處理的,所謂流就是源源不斷,每時每刻都在有序的產生,例如裝置儀器執行資料就屬於資料流,因為裝置儀器無時無刻都再執行併產生資料。
流式資料處理
流式資料處理
資料就像河流一樣,源源不斷的產生資料,在處理資料時,來一個處理一個,這種處理模式被成為流式處理。資料流則就像聊天一樣,來一條資訊處理一次。
批處理
資料是以批次的方式傳送資料,然後進行處理,批處理就像寫作文一樣,將大量的字元拼在一起然後再進行處理操作。
傳統事務處理
傳統事務是根據業務將不同的業務功能拆出多個服務,每個服務都會對資料庫進行讀寫操作。在傳統事務中,處理資料的模式是使用者透過點選頁面功能來產生事件,透過事件完成對資料庫的讀寫操作。系統所產生的事件是源源不斷的,所以傳統事務模式也是資料流。傳統事務處理的優點是來一個請求系統返回一個響應,事務處理可以很好的保證實時性,缺點是隨著系統越發複雜,資料庫中儲存的資料越多,資料庫的查詢效能會下降,最終導致系統會很慢。
有狀態的流處理
與傳統業務處理不同之處在於,有狀態的流處理會將每一次計算後的結果累加到記憶體的本地狀態中,例如要計算溫度平均值時,會將溫度儲存到資料庫中並根據歷史溫度將資料儲存到本地狀態中,為了避免服務當機後資料丟失,系統會定時持久化資料到硬碟中。