简单转换算子
FLink中的简单转换算子 包含 map flatmap fiter
他们有一个共同的特点就是 1 to 1 类似于spark窄依赖
Map
输入一个 按照转换规则 输出一个
//创建执行环境
val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
//读取一个list并转换为datastream
val intList = List(1,2,3,4,5,6,7,8,9,10)
val intDataStream: DataStream[Int] = env.fromCollection(intList)
//进行map操作
val mapedDataStream: DataStream[Int] = intDataStream.map(x => x * 2)
//打印
mapedDataStream.print()
//执行
env.execute("apitest")
Flatmap
map 之后做了一个flat扁平化
//创建执行环境
val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
val flatmapData: DataStream[String] = env.fromCollection(List("a b","c d"))
val flatmapedData: DataStream[String] = flatmapData.flatMap(x => x.split(" "))
flatmapedData.print()
//执行
env.execute("apitest")
由
List(“a b”,“c d”)
变为
a b c d
Filter
给一个表达式 返回布尔类型结果
判断是否为true来判断是否保留。
//创建执行环境
val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
val filterData: DataStream[Int] = env.fromCollection(List(1,2,3))
val fiteredData: DataStream[Int] = filterData.filter(x => x == 1)
fiteredData.print()
//执行
env.execute("apitest")
由
List(1,2,3)
变为
1
Flink基础:理解简单转换算子Map、Flatmap和Filter
本文介绍了Apache Flink流处理中的三个基本转换算子:Map、Flatmap和Filter。Map用于对每个元素应用转换规则,如将整数乘以2;Flatmap用于将单个元素拆分为多个,例如将字符串按字符拆分;Filter则根据给定条件过滤元素,只保留满足条件的元素。这些算子都是1-to-1的关系,类似于Spark的窄依赖,确保了数据处理的高效性。
1105

被折叠的 条评论
为什么被折叠?



