当前位置: 首页 > news >正文

广东省自然资源厅网站h5移动端网站模板下载

广东省自然资源厅网站,h5移动端网站模板下载,青海工程建设云网站,网站项目怎么做场景 自定义Map或者别的算子的时候#xff0c;有时候需要定义一些类变量#xff0c;在flink内部高并发的情况下需要正确理解这些变量的行为 代码 package com.pg.function;import org.apache.flink.api.common.functions.MapFunction; import org.apache.flink.api.common…场景 自定义Map或者别的算子的时候有时候需要定义一些类变量在flink内部高并发的情况下需要正确理解这些变量的行为 代码 package com.pg.function;import org.apache.flink.api.common.functions.MapFunction; import org.apache.flink.api.common.functions.RichMapFunction; import org.apache.flink.api.common.state.ValueState; import org.apache.flink.api.common.state.ValueStateDescriptor; import org.apache.flink.api.common.typeinfo.Types; import org.apache.flink.api.java.tuple.Tuple2; import org.apache.flink.configuration.Configuration; import org.apache.flink.streaming.api.datastream.DataStream; import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;import java.util.ArrayList;public class FlinkFunction {//对于自定义函数中的变量只有内置的状态是完全按照flink内置的 keyBy行为来的//如果是自定义的缓存比如ArrayList 则可能不会按照预期的行为public static void main(String[] args) throws Exception {final StreamExecutionEnvironment env StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(2);DataStreamString dataStream env.fromElements( b,b,b,c,c,c,d,d,d);dataStream.keyBy(x-{return x;}).map(new MyMap()).print();env.execute();}}class MyMap extends RichMapFunctionString, String {public ArrayListString list new ArrayList(); // public ValueStateInteger counter;//存储数据条数 // public ValueStateString element;//存储临时数据 // Override // public void open(Configuration parameters) throws Exception { // counter getRuntimeContext().getState(new ValueStateDescriptorInteger(counter, Types.INT)); // element getRuntimeContext().getState(new ValueStateDescriptor(element, Types.STRING)); // }Overridepublic String map(String s) throws Exception {list.add(s);if(list.size()2){String re list.toString();list.clear();return re;}else {return null;} // if (counter.value() null) { // counter.update(1);//遇见第一条数据的时候计数器为1 // } else { // counter.update(counter.value() 1); // } // if (element.value() null) { // element.update(s);//element只存储上一次到来的数据 // }else { // element.update(element.value()s); // } // if (counter.value() 2) { // String re element.value(); // //发出结果之后清楚状态 // counter.clear(); // element.clear(); // return re; // }else { // return null; // }} } 分析 keyBy之后理论上相同key的会在map中用同样的处理逻辑我们的预期行为是输出bb,cc,dd 但是用ArrayList实现的逻辑最终输出却是bb,bc,cc,dd 用ValueState的输出是bb,cc,dd 这说明了keBy后的逻辑ArrayList不会按照预期的行为执行。这是因为在flink中当多个并发的时候多个key如果落入同一个线程 则当前线程的valueState是和某一个key绑定的符合flink预期行为但是ArrayList以及其它你定义的变量则不做保证, 它是线程级别的局部变量, 这点要注意。
http://www.w-s-a.com/news/899775/

相关文章:

  • 网站建设和安全管理制度云南九泰建设工程有限公司官方网站
  • 网站的关键词和描述做外贸家纺资料网站
  • 绥化市建设工程网站招投标地址链接怎么生成
  • 网站制作设计发展前景网页链接制作生成二维码
  • 廊坊哪里有制作手机网站的企业网站建设费用财务处理
  • 手机网站建设书籍工商咨询服务
  • 麻花星空影视传媒制作公司网站美食网站网站建设定位
  • 网站的切图是谁来做学会网站 建设
  • 交通局网站建设方案答辩ppt模板免费下载 素材
  • 个人摄影网站推介网手机版
  • 有哪些免费的视频网站网站开发和竞价
  • 学校网站如何做广州商城型网站建设
  • 微网站建设哪家便宜易优建站系统
  • 推荐做木工的视频网站毕业设计做的网站抄袭
  • 网站导航页面制作wordpress调用文章阅读量
  • app小程序网站开发品牌购物网站十大排名
  • 用wordpress做购物网站龙岩品牌设计
  • 网站开发是指wordpress系统在线升级
  • 网站建设运营的灵魂是什么意思页面跳转中
  • 家政服务网站源码重庆建网站企业有哪些
  • 怎样分析一个网站做的好坏重庆长寿网站设计公司哪家专业
  • 百度助手app下载苏州seo关键词优化排名
  • 17网站一起做 佛山诸城网站建设多少钱
  • 郑州网站建设培训学校泉州做网站设计公司
  • 西峡做网站深圳建筑工务署官网
  • 单县网站惠州seo计费
  • 万网网站建设 优帮云怎样用记事本做网站
  • 注册域名后网站建设百度指数的功能
  • 怎么做伪静态网站山西网站建设设计
  • 做小型企业网站多少钱衡阳市建设局网站