Flink 03 | 数据流基本操作

图片

Flink数据流结构

DataStream 转换

通常我们需要分析的业务数据可能存在如下问题:

  • 数据中包含一些我们不需要的数据

  • 数据格式不方面分析

因此我们需要对原始数据流进行加工,比如过滤、转换等操作才可以进行数据分析。

Flink DataStream 转换主要作用:对输入的数据流(DataStream)经过各种转换操作以生成新的数据流

操作分类

  • 单条记录操作

    • 比如 Map  、 Fliter

  • 基于窗口 (Window)操作

    • 窗口根据某些特征(例如,过去 5 秒内到达的数据)对所有流事件进行分组

  • 合并数据流

    • union 、join、connect 可以将多个DataStream 合并为一个DataStream 进行分析处理

  • 拆分数据流

    • 将数据流拆分为多个数据流分别对每个数据流进行分析

基本操作

操作 描述 备注
Map 将数据流中每个元素转换为新的元素 类似 Java 中 stream.map 操作
Filter 筛选只保留符合条件的数据 类似 Java 中 stream.filter 操作
FlatMap 将一个输入"展开"为多个元素
KeyBy 将流逻辑划分为不相交的分区。所有具有相同键的记录都分配到同一个分区。
Reduce 对具有相同键的元素进行规约操作,如求和、求最大值

使用示例

Map

将数据流中每个元素转换为新的元素

使用场景很多,主要对原始数据进行加工

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值