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操作
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章