flink入门_阿里巴巴为何选择Flink?20年大佬分11章讲解Flink从入门到实践!
前言
Apache Flink 是德國柏林工業大學的幾個博士生和研究生從學校開始做起來的項目,之前叫做 Stratosphere。他們在2014 年開源了這個項目,起名為 Flink。
Apache Flink 已經被業界公認是最好的流計算引擎。然而 Flink 其實并不是一個僅僅局限于做流處理的引擎。Apache Flink 的定位是一套兼具流、批、機器學習等多種計算功能的大數據引擎。
在最近的一段時間,Flink 在批處理以及機器學習等諸多大數據場景都有長足的突破。一方面Flink 的批計算在經過阿里的優化后有了數量級的提升。另一方面,Flink 社區在 tableAPI,Python,以及 ML 等諸多領域都在逐步發力,持續提升用戶做 Data science 和 AI 計算的體驗。此外,Flink也在逐步提升和其他開源軟件融合的體驗,包括 Hive,還有 Notebook(Zeppelin, Jupyter)等等。
阿里為什么選擇Flink
隨著人工智能時代的降臨,數據量的爆發,在典型的大數據的業務場景下數據業務最通用的做法是:選用批處理的技術處理全量數據,采用流式計算處理實時增量數據。在絕大多數的業務場景之下,用戶的業務邏輯在批處理和流處理之中往往是相同的。
但是,用戶用于批處理和流處理的兩套計算引擎是不同的。因此,用戶通常需要寫兩套代碼。毫無疑問,這帶來了一些額外的負擔和成本。阿里巴巴的商品數據處理就經常需要面對增量和全量兩套不同的業務流程問題,所以阿里就在想,我們能不能有一套統一的大數據引擎技術,用戶只需要根據自己的業務邏輯開發一套代碼。
這樣在各種不同的場景下,不管是全量數據還是增量數據,亦或者實時處理,一套方案即可全部支持,這就是阿里選擇 Flink 的背景和初衷。
目前開源大數據計算引擎有很多選擇,流計算如 Storm、Samza、Flink、Kafka Stream 等,批處理如 Spark、Hive、Pig、Flink 等。而同時支持流處理和批處理的計算引擎,只有兩種選擇:一個是 Apache Spark,一個是 Apache Flink。
從技術,生態等各方面的綜合考慮,首先,Spark 的技術理念是基于批來模擬流的計算。而 Flink則完全相反,它采用的是基于流計算來模擬批計算。
從技術發展方向看,用批來模擬流有一定的技術局限性,并且這個局限性可能很難突破。而 Flink基于流來模擬批,在技術上有更好的擴展性。從長遠來看,阿里決定用 Flink 做一個統一的、通用的大數據引擎作為未來的選型。
因為文章篇幅限制,小編在這里就不做過多的介紹了,需要這份Flink實踐手冊的朋友可以轉發關注小編,私信小編“學習”來得到獲取方式
Flink從入門到實踐學習路線展示
第一章:初識Flink
1.1課程目錄
1.2Flink概述
1.3flink layered api
1.4Flink運行多樣化
1.5業界流處理框架對比
1.6flink use cases
1.7flink發展趨勢
1.8如何以正確的姿勢來學習flink
第二章:快速上手開發第一個flink程序
2.1開發環境準備之jdk安裝
2.2開發環境準備之maven安裝
2.3開發環境準備之idea安裝
2.4flink批處理應用開發之需求描述
2.5開發過程中依賴的注意事項
第三章:編程模型及核心概念
3.1核心概念概述
3.2dataset和datastream
3.3flink編程模型
3.4延遲執行
3.5flink支持的數據類型
第四章:DataSet API編程
4.1dataset api開發概述
4.2flink綜合java和scala開發的項目構建creenflow
4.3data source宏觀概述
4.4從集合創建dataset之scala實現
4.5基于flink的分布式緩存功能的java實現
第五章:DataStream API編程
5.1datastream api編程概述
5.2從socket創建datastream之java實現
5.3從socket創建datastream之scala實現
5.4自定義sink之需求描述及表創建-
5.5datastream api開發小結
第六章:Flink Table API & SQL編程
6.1什么是flink關系型
6.2table api&sql概述
6.3使用scala完成table api&sql功能的開發
6.4使用java完成table api&sql功能的開發
6.5table api&sql其他功能介紹
第七章:Flink中的Time及Windows的使用
7.1processing time詳解
7.2event time詳解
7.3ingestion time詳解-
7.4如何在flink中指定time的類型
7.5flink watermark概述
第八章:Flink Connectors
8.1connectors概述
8.2hdfs connector的使用
8.3kafka connector概述
8.4ootb環境的使用
8.5flink整合kafka的checkpoint常用參數設置梳理
第九章:Flink部署及作業提交
9.1flink部署準備及源碼編譯-
9.2單機模式部署及代碼提交測試
9.3flink standalone模式部署及參數詳解
9.4如何查找需要配置的flink參數及ui對應關系介紹
9.5flink scala shell的使用
第十章:Flink監控及調優
10.1historyserver概述及配置-
10.2historyserver的使用
10.3monitoring rest ap
10.4flink metric
10.5flink常用優化策略
第十一章:基于Flink的互聯網直播平臺日志分析項目實戰
11.1項目功能需求描述
11.2mock數據之kafka生產者代碼主流程開發
11.3使用flink消費kafka生產的數據
11.4自定義mysql數據源讀
11.5完成兩個流關聯的數據清洗功能
Flink項目實踐視頻
Flink視頻教程筆記
基于Flink流處理的動態實時電商實時分析系統視頻
從上面可以很清晰的看到阿里巴巴為什么選擇Flink以及IT從業20年大佬講解Flink從入門到實踐的文檔與視頻,小編都為大家準備好了,如果大家伙需要的話,可以轉發此文關注小編,私信小編“學習”來得到獲取方式吧!
總結
以上是生活随笔為你收集整理的flink入门_阿里巴巴为何选择Flink?20年大佬分11章讲解Flink从入门到实践!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 包python_Python 包:
- 下一篇: 声波武器在中国诞生,它的威力有多大?