发布日期:2021-11-07
数据转换-project
Project函数从事件流中选择一组属性子集,并且只将选中的元素发送到下一个处理流(相当于SQL语句中的投影概念)。下面是进行project转换的示例代码:
Scala代码:
不支持。
Java代码:
import org.apache.flink.api.java.tuple.Tuple3;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
public class BatchJob {
public static void main(String[] args) throws Exception {
// 设置批处理执行环境
final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
// project转换
Tuple3<Integer, String, Double> user01 = new Tuple3<>(1,"张三",12000.00);
Tuple3<Integer, String, Double> user02 = new Tuple3<>(2,"李四",22000.00);
Tuple3<Integer, String, Double> user03 = new Tuple3<>(3,"王老五",18000.00);
DataStream<Tuple3<Integer, String, Double>> ds = env.fromElements(user01,user02,user03);
// 选择第3列和第2列
DataStream<Tuple3<Integer, String, Double>> ds_select = ds.project(2,1);
ds_select.print();
}
}
输出结果如下:
(张三,12000.0) (李四,22000.0) (王老五,18000.0)
课程章节 返回课程首页
-
Ch01 Flink架构与集群搭建
-
Ch02 Flink开发准备
-
Ch03 开发Flink实时处理程序
- Flink流处理程序编程模型
- Flink流应用程序剖析
- 读取Socket数据源
- 读取文件数据源
- 使用集合数据源
- 自定义数据源
- 数据转换-map
- 数据转换-flatMap
- 数据转换-filter
- 数据转换-keyBy
- 数据转换-reduce
- 数据转换-聚合转换
- 数据转换-union
- 数据转换-connect
- 数据转换-project
- Flink数据分区
- 自定义数据分区示例
- 将流计算结果写出到CSV文件
- 将流计算结果保存到MySQL数据库中
- 时间和水印
- 水印策略
- Flink窗口操作概念及示例
- Flink低级操作API_ProcessFunction
- 案例:服务器故障检测报警程序 VIP
- 侧输出流
- 使用Kafka连接器
- 使用JDBC连接器
-
Ch04 Flink流处理案例
-
ch05 状态和容错