欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報激活碼778899分享:大數(shù)據(jù)Flink面試考題

柚子快報激活碼778899分享:大數(shù)據(jù)Flink面試考題

http://yzkb.51969.com/

9.fink的高可用模式,主要是防止 JobManager出現(xiàn)單點故障,確保集群的高可用。()

10 Hlink SoL底層 Runtime本身是一個流與批的統(tǒng)一的引擘, HlinkSQL可以做到AP層的流與 批統(tǒng)一。()

下面為模擬面試,假如面試官考你Flink相關(guān),你該如何回答呢?

1.簡單介紹一下 Flink

Flink 核心是一個流式的數(shù)據(jù)流執(zhí)行引擎,其針對數(shù)據(jù)流的分布式計算提供了數(shù)據(jù)分布、數(shù) 據(jù)通信以及容錯機制等功能。 基于流執(zhí)行引擎,F(xiàn)link 提供了諸多更高抽象層的 API 以便用戶編 寫分布式任務(wù):DataSet API, 對靜態(tài)數(shù)據(jù)進行批處理操作,將靜態(tài)數(shù)據(jù)抽象成分布式的數(shù)據(jù)集, 用戶可以方便地使用 Flink 提供的各種操作符對分布式數(shù)據(jù)集進行處理,支持 Java、Scala 和 Python。DataStream API,對數(shù)據(jù)流進行流處理操作,將流式的數(shù)據(jù)抽象成分布式的數(shù)據(jù)流,用 戶可以方便地對分布式數(shù)據(jù)流進行各種操作,支持 Java 和 Scala。Table API,對結(jié)構(gòu)化數(shù)據(jù)進 行查詢操作,將結(jié)構(gòu)化數(shù)據(jù)抽象成關(guān)系表,并通過類 SQL 的 DSL 對關(guān)系表進行各種查詢操作,支 持 Java 和 Scala。此外,F(xiàn)link 還針對特定的應(yīng)用領(lǐng)域提供了領(lǐng)域庫,例如:Flink ML,F(xiàn)link 的機器學(xué)習(xí)庫,提供了機器學(xué)習(xí) Pipelines API 并實現(xiàn)了多種機器學(xué)習(xí)算法。Gelly,F(xiàn)link 的圖 計算庫,提供了圖計算的相關(guān) API 及多種圖計算算法實現(xiàn)。

2.Flink 相比 Spark Streaming 有什么區(qū)別?

架構(gòu)模型上:Spark Streaming 的 task 運行依賴 driver 和 executor 和 worker,當(dāng)然 driver 和 excutor 還依賴于集群管理器 Standalone 或者 yarn 等。而 Flink 運行時主要是 JobManager、 TaskManage 和 TaskSlot。另外一個最核心的區(qū)別是:Spark Streaming 是微批處理,運行的時 候需要指定批處理的時間,每次運行 job 時處理一個批次的數(shù)據(jù);Flink 是基于事件驅(qū)動的, 事件可以理解為消息。事件驅(qū)動的應(yīng)用程序是一種狀態(tài)應(yīng)用程序,它會從一個或者多個流中注入 事件,通過觸發(fā)計算更新狀態(tài),或外部動作對注入的事件作出反應(yīng)。 任務(wù)調(diào)度上:Spark Streaming 的調(diào)度分為構(gòu)建 DGA 圖,劃分 stage,生成 taskset,調(diào)度 task 等步驟,而 Flink 首先會生成 StreamGraph,接著生成 JobGraph,然后將 jobGraph 提交 給 Jobmanager 由它完成 jobGraph 到 ExecutionGraph 的轉(zhuǎn)變,最后由 jobManager 調(diào)度執(zhí)行。 時間機制上:flink 支持三種時間機制事件時間,注入時間,處理時間,同時支持 watermark 機制處理滯后數(shù)據(jù)。Spark Streaming 只支持處理時間,Structured streaming 則支持了事件時 間和 watermark 機制。 容錯機制上:二者保證 exactly-once 的方式不同。spark streaming 通過保存 offset 和事 務(wù)的方式;Flink 則使用兩階段提交協(xié)議來解決這個問題。

3 Flink 中的分區(qū)策略有哪幾種?

分區(qū)策略是用來決定數(shù)據(jù)如何發(fā)送至下游。目前 Flink 支持了8中分區(qū)策略的實現(xiàn)。

1)GlobalPartitioner 數(shù)據(jù)會被分發(fā)到下游算子的第一個實例中進行處理。

2)ShufflePartitioner 數(shù)據(jù)會被隨機分發(fā)到下游算子的每一個實例中進行處理。

3)RebalancePartitioner 數(shù)據(jù)會被循環(huán)發(fā)送到下游的每一個實例中進行處理。

4)RescalePartitioner 這種分區(qū)器會根據(jù)上下游算子的并行度,循環(huán)的方式輸出到下游算子的每個實例。這里有點難以理解,假設(shè)上游并行度為2,編號為A和B。下游并行度為4,編號為1,2,3,4。那么A則把數(shù)據(jù)循環(huán)發(fā)送給1和2,B則把數(shù)據(jù)循環(huán)發(fā)送給3和4。假設(shè)上游并行度為4,編號為A,B,C,D。下游并行度為2,編號為1,2。那么A和B則把數(shù)據(jù)發(fā)送給1,C和D則把數(shù)據(jù)發(fā)送給2。

5)BroadcastPartitioner 廣播分區(qū)會將上游數(shù)據(jù)輸出到下游算子的每個實例中。適合于大數(shù)據(jù)集和小數(shù)據(jù)集做Jion的場景。

6)ForwardPartitioner ForwardPartitioner 用于將記錄輸出到下游本地的算子實例。它要求上下游算子并行度一樣。簡單的說,F(xiàn)orwardPartitioner用來做數(shù)據(jù)的控制臺打印。

7)KeyGroupStreamPartitioner Hash分區(qū)器。會將數(shù)據(jù)按 Key 的 Hash 值輸出到下游算子實例中。

8)CustomPartitionerWrapper 用戶自定義分區(qū)器。需要用戶自己實現(xiàn)Partitioner接口,來定義自己的分區(qū)邏輯

4 Flink 的并行度有了解嗎?Flink 中設(shè)置并行度需要注意什么?

柚子快報激活碼778899分享:大數(shù)據(jù)Flink面試考題

http://yzkb.51969.com/

好文推薦

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19059692.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機訪問

文章目錄