我們?cè)趯W(xué)習(xí)Flink的時(shí)候,到底在學(xué)習(xí)什么?
點(diǎn)擊上方藍(lán)色字體,選擇“設(shè)為星標(biāo)”
回復(fù)”資源“獲取更多資源

這是一篇指南和大綱性質(zhì)的文章。 Flink經(jīng)過2年左右的官方和社區(qū)的大規(guī)模推廣,現(xiàn)在國(guó)內(nèi)的一眾大小企業(yè)基本都在使用。
核心背景和論文
基礎(chǔ)概念
流(無界流、有界流)和轉(zhuǎn)換
State和checkpoint
并行度
Workers,Slots,Resources
時(shí)間和窗口
...
核心模塊


源碼閱讀
Flink 基本組件和邏輯計(jì)劃:介紹了 Flink 的基本組件、集群構(gòu)建的過程、以及客戶端邏輯計(jì)劃的生成過程
Flink 物理計(jì)劃生成:介紹了 Flink JobManager 對(duì)邏輯計(jì)劃的運(yùn)行時(shí)抽象,運(yùn)行時(shí)物理計(jì)劃的生成和管理等
Jobmanager 基本組件和TaskManager的基本組件
Flink 算子的生命周期:介紹了 Flink 的算子從構(gòu)建、生成、運(yùn)行、及銷毀的過程
Flink 網(wǎng)絡(luò)棧:介紹了 Flink 網(wǎng)絡(luò)層的抽象,包括中間結(jié)果抽象、輸入輸出管理、BackPressure 技術(shù)、Netty 連接等
Flink的水印和Checkpoint
Flink-scheduler:介紹 Flink 的任務(wù)調(diào)度算法及負(fù)載均衡
Flink對(duì)用戶代碼異常處理:介紹作業(yè)的代碼異常后 Flink 的處理邏輯,從而更好的理解 Flink 是如何保證了 exactly-once 的計(jì)算語義
Flink Table/SQL 執(zhí)行流程、Flink和Hive的集成等
行業(yè)應(yīng)用
實(shí)時(shí)數(shù)據(jù)計(jì)算
各大電商每年雙十一都會(huì)直播,實(shí)時(shí)監(jiān)控大屏是如何做到的? 公司想看一下大促中銷量最好的商品 TOP5? 我是公司的運(yùn)維,希望能實(shí)時(shí)接收到服務(wù)器的負(fù)載情況?
實(shí)時(shí)數(shù)據(jù)倉庫和 ETL

狀態(tài)管理,實(shí)時(shí)數(shù)倉里面會(huì)進(jìn)行很多的聚合計(jì)算,這些都需要對(duì)于狀態(tài)進(jìn)行訪問和管理,F(xiàn)link 支持強(qiáng)大的狀態(tài)管理
豐富的 API,F(xiàn)link 提供極為豐富的多層次 API,包括 Stream API、Table API 及 Flink SQL
生態(tài)完善,實(shí)時(shí)數(shù)倉的用途廣泛,F(xiàn)link 支持多種存儲(chǔ)(HDFS、ES 等)
批流一體,F(xiàn)link 已經(jīng)在將流計(jì)算和批計(jì)算的 API 進(jìn)行統(tǒng)一。

事件驅(qū)動(dòng)型應(yīng)用
我們公司有幾萬臺(tái)服務(wù)器,希望能從服務(wù)器上報(bào)的消息中將 CPU、MEM、LOAD 信息分離出來做分析,然后觸發(fā)自定義的規(guī)則進(jìn)行報(bào)警?我是公司的安全運(yùn)維人員,希望能從每天的訪問日志中識(shí)別爬蟲程序,并且進(jìn)行 IP 限制?

高效的狀態(tài)管理,F(xiàn)link 自帶的 State Backend 可以很好的存儲(chǔ)中間狀態(tài)信息
豐富的窗口支持,F(xiàn)link 支持包含滾動(dòng)窗口、滑動(dòng)窗口及其他窗口
多種時(shí)間語義,F(xiàn)link 支持 Event Time、Processing Time 和 Ingestion Time
不同級(jí)別的容錯(cuò),F(xiàn)link 支持 At Least Once 或 Exactly Once 容錯(cuò)級(jí)別
Flink和IceBerg等框架結(jié)合打造未來的數(shù)據(jù)湖

基于Flink的IOT解決方案


