Flink 學(xué)習(xí)
https://github.com/zhisheng17/flink-learning
麻煩路過的各位親給這個(gè)項(xiàng)目點(diǎn)個(gè) star,太不易了,寫了這么多,算是對我堅(jiān)持下來的一種鼓勵吧!
http://www.54tianzhisheng.cn/2019/12/31/Flink-resources/

本項(xiàng)目結(jié)構(gòu)

博客
1、Flink 從0到1學(xué)習(xí) —— Apache Flink 介紹
2、Flink 從0到1學(xué)習(xí) —— Mac 上搭建 Flink 1.6.0 環(huán)境并構(gòu)建運(yùn)行簡單程序入門
3、Flink 從0到1學(xué)習(xí) —— Flink 配置文件詳解
4、Flink 從0到1學(xué)習(xí) —— Data Source 介紹
5、Flink 從0到1學(xué)習(xí) —— 如何自定義 Data Source ?
6、Flink 從0到1學(xué)習(xí) —— Data Sink 介紹
7、Flink 從0到1學(xué)習(xí) —— 如何自定義 Data Sink ?
8、Flink 從0到1學(xué)習(xí) —— Flink Data transformation(轉(zhuǎn)換)
9、Flink 從0到1學(xué)習(xí) —— 介紹 Flink 中的 Stream Windows
10、Flink 從0到1學(xué)習(xí) —— Flink 中的幾種 Time 詳解
11、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 ElasticSearch
12、Flink 從0到1學(xué)習(xí) —— Flink 項(xiàng)目如何運(yùn)行?
13、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 Kafka
14、Flink 從0到1學(xué)習(xí) —— Flink JobManager 高可用性配置
15、Flink 從0到1學(xué)習(xí) —— Flink parallelism 和 Slot 介紹
16、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)批量寫入到 MySQL
17、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 RabbitMQ
18、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 HBase
19、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 HDFS
20、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 Redis
21、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 Cassandra
22、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 Flume
23、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 InfluxDB
24、Flink 從0到1學(xué)習(xí) —— Flink 讀取 Kafka 數(shù)據(jù)寫入到 RocketMQ
25、Flink 從0到1學(xué)習(xí) —— 你上傳的 jar 包藏到哪里去了
26、Flink 從0到1學(xué)習(xí) —— 你的 Flink job 日志跑到哪里去了
Flink 源碼項(xiàng)目結(jié)構(gòu)

學(xué)習(xí)資料
另外我自己整理了些 Flink 的學(xué)習(xí)資料,目前已經(jīng)全部放到微信公眾號了。
你可以加我的微信:zhisheng_tian,然后回復(fù)關(guān)鍵字:Flink 即可無條件獲取到,轉(zhuǎn)載請聯(lián)系本人獲取授權(quán),違者必究。

更多私密資料請加入知識星球!

有人要問知識星球里面更新什么內(nèi)容?值得加入嗎?
目前知識星球內(nèi)已更新的系列文章:
2、Flink 源碼解析 —— 項(xiàng)目結(jié)構(gòu)一覽
4、Flink 源碼解析 —— standalone session 模式啟動流程
5、Flink 源碼解析 —— Standalone Session Cluster 啟動流程深度分析之 Job Manager 啟動
6、Flink 源碼解析 —— Standalone Session Cluster 啟動流程深度分析之 Task Manager 啟動
7、Flink 源碼解析 —— 分析 Batch WordCount 程序的執(zhí)行過程
8、Flink 源碼解析 —— 分析 Streaming WordCount 程序的執(zhí)行過程
9、Flink 源碼解析 —— 如何獲取 JobGraph?
10、Flink 源碼解析 —— 如何獲取 StreamGraph?
11、Flink 源碼解析 —— Flink JobManager 有什么作用?
12、Flink 源碼解析 —— Flink TaskManager 有什么作用?
13、Flink 源碼解析 —— JobManager 處理 SubmitJob 的過程
14、Flink 源碼解析 —— TaskManager 處理 SubmitJob 的過程
15、Flink 源碼解析 —— 深度解析 Flink Checkpoint 機(jī)制
16、Flink 源碼解析 —— 深度解析 Flink 序列化機(jī)制
17、Flink 源碼解析 —— 深度解析 Flink 是如何管理好內(nèi)存的?
18、Flink 源碼解析 —— 如何獲取 ExecutionGraph ?
除了《從1到100深入學(xué)習(xí)Flink》源碼學(xué)習(xí)這個(gè)系列文章,《從0到1學(xué)習(xí)Flink》的案例文章也會優(yōu)先在知識星球更新,讓大家先通過一些 demo 學(xué)習(xí) Flink,再去深入源碼學(xué)習(xí)!
如果學(xué)習(xí) Flink 的過程中,遇到什么問題,可以在里面提問,我會優(yōu)先解答,這里做個(gè)抱歉,自己平時(shí)工作也挺忙,微信的問題不能做全部做一些解答,
但肯定會優(yōu)先回復(fù)給知識星球的付費(fèi)用戶的,慶幸的是現(xiàn)在星球里的活躍氛圍還是可以的,有不少問題通過提問和解答的方式沉淀了下來。
1、為何我使用 ValueState 保存狀態(tài) Job 恢復(fù)是狀態(tài)沒恢復(fù)?
2、flink中watermark究竟是如何生成的,生成的規(guī)則是什么,怎么用來處理亂序數(shù)據(jù)
3、消費(fèi)kafka數(shù)據(jù)的時(shí)候,如果遇到了臟數(shù)據(jù),或者是不符合規(guī)則的數(shù)據(jù)等等怎么處理呢?
4、在Kafka 集群中怎么指定讀取/寫入數(shù)據(jù)到指定broker或從指定broker的offset開始消費(fèi)?
6、jobmanager掛掉后,提交的job怎么不經(jīng)過手動重新提交執(zhí)行?
8、通過flink 儀表盤提交的jar 是存儲在哪個(gè)目錄下?
11、flink 啟動時(shí)不自動創(chuàng)建 上傳jar的路徑,能指定一個(gè)創(chuàng)建好的目錄嗎
12、Flink sink to es 集群上報(bào) slot 不夠,單機(jī)跑是好的,為什么?
13、Fllink to elasticsearch如何創(chuàng)建索引文檔期時(shí)間戳?
14、blink有沒有api文檔或者demo,是否建議blink用于生產(chǎn)環(huán)境。
16、Flink VS Spark Streaming VS Storm VS Kafka Stream
17、你們做實(shí)時(shí)大屏的技術(shù)架構(gòu)是什么樣子的?flume→kafka→flink→redis,然后后端去redis里面撈數(shù)據(jù),醬紫可行嗎?
18、做一個(gè)統(tǒng)計(jì)指標(biāo)的時(shí)候,需要在Flink的計(jì)算過程中多次讀寫redis,感覺好怪,星主有沒有好的方案?
19、Flink 使用場景大分析,列舉了很多的常用場景,可以好好參考一下
20、將kafka中數(shù)據(jù)sink到mysql時(shí),metadata的數(shù)據(jù)為空,導(dǎo)入mysql數(shù)據(jù)不成功???
22、flink on yarn jobmanager的HA需要怎么配置。還是說yarn給管理了
27、flink sql任務(wù)在某個(gè)特定階段會發(fā)生tm和jm丟失心跳,是不是由于gc時(shí)間過長呢,
30、你們怎么對線上flink做監(jiān)控的,如果整個(gè)程序失敗了怎么自動重啟等等
31、flink cep規(guī)則動態(tài)解析有接觸嗎?有沒有成型的框架?
32、每一個(gè)Window都有一個(gè)watermark嗎?window是怎么根據(jù)watermark進(jìn)行觸發(fā)或者銷毀的?
33、 CheckPoint與SavePoint的區(qū)別是什么?
34、flink可以在算子中共享狀態(tài)嗎?或者大佬你有什么方法可以共享狀態(tài)的呢?
36、這種情況,我們調(diào)并行度 還是配置參數(shù)好
37、大家都用jdbc寫,各種數(shù)據(jù)庫增刪查改拼sql有沒有覺得很累,ps.set代碼一大堆,還要計(jì)算每個(gè)參數(shù)的位置
41、flink每7小時(shí)不知道在處理什么, CPU 負(fù)載 每7小時(shí),有一次高峰,5分鐘內(nèi)平均負(fù)載超過0.8,如截圖
42、有沒有Flink寫的項(xiàng)目推薦?我想看到用Flink寫的整體項(xiàng)目是怎么組織的,不單單是一個(gè)單例子
44、我想根據(jù)不同業(yè)務(wù)表(case when)進(jìn)行不同的redis sink(hash ,set),我要如何操作?
45、這個(gè)需要清理什么數(shù)據(jù)呀,我把hdfs里面的已經(jīng)清理了 啟動還是報(bào)這個(gè)
46、 在流處理系統(tǒng),在機(jī)器發(fā)生故障恢復(fù)之后,什么情況消息最多會被處理一次?什么情況消息最少會被處理一次呢?
47、我檢查點(diǎn)都調(diào)到5分鐘了,這是什么問題
48、reduce方法后 那個(gè)交易時(shí)間 怎么不是最新的,是第一次進(jìn)入的那個(gè)時(shí)間,
53、業(yè)務(wù)場景是實(shí)時(shí)獲取數(shù)據(jù)存redis,請問我要如何按天、按周、按月分別存入redis里?(比方說過了一天自動換一個(gè)位置存redis)
54、有人 AggregatingState 的例子嗎, 感覺官方的例子和 官網(wǎng)的不太一樣?
55、flink-jdbc這個(gè)jar有嗎?怎么沒找到?。?.8.0的沒找到,1.6.2的有
62、在用中間狀態(tài)的時(shí)候,如果中間一些信息保存在state中,有沒有必要在redis中再保存一份,來做第三方的存儲。
63、能否出一期flink state的文章。什么場景下用什么樣的state?如,最簡單的,實(shí)時(shí)累加update到state。
64、flink的雙流join博主有使用的經(jīng)驗(yàn)嗎?會有什么常見的問題嗎
66、flink 定時(shí)任務(wù)怎么做?有相關(guān)的demo么?
67、流式處理過程中數(shù)據(jù)的一致性如何保證或者如何檢測
68、重啟flink單機(jī)集群,還報(bào)job not found 異常。
71、flink 支持hadoop 主備么? hadoop主節(jié)點(diǎn)掛了 flink 會切換到hadoop 備用節(jié)點(diǎn)?
72、請教大家: 實(shí)際 flink 開發(fā)中用 scala 多還是 java多些? 剛?cè)胧?flink 大數(shù)據(jù) scala 需要深入學(xué)習(xí)么?
73、我使用的是flink是1.7.2最近用了split的方式分流,但是底層的SplitStream上卻標(biāo)注為Deprecated,請問是官方不推薦使用分流的方式嗎?
74、KeyBy 的正確理解,和數(shù)據(jù)傾斜問題的解釋
75、用flink時(shí),遇到個(gè)問題 checkpoint大概有2G左右, 有背壓時(shí),flink會重啟有遇到過這個(gè)問題嗎
78、flink如何在較大的數(shù)據(jù)量中做去重計(jì)算。
79、flink能在沒有數(shù)據(jù)的時(shí)候也定時(shí)執(zhí)行算子嗎?
80、使用rocksdb狀態(tài)后端,自定義pojo怎么實(shí)現(xiàn)序列化和反序列化的,有相關(guān)demo么?
81、check point 老是失敗,是不是自定義的pojo問題?到本地可以,到hdfs就不行,網(wǎng)上也有很多類似的問題 都沒有一個(gè)很好的解釋和解決方案
83、Flink聚合結(jié)果直接寫Mysql的冪等性設(shè)計(jì)問題
84、Flink job打開了checkpoint,用的rocksdb,通過觀察hdfs上checkpoint目錄,為啥算副本總量會暴增爆減
85、Flink 提交任務(wù)的 jar包可以指定路徑為 HDFS 上的嗎
89、用flink清洗數(shù)據(jù),其中要訪問redis,根據(jù)redis的結(jié)果來決定是否把數(shù)據(jù)傳遞到下流,這有可能實(shí)現(xiàn)嗎?
90、監(jiān)控頁面流處理的時(shí)候這個(gè)發(fā)送和接收字節(jié)為0。
93、 Flink 應(yīng)用程序本地 ide 里面運(yùn)行的時(shí)候并行度是怎么算的?
等等等,還有很多,復(fù)制粘貼的我手累啊 ??
另外里面還會及時(shí)分享 Flink 的一些最新的資料(包括數(shù)據(jù)、視頻、PPT、優(yōu)秀博客,持續(xù)更新,保證全網(wǎng)最全,因?yàn)槲抑?Flink 目前的資料還不多)
關(guān)于自己對 Flink 學(xué)習(xí)的一些想法和建議
Flink 全網(wǎng)最全資料獲取,持續(xù)更新,點(diǎn)擊可以獲取
再就是星球用戶給我提的一點(diǎn)要求:不定期分享一些自己遇到的 Flink 項(xiàng)目的實(shí)戰(zhàn),生產(chǎn)項(xiàng)目遇到的問題,是如何解決的等經(jīng)驗(yàn)之談!
1、如何查看自己的 Job 執(zhí)行計(jì)劃并獲取執(zhí)行計(jì)劃圖
2、當(dāng)實(shí)時(shí)告警遇到 Kafka 千萬數(shù)據(jù)量堆積該咋辦?
3、如何在流數(shù)據(jù)中比兩個(gè)數(shù)據(jù)的大?。慷喾N解決方法
5、Flink環(huán)境部署、應(yīng)用配置及運(yùn)行應(yīng)用程序
7、《大數(shù)據(jù)“重磅炸彈”——實(shí)時(shí)計(jì)算框架 Flink》專欄系列文章目錄大綱
8、《大數(shù)據(jù)“重磅炸彈”——實(shí)時(shí)計(jì)算框架 Flink》Chat 付費(fèi)文章
9、Apache Flink 是如何管理好內(nèi)存的?
10、Flink On K8s
當(dāng)然,除了更新 Flink 相關(guān)的東西外,我還會更新一些大數(shù)據(jù)相關(guān)的東西,因?yàn)槲覀€(gè)人之前不是大數(shù)據(jù)開發(fā),所以現(xiàn)在也要狂補(bǔ)些知識!總之,希望進(jìn)來的童鞋們一起共同進(jìn)步!
7、Lightweight Asynchronous Snapshots for Distributed Dataflows
8、Apache Flink?- Stream and Batch Processing in a Single Engine
9、Flink狀態(tài)管理與容錯(cuò)機(jī)制
10、Flink 流批一體的技術(shù)架構(gòu)以及在阿里 的實(shí)踐