如何分析Flink中的KeyBy
发表于:2025-12-04 作者:千家信息网编辑
千家信息网最后更新 2025年12月04日,如何分析Flink中的KeyBy,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。KeyBy算子:将数据流按照指定key进行分区(分组)
千家信息网最后更新 2025年12月04日如何分析Flink中的KeyBy
如何分析Flink中的KeyBy,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
KeyBy算子:将数据流按照指定key进行分区(分组)
示例环境
java.version: 1.8.xflink.version: 1.11.1
示例数据源 (项目码云下载)
Flink 系例 之 搭建开发环境与数据
KeyBy.java
package com.flink.examples.functions;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.datastream.KeyedStream;import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import java.util.List;/** * @Description KeyBy算子:将数据流按照指定key进行分区 */public class KeyBy { /** * 遍历集合,将用户按性别分成两类 * @param args * @throws Exception */ public static void main(String[] args) throws Exception { final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); //如果有多个分区,则设置并行度需大于1,或者在算子上设置setParallelism(2)前行度,否则算子只有一个并行度,则计算结果始终只有一个分区// env.setParallelism(4); List> tuple3List = DataSource.getTuple3ToList(); DataStream> dataStream = env.fromCollection(tuple3List); //注意:使用Integer进行分区时,会导致分区结果不对,转换成String类型输出key即可正确输出 KeyedStream, String> keyedStream = dataStream.keyBy(new KeySelector, String>() { @Override public String getKey(Tuple3 tuple3) throws Exception { //f1为性别字段,以相同f1值(性别)进行分区 return String.valueOf(tuple3.f1); } }); //lambda// KeyedStream, String> keyedStream = dataStream.keyBy((KeySelector, String>) t3 -> t3.f1); //指定第几个字段做为key进行计算// KeyedStream, Tuple> keyedStream = dataStream.keyBy(1); keyedStream.print().setParallelism(4); env.execute("flink keyBy job"); }} 打印结果
2> (张三,man,20)4> (李四,girl,24)2> (王五,man,29)4> (刘六,girl,32)2> (吴八,man,30)4> (伍七,girl,18)
关于如何分析Flink中的KeyBy问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
数据
算子
分析
性别
结果
问题
只有
字段
数据流
更多
环境
示例
帮助
解答
输出
不对
易行
相同
简单易行
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华为服务器BMC全擦升级
手机软件开发接口设置
列名无效 vs c 数据库
服务器的cpu可以安装到台式机
办公软件开发靠谱吗
俄乌网络战网络安全问题
网络管理认证服务器
软件开发产品经理基础
网络安全流量传感装置
数据库适配器有用吗
联动数据库更新
网络技术的大师
服务器安全排名
网络安全专业本科课程设置
画饭圈乱象.绘网络安全
高校一般会有数据库吗
java数据库事务处理
榆树通用网络技术诚信经营
vpn无法连接远程服务器
高速服务器限速40被罚
2017华三网络技术大赛
军事科技前沿互联网
知到数据库技术 山东联盟
高速公路服务器经营管理
俄乌网络战网络安全问题
日照戴尔服务器代理客服电话
双网服务器
保定市网络安全和信息化编制
踏歌时代网络技术有限公司
电子软件开发有限公司