簡體   English   中英

是否需要在Flink中使用Windows?

[英]Is it necessary to use windows in Flink?

我正在嘗試轉換數據流,而不使用Flink提供的任何窗口。 我的代碼看起來像這樣:

val stream1 = executionEnvironment.getStream
val stream2 = stream1.flatMap(someFunction)

stream2.addSink(s3_Sink)
executionEnvironment.execute()

但是,提交並運行我的工作后,我在S3上沒有任何輸出。 Web UI顯示已接收0個字節,已接收0個記錄,已發送0個字節,已發送0個記錄。

另一個正在運行的Flink作業已經在使用相同的數據源,因此該數據源很好。 任何地方都沒有錯誤,但仍然沒有輸出。 因為我沒有使用任何窗口或鍵操作,所以可能是這個問題嗎? 分配了遞增時間戳后,我嘗試獲取輸出,但未獲得任何輸出。 有什么想法是行不通的嗎?

我想這與缺少窗口無關。 經驗法則:當您需要任何類型的匯總(折疊,縮小等)時,請使用窗口。

關於您的最初問題:從目前為止所顯示的內容,我只能想象flatMap運算符不會產生任何輸出(與始終必須發出值flatMap的地圖相反,它可能會過濾掉所有內容)。 也許您可以添加更多代碼,以便我們仔細看一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM