如何用Flink Apply对窗口内的数据流进行处理
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,这篇文章主要讲解了"如何用Flink Apply对窗口内的数据流进行处理",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何用Flink Apply对窗
千家信息网最后更新 2025年01月24日如何用Flink Apply对窗口内的数据流进行处理
这篇文章主要讲解了"如何用Flink Apply对窗口内的数据流进行处理",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"如何用Flink Apply对窗口内的数据流进行处理"吧!
Apply算子:对窗口内的数据流进行处理
示例环境
java.version: 1.8.xflink.version: 1.11.1
示例数据源 (项目码云下载)
Flink 系例 之 搭建开发环境与数据
Apply.java
import com.flink.examples.DataSource;import org.apache.flink.api.java.functions.KeySelector;import org.apache.flink.api.java.tuple.Tuple3;import org.apache.flink.streaming.api.datastream.DataStream;import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import org.apache.flink.streaming.api.functions.windowing.WindowFunction;import org.apache.flink.streaming.api.windowing.windows.GlobalWindow;import org.apache.flink.util.Collector;import java.util.Iterator;import java.util.List;/** * @Description Apply方法:对窗口内的数据流进行处理 */public class Apply { /** * 遍历集合,分别打印不同性别的总人数与年龄之和 * @param args * @throws Exception */ public static void main(String[] args) throws Exception { final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); List> tuple3List = DataSource.getTuple3ToList(); DataStream dataStream = env.fromCollection(tuple3List) .keyBy((KeySelector , String>) k -> k.f1) //按数量窗口滚动,每3个输入窗口数据流,计算一次 .countWindow(3) //只能基于Windowed窗口Stream进行调用 .apply( //WindowFunction new WindowFunction , String, String, GlobalWindow>() { /** * 处理窗口数据集合 * @param s 从keyBy里返回的key值 * @param window 窗口类型 * @param input 从窗口获取的所有分区数据流 * @param out 输出数据流对象 * @throws Exception */ @Override public void apply(String s, GlobalWindow window, Iterable > input, Collector out) throws Exception { Iterator > iterator = input.iterator(); int total = 0; int i = 0; while (iterator.hasNext()){ Tuple3 tuple3 = iterator.next(); total += tuple3.f2; i ++ ; } out.collect(s + "共:"+i+"人,累加总年龄:" + total); } }); dataStream.print(); env.execute("flink Filter job"); }}
打印结果
4> girl共:3人,累加总年龄:742> man共:3人,累加总年龄:79
感谢各位的阅读,以上就是"如何用Flink Apply对窗口内的数据流进行处理"的内容了,经过本文的学习后,相信大家对如何用Flink Apply对窗口内的数据流进行处理这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
数据
数据流
处理
年龄
学习
内容
环境
示例
不同
之和
人数
对象
就是
思路
性别
情况
数据源
数量
文章
方法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
星天地网络安全技术
数据库名称怎么起
阿里巴巴首网络安全技术
有数据库只读权限安全隐患
虎丘区远程指导软件开发代理商
世界互联网大会 科技
数据库审计技术架构
远程oracle数据库安全性
村级网络安全工作怎没样开展
国内服务器防护软件
服务器返回码403怎么解决
数据中心服务器供应公司
服务器可以搭建什么控制面板
查专著用哪个数据库
软件开发简历的自我评价
路由服务器搭建
企业解读网络安全法
域名服务器在哪
型信号处理软件开发
靖江购买网络技术厂家价格
php数据库添加会员等级
公安局网络安全岗位身高要求
西安科技学院互联网
aspen 数据库
国内仿真软件开发公司
安全狗是安装在服务器上吗
电脑进销存软件找不到指定服务器
黑龙江服务器云空间
战地1怎么选服务器
保障网络安全和数据安全申论