Flink Transformation 操作

    前面我們介紹了Flink DataStream數據處理流程中的source和sink,這篇文章我們介紹一下 Flink的Transformation 的操作,一般常用的算子有下面幾種,我們分別用代碼來演示下他基本用法:

Map操作

val stream = env.generateSequence(1, 5)
//簡單的map操作
//val streamMap = stream.map(item =>  item * 3)
//複雜的map操作
val streamMap = stream.map(item => {
    val x = item * 3
    x + 1
 })
streamMap.print()

 

FlatMap操作

FlatMap爲一行轉多行操作,數據返回array類型

val streamFile = env.readTextFile("word.txt")
val streamFlat = streamFile.flatMap(item => item.split(" "))
streamFlat.print()

 

Filter操作

 

val streamFilter = stream.filter(item => item != 1)
streamFilter.print()

 

Connect操作

connect是對兩個Stream的連接操作,通過連接一個算子可以通過不同函數同時對一個stream進行處理。

//connect操作,對ConnectedStreams進行map操作
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章