最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

說說Flink中的窗口

2023-04-27 22:38 作者:zjlala96  | 我要投稿

今日的面試題:


1.用過Flink中的分布式緩存嗎?如何使用?

Flink實(shí)現(xiàn)的分布式緩存和Hadoop有異曲同工之妙。目的是在本地讀取文件,并把他放在 taskmanager 節(jié)點(diǎn)中,防止task重復(fù)拉取。

val env = ExecutionEnvironment.getExecutionEnvironment

// register a file from HDFS

env.registerCachedFile("hdfs:///path/to/your/file", "hdfsFile")

// register a local executable file (script, executable, ...)

env.registerCachedFile("file:///path/to/exec/file", "localExecFile", true)

// define your program and execute

... val input: DataSet[String] = ... val result: DataSet[Integer] = input.map(new MyMapper())

... env.execute()

2.說說Flink中的廣播變量,使用時(shí)需要注意什么?

我們知道Flink是并行的,計(jì)算過程可能不在一個(gè) Slot 中進(jìn)行,那么有一種情況即:當(dāng)我們需要訪問同一份數(shù)據(jù)。

那么Flink中的廣播變量就是為了解決這種情況。我們可以把廣播變量理解為是一個(gè)公共的共享變量,我們可以把一個(gè)dataset 數(shù)據(jù)集廣播出去,然后不同的task在節(jié)點(diǎn)上都能夠獲取到,這個(gè)數(shù)據(jù)在每個(gè)節(jié)點(diǎn)上只會(huì)存在一份。

3.說說Flink中的窗口?

Flink 支持兩種劃分窗口的方式,按照time和count。如果根據(jù)時(shí)間劃分窗口,那么它就是一個(gè)time-window 如果根據(jù)數(shù)據(jù)劃分窗口,那么它就是一個(gè)count-window。flink支持窗口的兩個(gè)重要屬性(size和interval)如果size=interval,那么就會(huì)形成tumbling-window(無重疊數(shù)據(jù)) 如果size>interval,那么就會(huì)形成sliding-window(有重

疊數(shù)據(jù)) 如果size< interval, 那么這種窗口將會(huì)丟失數(shù)據(jù)。比如每5秒鐘,統(tǒng)計(jì)過去3秒的通過路口汽車的數(shù)據(jù),將會(huì)漏掉2秒鐘的數(shù)據(jù)。通過組合可以得出四種基本窗口:

time-tumbling-window 無重疊數(shù)據(jù)的時(shí)間窗口,設(shè)置方式舉例:timeWindow(Time.seconds(5))

time-sliding-window 有重疊數(shù)據(jù)的時(shí)間窗口,設(shè)置方式舉例:timeWindow(Time.seconds(5), Time.seconds(3))

count-tumbling-window無重疊數(shù)據(jù)的數(shù)量窗口,設(shè)置方式舉例:countWindow(5)

count-sliding-window 有重疊數(shù)據(jù)的數(shù)量窗口,設(shè)置方式舉例:countWindow(5,3)

4.說說Flink中的狀態(tài)存儲(chǔ)?

Flink在做計(jì)算的過程中經(jīng)常需要存儲(chǔ)中間狀態(tài),來避免數(shù)據(jù)丟失和狀態(tài)恢復(fù)。選擇的狀態(tài)存儲(chǔ)策略不同,會(huì)影響狀態(tài)持久化如何和 checkpoint 交互。Flink提供了三種狀態(tài)存儲(chǔ)方式:MemoryStateBackend、FsStateBackend、RocksDBStateBackend。

5.Flink中的時(shí)間有哪幾類

Flink 中的時(shí)間和其他流式計(jì)算系統(tǒng)的時(shí)間一樣分為三類:事件時(shí)間,攝入時(shí)間,處理時(shí)間三種。

如果以EventTime 為基準(zhǔn)來定義時(shí)間窗口將形成EventTimeWindow,要求消息本身就應(yīng)該攜帶EventTime。

如果以IngesingtTime 為基準(zhǔn)來定義時(shí)間窗口將形成 IngestingTimeWindow,以 source 的systemTime為準(zhǔn)。

如果以ProcessingTime 基準(zhǔn)來定義時(shí)間窗口將形成 ProcessingTimeWindow,以 operator 的systemTime 為準(zhǔn)。

了解更多請(qǐng)點(diǎn)我頭像關(guān)注我去獲得,謝謝

說說Flink中的窗口的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
涡阳县| 昂仁县| 嘉义市| 安西县| 泽普县| 格尔木市| 平远县| 永昌县| 梧州市| 德州市| 东宁县| 宁夏| 丹巴县| 沧源| 徐水县| 嵊州市| 浏阳市| 隆化县| 临汾市| 苏尼特左旗| 曲阜市| 南开区| 迁西县| 辽阳县| 阿拉善左旗| 青阳县| 应城市| 互助| 新巴尔虎右旗| 安义县| 漠河县| 达州市| 孝感市| 临沭县| 曲阜市| 临颍县| 安达市| 博湖县| 宕昌县| 阳信县| 肥乡县|