范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Flink操练(三十四)之自定义键控状态(四)ReducingState

  一、ReducingState的方法
  ReducingState是和ReduceFunction配合使用
  get() 获取状态的值
  add(IN value)方法添加一个元素,触发reduceFunction计算一次
  二、ReducingState的描述器
  ReducingState的描述器和之前ValueState、ListState不同,它得和一个ReduceFunction配合使用。三、统计单词
  1、KeyedProcessFunction处理类package test; import org.apache.flink.api.common.functions.ReduceFunction; import org.apache.flink.api.common.functions.RichFlatMapFunction; import org.apache.flink.api.common.state.ReducingState; import org.apache.flink.api.common.state.ReducingStateDescriptor; import org.apache.flink.api.java.tuple.Tuple2; import org.apache.flink.configuration.Configuration; import org.apache.flink.util.Collector; /** * @Description: 求和 * @Param: * @return: * @Author: Mr.逗 * @Date: 2021/9/9 */ public class CountSumWithReduceState         extends RichFlatMapFunction, Tuple2> {      private ReducingState reducingState;      /***状态初始化*/     @Override     public void open(Configuration parameters) throws Exception {          ReducingStateDescriptor descriptor = new ReducingStateDescriptor("ReducingDescriptor", new ReduceFunction() {             @Override             public Long reduce(Long v1, Long v2) throws Exception {                 return v1 + v2;             }         },Long.class);         reducingState = getRuntimeContext().getReducingState(descriptor);     }      @Override     public void flatMap(Tuple2 element, Collector> collector) throws Exception {          //将状态放入         reducingState.add(element.f1);         collector.collect(Tuple2.of(element.f0,reducingState.get()));      }   }
  2、主体类package test;  import org.apache.flink.api.java.tuple.Tuple2; import org.apache.flink.streaming.api.datastream.DataStreamSource; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;  /**  * @program: bigdata_learn  * @description: 测试reduceState  * @author: Mr.逗  * @create: 2021-09-08 17:43  **/ public class TestKeyedReduceStateMain {     public static void main(String[] args) throws  Exception{         //获取执行环境         StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();         //StreamExecutionEnvironment.getExecutionEnvironment();         //设置并行度         env.setParallelism(16);         //获取数据源         DataStreamSource> dataStreamSource =                 env.fromElements(                         Tuple2.of(1L, 3L),                         Tuple2.of(1L, 7L),                         Tuple2.of(2L, 4L),                         Tuple2.of(1L, 5L),                         Tuple2.of(2L, 2L),                         Tuple2.of(2L, 6L));           // 输出:         //(1,5.0)         //(2,4.0)         dataStreamSource                 .keyBy(0)                 .flatMap(new CountSumWithReduceState())                 .print();         String name = TestKeyedReduceStateMain.class.getName();         env.execute(name);     }  }
  3、结果展示
  四、计算最高温度
  1、处理类package test; import org.apache.flink.api.common.functions.ReduceFunction; import org.apache.flink.api.common.functions.RichFlatMapFunction; import org.apache.flink.api.common.state.ReducingState; import org.apache.flink.api.common.state.ReducingStateDescriptor; import org.apache.flink.api.java.tuple.Tuple2; import org.apache.flink.configuration.Configuration; import org.apache.flink.util.Collector; /** * @Description: 求最大值 * @Param: * @return: * @Author: Mr.逗 * @Date: 2021/9/9 */ public class CountMaxWithReduceState         extends RichFlatMapFunction, Tuple2> {      private ReducingState reducingState;      /***状态初始化*/     @Override     public void open(Configuration parameters) throws Exception {          ReducingStateDescriptor descriptor = new ReducingStateDescriptor("ReducingDescriptor", new ReduceFunction() {             @Override             public Long reduce(Long v1, Long v2) throws Exception {                 return v1>=v2?v1:v2;             }         },Long.class);         reducingState = getRuntimeContext().getReducingState(descriptor);     }      @Override     public void flatMap(Tuple2 element, Collector> collector) throws Exception {          //将状态放入         reducingState.add(element.f1);         collector.collect(Tuple2.of(element.f0,reducingState.get()));      }   }
  2、主体类package test;  import org.apache.flink.api.java.tuple.Tuple2; import org.apache.flink.streaming.api.datastream.DataStreamSource; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;  /**  * @program: bigdata_learn  * @description: 测试reduceState  * @author: Mr.逗  * @create: 2021-09-08 17:43  **/ public class TestKeyedReduceStateMain {     public static void main(String[] args) throws  Exception{         //获取执行环境         StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();         //StreamExecutionEnvironment.getExecutionEnvironment();         //设置并行度         env.setParallelism(16);         //获取数据源         DataStreamSource> dataStreamSource =                 env.fromElements(                         Tuple2.of(1L, 3L),                         Tuple2.of(1L, 7L),                         Tuple2.of(2L, 4L),                         Tuple2.of(1L, 5L),                         Tuple2.of(2L, 2L),                         Tuple2.of(2L, 6L));           // 输出:         //(1,5.0)         //(2,4.0)         dataStreamSource                 .keyBy(0)                 .flatMap(new CountMaxWithReduceState())                 .print();         String name = TestKeyedReduceStateMain.class.getName();         env.execute(name);     }  }
  3、结果展示

苹果据称启动雄心勃勃的突围计划将把广泛的金融服务内部化知情人士透露,苹果公司正在为未来的金融产品开发自己的支付处理技术和基础设施,作为其雄心壮志的一部分,意在未来减少对外部合作伙伴的依赖。知情人士称,苹果一项为期多年的计划将把广泛的金微信打击数字藏品交易,大批公众号被封禁29日,微信客户端中多家与数字藏品相关的公众号突然被封禁,涉及的平台超十个,均为中小型数字藏品平台,腾讯幻核等头部平台未受影响。大部分平台皆被提示为由用户投诉并经平台审核,存在未取小鹏汽车2021年财报量的差距已拉开,利的步伐或在加快2021年是非常特殊也是充满挑战的一年,不止是对于经济金融市场,对于车市同样如此。在经历疫情之后,底层逻辑及格局都在发生着深刻变革,新能源成为去年二级市场的宠儿,其中新势力也成为不教育部国家高等教育智慧平台首批上线2万门课程在3月29日召开的教育部新闻发布会上,教育部高等教育司司长吴岩介绍了国家高等教育智慧教育平台建设和应用的有关情况。他提到,高等教育智慧教育平台是全球课程规模最大门类最全的国家高等教京东兄弟终究还是变成混日子的员工,巨头迎来50的部门裁员率一个京东员工只是在网络上,说了一句狗东,就以莫须有的理由给开除了。这位被开除的员工倍感委屈,平时大家都这么叫,现在却拿这句话做文章。当年号称永远不会开除任何一个兄弟的京东,终于迎来8款超良心的电脑软件,一个比一个好用,建议收藏好用的电脑软件有那么多,今天给大家分享8款超良心的电脑软件,使用后舒适感立马提升,一起来看看吧!1。ScreenToGIF这是一款GIF动画录制软件,可以用来快速录制屏幕上的指定区程序员如何摆脱无效内卷,用它!飞算SoFlu软件机器人内卷本来是一个专业词汇,指一种社会或文化模式发展到一定程度后所表现出的停滞状态,既没有办法趋于稳定,又没有办法升级发展为新的阶段,只能在内部不断进行消耗。现如今,内卷一词已出圈到各5年30倍增长,这个涉及隐私的行业开始卷了?如果单从融资事件来看,2022年隐私计算赛道依然在延续着去年的火热。2月9日,由多位前阿里员工创立的隐私计算企业蓝象智联宣布完成近2亿元A轮融资2月28日消息显示,蚂蚁科技入股隐私油价飙升,换台充电的?其实新能源车也在涨!涨!涨自3月14日起,汽柴油价格持续上涨,95号汽油已经突破了9元大关,加满一箱油要比原来多几十元。这样的情况下,新能源车又被频繁提起。近年来,新能源车快速发展,续航里程和充电速度都得到Quantinuum宣布更新QNLP工具包ambeq更新推出了许多新的重要功能,为研究人员和开发人员在将句子转换为量子电路方面提供更多的选项和灵活性英国牛津2022年3月30日美通社全球领先的集成量子计算公司Quantin98寸电视机普通人家能买的起吗?98寸电视贵不贵得看你选那个品牌的产品了,比如TCL98Q6E,近百寸的巨幕,拥有安桥音响,MEMC防抖技术,HDMI2。1接口以及WiFi6的网络配置,2万元的价格,忒实惠了。部
硕美科MX503SP透明版无线蓝牙耳机测评爆红不止是因为颜值在这个颜值即正义的时代里边,外观设计早已和品质性能一样成为消费者选购时着重考虑的一大因素。这不,硕美科前些阵子发布的MX503SP透明版无线蓝牙耳机就因清凉感十足的外表而吸引了众多百元耳机只能听个响?瓷音未来Mars耳机给你不一样的体验随着手机制造商们纷纷取消3。5mm耳机孔,蓝牙耳机的发展是未来的一大趋势,越来越多的厂商推出了自己的蓝牙耳机。那么优秀的蓝牙耳机不仅能带来属于音质上的享受,还要有降噪的功效,能找到雷蛇魔音海妖迷你版麦克风测评小巧,好音质如果你是一名游戏老玩家,想必你已经拥有一套炫酷的键盘等外设,不过目前很多游戏耳机附带麦克风的实际游戏语言效果并不太好,尤其对于资深游戏玩家或者主播而言,一款独立麦克风或许更能符合他人工智能,让一切照片都魔性地动起来近期,2006年火遍中国的神曲蚂蚁呀嘿再次火了一把。只需下载一个软件,上传一张图片,就可以让里面的人动起来,扭着脖子,翻着白眼儿,魔性地齐唱蚂蚁呀嘿。在好奇心的驱使下,蜉蝣君也玩了取代锂电池?钠离子电池商业化进度中国进展可喜编者按最近很多朋友问起中国钠离子电池的进展。本文仅针对中国领先的的钠离子研发初创中科海钠HiNa,及英国初创企业Faradion的进展,介绍钠离子电池的商业化历史及进展。2021年亚马逊ERP铺货采集货代软件定制贴牌独立部署无限授权店铺亚马逊FBM软件快速铺货ERP软件批量上传,订单同步发货!ERP介绍具备精准利润分析,产品表现,FBA进销存,广告管理,关键词跟踪,跟卖监控等功能。亚马逊FBM软件快速铺货ERP软虾皮ERP仓储打包软件,独立部署,独立贴牌如果没有ERP系统的,一个人的跨境电商,那么你的所有时间都要被虾皮铺货以及货代仓储处理订单的时间填满,从选品采购运营优化客服所有的事情都要一个人包办,包括回复邮件订单处理产品发货等英特尔独立显卡XeHPG发布在即关注点有哪些呢?英特尔今天神秘兮兮地发布了一段二进制码作为猜谜游戏,这么简单的游戏很快就被人破解,得出的是一段IP地址35。160。237。208,指向的是域名是xehpg。intel。com,原抖音独立电商软件10月上线?无奈之举去年,抖音电商部门实现了超过5000亿的GMV,是2020全年目标的3倍。这样傲人的成绩,让字节跳动愈发重视抖音的商业价值。小店支付,物流一系列的业务线布局,使得抖音整个电商闭环场长大后你想当什么?小孩小编从网上看到了以往的旧照片那个时候,笑容真的很灿烂其实儿童节是给大人过的小孩子那么开心,每天都是儿童节看看以前的老照片想要拍娃的用户们知道你们想要的还是参数所以先放参数快门125大山大河,为什么除了广角,还要带一支长焦今天,摄影师朱皓宇为我们分享了他的镜头选择策略和使用体验,让我们跟随他的镜头,看看哪些镜头更适合你吧。朱皓宇四川省摄影家协会会员四川省青年摄影家协会会员视觉中国签约摄影师四月时,四