大數據“重磅炸彈”——實時計算框架 Flink


Flink 學習

項目地址:https://github.com/zhisheng17/flink-learning/

博客:http://www.54tianzhisheng.cn/tags/Flink/

項目結構

├── README.md
├── flink-learning-cep
├── flink-learning-common
├── flink-learning-connectors
│   ├── flink-learning-connectors-activemq
│   ├── flink-learning-connectors-cassandra
│   ├── flink-learning-connectors-es6
│   ├── flink-learning-connectors-flume
│   ├── flink-learning-connectors-hbase
│   ├── flink-learning-connectors-hdfs
│   ├── flink-learning-connectors-influxdb
│   ├── flink-learning-connectors-kafka
│   ├── flink-learning-connectors-mysql
│   ├── flink-learning-connectors-rabbitmq
│   ├── flink-learning-connectors-redis
│   ├── flink-learning-connectors-rocketmq
├── flink-learning-data-sinks
├── flink-learning-data-sources
├── flink-learning-examples
├── flink-learning-monitor
│   ├── flink-learning-monitor-alert
│   ├── flink-learning-monitor-collector
│   ├── flink-learning-monitor-common
│   ├── flink-learning-monitor-storage
├── flink-learning-sql
├── flink-learning-template

博客

1、《從0到1學習Flink》—— Apache Flink 介紹

2、《從0到1學習Flink》—— Mac 上搭建 Flink 1.6.0 環境並構建運行簡單程序入門

3、《從0到1學習Flink》—— Flink 配置文件詳解

4、《從0到1學習Flink》—— Data Source 介紹

5、《從0到1學習Flink》—— 如何自定義 Data Source ?

6、《從0到1學習Flink》—— Data Sink 介紹

7、《從0到1學習Flink》—— 如何自定義 Data Sink ?

8、《從0到1學習Flink》—— Flink Data transformation(轉換)

9、《從0到1學習Flink》—— 介紹 Flink 中的 Stream Windows

10、《從0到1學習Flink》—— Flink 中的幾種 Time 詳解

11、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 ElasticSearch

12、《從0到1學習Flink》—— Flink 項目如何運行?

13、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 Kafka

14、《從0到1學習Flink》—— Flink JobManager 高可用性配置

15、《從0到1學習Flink》—— Flink parallelism 和 Slot 介紹

16、《從0到1學習Flink》—— Flink 讀取 Kafka 數據批量寫入到 MySQL

17、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 RabbitMQ

18、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 HBase

19、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 HDFS

20、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 Redis

21、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 Cassandra

22、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 Flume

23、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 InfluxDB

24、《從0到1學習Flink》—— Flink 讀取 Kafka 數據寫入到 RocketMQ

25、《從0到1學習Flink》—— 你上傳的 jar 包藏到哪里去了

26、《從0到1學習Flink》—— 你的 Flink job 日志跑到哪里去了

學習資料

另外我自己整理了些 Flink 的學習資料,目前已經全部放到微信公眾號了。
你可以加我的微信:zhisheng_tian,然后回復關鍵字:Flink 即可無條件獲取到,轉載請聯系本人獲取授權,違者必究。

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

有人要問知識星球里面更新什么內容?值得加入嗎?

目前知識星球內已更新的系列文章:

1、《從1到100深入學習Flink》—— 源碼編譯

2、《從1到100深入學習Flink》—— 項目結構一覽

3、《從1到100深入學習Flink》—— local 模式啟動流程

4、《從1到100深入學習Flink》—— standalonesession 模式啟動流程

5、《從1到100深入學習Flink》—— Standalone Session Cluster 啟動流程深度分析之 Job Manager 啟動

6、《從1到100深入學習Flink》—— Standalone Session Cluster 啟動流程深度分析之 Task Manager 啟動

7、《從1到100深入學習Flink》——分析 Batch WordCount 程序的執行過程

8、《從1到100深入學習Flink》——分析 Streaming WordCount 程序的執行過程

9、《從1到100深入學習Flink》——如何獲取 StreamGraph?

10、《從1到100深入學習Flink》——如何獲取 JobGraph?

11、《從1到100深入學習Flink》—— Flink JobManager 有什么作用?

12、《從1到100深入學習Flink》—— Flink TaskManager 有什么作用?

13、《從1到100深入學習Flink》—— JobManager 處理 SubmitJob 的過程

14、《從1到100深入學習Flink》—— TaskManager 處理 SubmitJob 的過程

除了《從1到100深入學習Flink》源碼學習這個系列文章,《從0到1學習Flink》的案例文章也會優先在知識星球更新,讓大家先通過一些 demo 學習 Flink,再去深入源碼學習!

如果學習 Flink 的過程中,遇到什么問題,可以在里面提問,我會優先解答,這里做個抱歉,自己平時工作也挺忙,微信的問題不能做全部做一些解答,
但肯定會優先回復給知識星球的付費用戶的,慶幸的是現在星球里的活躍氛圍還是可以的,有不少問題通過提問和解答的方式沉淀了下來。

1、為何我使用 ValueState 保存狀態 Job 恢復是狀態沒恢復?

2、flink中watermark究竟是如何生成的,生成的規則是什么,怎么用來處理亂序數據

3、消費kafka數據的時候,如果遇到了臟數據,或者是不符合規則的數據等等怎么處理呢?

4、在Kafka 集群中怎么指定讀取/寫入數據到指定broker或從指定broker的offset開始消費?

5、Flink能通過oozie或者azkaban提交嗎?

6、jobmanager掛掉后,提交的job怎么不經過手動重新提交執行?

7、使用flink-web-ui提交作業並執行 但是/opt/flink/log目錄下沒有日志文件 請問關於flink的日志(包括jobmanager、taskmanager、每個job自己的日志默認分別存在哪個目錄 )需要怎么配置?

8、通過flink 儀表盤提交的jar 是存儲在哪個目錄下?

9、從Kafka消費數據進行etl清洗,把結果寫入hdfs映射成hive表,壓縮格式、hive直接能夠讀取flink寫出的文件、按照文件大小或者時間滾動生成文件

10、flink jar包上傳至集群上運行,掛掉后,掛掉期間kafka中未被消費的數據,在重新啟動程序后,是自動從checkpoint獲取掛掉之前的kafka offset位置,自動消費之前的數據進行處理,還是需要某些手動的操作呢?

11、flink 啟動時不自動創建 上傳jar的路徑,能指定一個創建好的目錄嗎

12、Flink sink to es 集群上報 slot 不夠,單機跑是好的,為什么?

13、Fllink to elasticsearch如何創建索引文檔期時間戳?

14、blink有沒有api文檔或者demo,是否建議blink用於生產環境。

15、flink的Python api怎樣?bug多嗎?

16、Flink VS Spark Streaming VS Storm VS Kafka Stream

17、你們做實時大屏的技術架構是什么樣子的?flume→kafka→flink→redis,然后后端去redis里面撈數據,醬紫可行嗎?

18、做一個統計指標的時候,需要在Flink的計算過程中多次讀寫redis,感覺好怪,星主有沒有好的方案?

19、Flink 使用場景大分析,列舉了很多的常用場景,可以好好參考一下

20、將kafka中數據sink到mysql時,metadata的數據為空,導入mysql數據不成功???

21、使用了ValueState來保存中間狀態,在運行時中間狀態保存正常,但是在手動停止后,再重新運行,發現中間狀態值沒有了,之前出現的鍵值是從0開始計數的,這是為什么?是需要實現CheckpointedFunction嗎?

22、flink on yarn jobmanager的HA需要怎么配置。還是說yarn給管理了

23、有兩個數據流就行connect,其中一個是實時數據流(kafka 讀取),另一個是配置流。由於配置流是從關系型數據庫中讀取,速度較慢,導致實時數據流流入數據的時候,配置信息還未發送,這樣會導致有些實時數據讀取不到配置信息。目前采取的措施是在connect方法后的flatmap的實現的在open 方法中,提前加載一次配置信息,感覺這種實現方式不友好,請問還有其他的實現方式嗎?

24、Flink能通過oozie或者azkaban提交嗎?

25、不采用yarm部署flink,還有其他的方案嗎? 主要想解決服務器重啟后,flink服務怎么自動拉起? jobmanager掛掉后,提交的job怎么不經過手動重新提交執行?

等等等,還有很多,復制粘貼的我手累啊 😂

另外里面還會及時分享 Flink 的一些最新的資料(包括數據、視頻、PPT、優秀博客,持續更新,保證全網最全,因為我知道 Flink 目前的資料還不多)

關於自己對 Flink 學習的一些想法和建議

Flink 全網最全資料獲取,持續更新,點擊可以獲取

再就是星球用戶給我提的一點要求:不定期分享一些自己遇到的 Flink 項目的實戰,生產項目遇到的問題,是如何解決的等經驗之談!

1、如何查看自己的 Job 執行計划並獲取執行計划圖

2、當實時告警遇到 Kafka 千萬數據量堆積該咋辦?

3、如何在流數據中比兩個數據的大小?多種解決方法

4、kafka 系列文章

5、Flink環境部署、應用配置及運行應用程序

當然,除了更新 Flink 相關的東西外,我還會更新一些大數據相關的東西,因為我個人之前不是大數據開發,所以現在也要狂補些知識!總之,希望進來的童鞋們一起共同進步!

1、Java 核心知識點整理.pdf

2、假如我是面試官,我會問你這些問題

3、Kafka 系列文章和學習視頻

另外你也可以掃描下面的二維碼來查看在 GitChat 的新文章:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM