大數據「重磅炸彈」——實時計算框架 Flink

Flink 學習

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

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

項目結構

├── 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

博客

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

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

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

四、《從0到1學習Flink》—— Data Source 介紹面試

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

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

七、《從0到1學習Flink》—— 如何自定義 Data Sink ?數據庫

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

2六、《從0到1學習Flink》—— 你的 Flink job 日誌跑到哪裏去了

學習資料

另外我本身整理了些 Flink 的學習資料,目前已經所有放到微信公衆號了。
你能夠加個人微信:zhisheng_tian,而後回覆關鍵字:Flink 便可無條件獲取到,轉載請聯繫本人獲取受權,違者必究。

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

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

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

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

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

三、《從1到100深刻學習Flink》—— local 模式啓動流程

四、《從1到100深刻學習Flink》—— standalonesession 模式啓動流程

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

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

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

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

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

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

十一、《從1到100深刻學習Flink》—— Flink JobManager 有什麼做用?

十二、《從1到100深刻學習Flink》—— Flink TaskManager 有什麼做用?

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

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

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

若是學習 Flink 的過程當中,遇到什麼問題,能夠在裏面提問,我會優先解答,這裏作個抱歉,本身平時工做也挺忙,微信的問題不能作所有作一些解答,
但確定會優先回復給知識星球的付費用戶的,慶幸的是如今星球裏的活躍氛圍仍是能夠的,有很多問題經過提問和解答的方式沉澱了下來。

一、爲什麼我使用 ValueState 保存狀態 Job 恢復是狀態沒恢復?

二、flink中watermark到底是如何生成的,生成的規則是什麼,怎麼用來處理亂序數據

三、消費kafka數據的時候,若是遇到了髒數據,或者是不符合規則的數據等等怎麼處理呢?

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

五、Flink能經過oozie或者azkaban提交嗎?

六、jobmanager掛掉後,提交的job怎麼不通過手動從新提交執行?

七、使用flink-web-ui提交做業並執行 可是/opt/flink/log目錄下沒有日誌文件 請問關於flink的日誌(包括jobmanager、taskmanager、每一個job本身的日誌默認分別存在哪一個目錄 )須要怎麼配置?

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

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

十、flink jar包上傳至集羣上運行,掛掉後,掛掉期間kafka中未被消費的數據,在從新啓動程序後,是自動從checkpoint獲取掛掉以前的kafka offset位置,自動消費以前的數據進行處理,仍是須要某些手動的操做呢?

十一、flink 啓動時不自動建立 上傳jar的路徑,能指定一個建立好的目錄嗎

十二、Flink sink to es 集羣上報 slot 不夠,單機跑是好的,爲何?

1三、Fllink to elasticsearch如何建立索引文檔期時間戳?

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

1五、flink的Python api怎樣?bug多嗎?

1六、Flink VS Spark Streaming VS Storm VS Kafka Stream

1七、大家作實時大屏的技術架構是什麼樣子的?flume→kafka→flink→redis,而後後端去redis裏面撈數據,醬紫可行嗎?

1八、作一個統計指標的時候,須要在Flink的計算過程當中屢次讀寫redis,感受好怪,星主有沒有好的方案?

1九、Flink 使用場景大分析,列舉了不少的經常使用場景,能夠好好參考一下

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

2一、使用了ValueState來保存中間狀態,在運行時中間狀態保存正常,可是在手動中止後,再從新運行,發現中間狀態值沒有了,以前出現的鍵值是從0開始計數的,這是爲何?是須要實現CheckpointedFunction嗎?

2二、flink on yarn jobmanager的HA須要怎麼配置。仍是說yarn給管理了

2三、有兩個數據流就行connect,其中一個是實時數據流(kafka 讀取),另外一個是配置流。因爲配置流是從關係型數據庫中讀取,速度較慢,致使實時數據流流入數據的時候,配置信息還未發送,這樣會致使有些實時數據讀取不到配置信息。目前採起的措施是在connect方法後的flatmap的實現的在open 方法中,提早加載一次配置信息,感受這種實現方式不友好,請問還有其餘的實現方式嗎?

2四、Flink能經過oozie或者azkaban提交嗎?

2五、不採用yarm部署flink,還有其餘的方案嗎? 主要想解決服務器重啓後,flink服務怎麼自動拉起? jobmanager掛掉後,提交的job怎麼不通過手動從新提交執行?

等等等,還有不少,複製粘貼的我手累啊 😂

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

關於本身對 Flink 學習的一些想法和建議

Flink 全網最全資料獲取,持續更新,點擊能夠獲取

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

一、如何查看本身的 Job 執行計劃並獲取執行計劃圖

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

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

四、kafka 系列文章

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

固然,除了更新 Flink 相關的東西外,我還會更新一些大數據相關的東西,由於我我的以前不是大數據開發,因此如今也要狂補些知識!總之,但願進來的童鞋們一塊兒共同進步!

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

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

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

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

相關文章
相關標籤/搜索