Flink专题-BaseTransform
Flink BaseTransform
- Map
- FlatMap
- Filter
Map
特点:一对一,可以改变数据类型
一对一:一个数据只返回一个数据 eg:a->b 虽然数据不同了但是还是一个
可以改变数据类型:通过map操作可以返回任意一个已经存在的类型
eg:string=>UDF自定义类型
public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(1);//测试可以直接使用绝对路径String path = "hello.txt";DataStream<String> inputDataStream = env.readTextFile(path);//map算子需要传递一个MapFunction,可以使用匿名类,自定义类,或者lambda表达式,这里使用匿名类的方法,相比之下比较适中。DataStream<Integer> outputDataStream = inputDataStream.map(new MapFunction<String, Integer>() {@Overridepublic Integer map(String s) throws Exception {return s.length();}});outputDataStream.print("Map");env.execute();}
FlatMap
特点:一对多,可以改变数据类型
一对多:向下兼容一对一
改变数据类型:略
public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(1);//测试可以直接使用绝对路径String path = "hello.txt";DataStream<String> inputDataStream = env.readTextFile(path);DataStream<String> outputDataStream = inputDataStream.flatMap(new FlatMapFunction<String, String>() {@Overridepublic void flatMap(String value, Collector<String> out) throws Exception {String[] split = value.split(",");//将一个String拆分为多个String返回for (String s : split) {out.collect(s);}}});outputDataStream.print("FlatMap");env.execute();}
Filter
特点:不能改变数据类型即来什么数据类型返回就是什么数据类型
public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(1);//测试可以直接使用绝对路径String path = "hello.txt";DataStream<String> inputDataStream = env.readTextFile(path);DataStream<String> outputDataStream = inputDataStream.filter(new FilterFunction<String>() {@Overridepublic boolean filter(String value) throws Exception {return value.startsWith("'sensor_1'");}});outputDataStream.print("Fliter");env.execute("");}
Flink专题-BaseTransform相关推荐
- Flink专题-Source
Flink Source 进入flink的数据源大致分为以下几类: 集合 Collection 文件 File Kafka UDF 一般都是使用前三个source源即可,如果想要使用其他数据源就可以自 ...
- Flink专题四:Flink DataStream 窗口介绍及使用
由于工作需要最近学习flink 现记录下Flink介绍和实际使用过程 这是flink系列的第四篇文章 Flink DataStream 窗口介绍及使用 窗口介绍 时间窗口 翻滚窗口(数据以一个时间断为 ...
- 一文弄懂Flink基础理论
文章目录 Flink概述 Flink生态 为什么选择Flink? 系统架构 JobManager 运行架构 常用的类型和操作 程序结构介绍 并行数据流 Task and Operator Chains ...
- 2019 Flink Forward 大会最全视频来了!(附PPT下载) | 5大专题不容错过
简介: Flink Forward 2019 于今年11月28日在北京举行,规模2000人.本文收录了5大专场,35个大咖精彩演讲合辑,精彩内容一次性打包给你! 点击pdf下载,收获全套资料 算力制胜 ...
- 赠票 | 重磅揭晓Flink Forward Asia 2019完整议程!
文末有数据派独家赠票福利呦! 60 年前, 人工智能的诞生刷新了人类对技术的期待: 过去 10 年, 大数据.云计算等核心技术的发展, 推动了整个社会的重构与革新: 5 年时间, 移动互联网从诞生到 ...
- 杠上Spark、Flink?Kafka为何转型流数据平台
AI前线导读: 消息中间件系统(比如RabbitMQ.Kafka.Pulsar等)是现代实时数据或者流数据基础架构的关键环节.它通常作为一个数据管道,链接了各种业务前台和数据后台(比如数仓等).但是随 ...
- Flink Forward Asia Hackathon 最新参赛指南请查收
简介:奖金翻倍,赛程延长!愿各位开发者都能够取得好成绩. 首届 Flink Forward Asia Hackathon 已经正式启动.本次新颖的开放式命题得到了广大开发者的关注,目前在 GitHub ...
- @所有人 Flink Forward Asia 2020 向您发出议题征集邀请!
简介:2020年,加快应用数字技术,推动企业的数字化转型.科学高效发展几乎已成为业界共识.人工智能.大数据.云计算.移动互联网...每一场技术革新都曾被寄予厚望.在此背景下,企业与个人如何不被时代浪潮 ...
- 基于Flink的高可靠实时ETL系统
GIAC(GLOBAL INTERNET ARCHITECTURE CONFERENCE)是长期关注互联网技术与架构的高可用架构技术社区和msup推出的,面向架构师.技术负责人及高端技术从业人员的年度 ...
最新文章
- 【大数据分析常用算法】1.二次排序
- first dairy----the birth of my blog···
- ubuntu较快台湾源
- all resources based on handshake
- python技术介绍_Python编程语言基础技术框架()之函数介绍
- SAP CRM webclient ui help link超链接的生成逻辑
- 网络(8)-HTTP、Socket、TCP、UDP的区别和联系
- disable jboss JMXInvokerServlet .
- 时点数列序时平均数_时点数列序时平均数计算方法研究
- mysql lru scan depth_如何解决mysql警告:“ InnoDB:page_cleaner:1000毫秒的预期循环用了XXX毫秒。设置可能不是最佳的”?...
- IPv4和IPv6比特转发率和包转发率的关系
- 卫星地图破坏男女恋人之间的关系
- Java中serialVersionUID作用
- 微信小程序echarts问题整理与解决
- 进击的速溶咖啡:当中国AI开始玩工业化
- cannot be cast to com.xxx.xxx.model.User] with root cause
- python使用pyecharts绘制地图
- 政务OA办公系统搭建现状
- java写入文件几种方法
- VUE鼠标移入移出改变元素样式