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

呼伦贝尔做网站公司网站建设报价方案

呼伦贝尔做网站公司,网站建设报价方案,专业建设成效,视频网站做电商Flink的API中只提供了join的算子,并没有left join或者right join,这里我们就介绍一下join算子的使用,其实join算子底层调用的就是coGroup,具体原理这里就不过多介绍了,如果感兴趣可以看我前面发布的文章Flink多流操作之coGroup. 数据源➜ ~ nc -lk 1111 101,A 102,B 103,C 10…

Flink的API中只提供了join的算子,并没有left join或者right join,这里我们就介绍一下join算子的使用,其实join算子底层调用的就是coGroup,具体原理这里就不过多介绍了,如果感兴趣可以看我前面发布的文章Flink多流操作之coGroup.

  • 数据源
    ➜  ~ nc -lk 1111
    101,A
    102,B
    103,C
    104,D
    105,E
    106,F
    
    ➜  ~ nc -lk 2222
    101,A,,程序员
    102,B,,程序员
    103,C,,会计
    104,D,,安全工程师
    106,K,,程序员
    108,,本科,人事
    
  • 代码
    import org.apache.flink.api.common.functions.JoinFunction;
    import org.apache.flink.api.common.typeinfo.TypeHint;
    import org.apache.flink.streaming.api.datastream.DataStream;
    import org.apache.flink.streaming.api.datastream.DataStreamSource;
    import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
    import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
    import org.apache.flink.streaming.api.windowing.assigners.TumblingProcessingTimeWindows;
    import org.apache.flink.streaming.api.windowing.time.Time;/*** @Author: J* @Version: 1.0* @CreateTime: 2023/8/10* @Description: 多流操作-join**/
    public class FlinkJoin {public static void main(String[] args) throws Exception {// 构建流环境StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();// 设置并行度env.setParallelism(3);// 数据源1,以socket作为数据源DataStreamSource<String> socketStream1 = env.socketTextStream("localhost", 1111);SingleOutputStreamOperator<String[]> mapStream1 = socketStream1.map(str -> str.split(",")).returns(new TypeHint<String[]>() {});// 数据源2,以socket作为数据源DataStreamSource<String> socketStream2 = env.socketTextStream("localhost", 2222);SingleOutputStreamOperator<String[]> mapStream2 = socketStream2.map(str -> str.split(",")).returns(new TypeHint<String[]>() {});// 关联数据流DataStream<String> joinedStream = mapStream1.join(mapStream2).where(arr -> arr[0]) // mapStream1以数组中的第一个字段作为关联字段.equalTo(arr -> arr[0]) // mapStream2以数组中的第一个字段作为关联字段.window(TumblingProcessingTimeWindows.of(Time.seconds(20))) // 以20秒作为一个窗口.apply(new JoinFunction<String[], String[], String>() {// 这里是写关联后的具体逻辑@Overridepublic String join(String[] first, String[] second) throws Exception {String result = first[0] + "," + second[1] + "," + second[2] + "," + second[3];return result;}});// 打印结果数据joinedStream.print();env.execute("Flink join");}
    }
    
  • 结果
    3> 103,C,男,会计
    2> 106,K,男,程序员
    2> 101,A,男,程序员
    3> 104,D,男,安全工程师
    3> 102,B,男,程序员
    
    这个API使用起来还是比较简单的,如果想实现left join或者right join的功能就需要通过coGroup来实现了.
http://www.15wanjia.com/news/31453.html

相关文章:

  • 电商网站开发简历seo网站推广方式
  • 北京建设网站制作腾讯企点
  • 网站项目进度优化seo深圳
  • 网站开发经典案例国际外贸网络交易平台
  • 企业网站源码 java网站优化推广外包
  • 推广方案是什么seo排名培训学校
  • 做团购网站有什么难处淘宝关键词优化
  • 专业建设网站应该怎么做sem竞价开户
  • 手机兼职赚钱一单一结学生谷歌aso优化
  • 复兴网站制作seo推广优化的方法
  • 成都网站建设公司兴田德润在哪儿产品代理推广方案
  • dw做的网站能搜到吗淄博头条新闻今天
  • 免费b2b网站大全免费黄页软文写作范文500字
  • 福永网站建设线上培训
  • 定制网站建设公司哪家好bing搜索引擎入口官网
  • 电子商务网站建设实训总结电脑优化工具
  • 网站开发+职位描述南京seo网络优化公司
  • 深圳网站建设公司简介it培训
  • 大连公司名称大全福清市百度seo
  • 怎么用百度云做网站空间怎么提高关键词搜索排名
  • 成都市网站建设哪家好最近三天的新闻大事简短
  • 网站动态图怎么做百度认证怎么认证
  • 广州网站建设公司有哪些南京seo收费
  • udacity 网站开发怎样注册个人网站
  • 做网站用模版公司网站免费自建
  • 云虚拟主机可以做多少个网站国外搜索引擎
  • 东莞专业网站推广方式长沙seo排名公司
  • 谷歌网站管理员账号seo网络推广知识
  • 昆明网站建设 技术支持技术培训
  • 新闻摘抄大全苏州seo优化