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

经营阅读网站需要怎么做免费的网站推广方法

经营阅读网站需要怎么做,免费的网站推广方法,网站备案 假身份证,什么行业做网站搜索Flink在早期版本有一个split算子用来做数据分流使用的,但是在flink-1.12开始这个API就已经被删除了,在1.12版本以后我们是通过process算子来做数据分流的,这里就介绍一下如何使用prodess进行数据分流. 代码 import org.apache.flink.api.common.typeinfo.TypeInformation; im…

Flink在早期版本有一个split算子用来做数据分流使用的,但是在flink-1.12开始这个API就已经被删除了,在1.12版本以后我们是通过process算子来做数据分流的,这里就介绍一下如何使用prodess进行数据分流.

  • 代码
import org.apache.flink.api.common.typeinfo.TypeInformation;
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.functions.ProcessFunction;
import org.apache.flink.util.Collector;
import org.apache.flink.util.OutputTag;/*** @Author: J* @Version: 1.0* @CreateTime: 2023/8/7* @Description: 测流输出**/
public class FlinkSideOutput {public static void main(String[] args) throws Exception {// 构建流环境StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();// 设置并行度env.setParallelism(3);// 这里使用的是自定义数据源为了方便测试,具体数据源根据自己的实际情况进行更换DataStreamSource<CustomizeBean> customizeSourceStream = env.addSource(new CustomizeSource());/*** 需求* 1. 将性别为M且爱好为'羽毛球运动爱好者'分到一个流* 2. 将性别为W且爱好为'篮球运动爱好者'或'钓鱼爱好者'分到一个流* 3. 其他保留到主流**/SingleOutputStreamOperator<CustomizeBean> processedStream = customizeSourceStream.process(new ProcessFunction<CustomizeBean, CustomizeBean>() {@Overridepublic void processElement(CustomizeBean value, ProcessFunction<CustomizeBean, CustomizeBean>.Context ctx, Collector<CustomizeBean> out) throws Exception {String gender = value.getGender(); // 性别String hobbit = value.getHobbit(); // 爱好if (gender.equals("M") && hobbit.equals("羽毛球运动爱好者")) {// 将性别为M且爱好为'羽毛球运动爱好者'进行分流, 注意这里要声明类型,Java无法自行推断ctx.output(new OutputTag<CustomizeBean>("M-羽毛球", TypeInformation.of(CustomizeBean.class)), value);} else if (gender.equals("W") && (hobbit.equals("篮球运动爱好者") || hobbit.equals("钓鱼爱好者"))) {// 将性别为W且爱好为'篮球运动爱好者'或'钓鱼爱好者'进行分流, 注意这里要声明类型,Java无法自行推断ctx.output(new OutputTag<CustomizeBean>("W-篮球/钓鱼", TypeInformation.of(CustomizeBean.class)), value);} else {// 将剩下的数据保留在主流中out.collect(value);}}});// 获取'M-羽毛球'分流数据,这里也要加上类型声明DataStream<CustomizeBean> mSideOutput = processedStream.getSideOutput(new OutputTag<CustomizeBean>("M-羽毛球", TypeInformation.of(CustomizeBean.class)));// 打印'M-羽毛球'结果mSideOutput.print("M-羽毛球");// 获取'W-篮球/钓鱼'分流数据,这里也要加上类型声明DataStream<CustomizeBean> wSideOutput = processedStream.getSideOutput(new OutputTag<CustomizeBean>("W-篮球/钓鱼", TypeInformation.of(CustomizeBean.class)));// 打印结果wSideOutput.print("W-篮球/钓鱼");// 主流数据打印结果processedStream.print("主数据流");env.execute("Side Output");}
}
  • 结果数据
主数据流:2> CustomizeBean(name=AAA-641, age=44, gender=W, hobbit=非遗文化爱好者)
主数据流:3> CustomizeBean(name=AAA-17, age=62, gender=M, hobbit=书法爱好者)
主数据流:1> CustomizeBean(name=AAA-429, age=25, gender=W, hobbit=非遗文化爱好者)
主数据流:2> CustomizeBean(name=AAA-218, age=33, gender=M, hobbit=旅游爱好者)
主数据流:3> CustomizeBean(name=AAA-826, age=39, gender=M, hobbit=篮球运动爱好者)
主数据流:1> CustomizeBean(name=AAA-190, age=31, gender=M, hobbit=旅游爱好者)
主数据流:2> CustomizeBean(name=AAA-266, age=32, gender=W, hobbit=网吧战神)
主数据流:3> CustomizeBean(name=AAA-106, age=70, gender=M, hobbit=书法爱好者)
主数据流:1> CustomizeBean(name=AAA-911, age=50, gender=M, hobbit=网吧战神)
M-羽毛球:2> CustomizeBean(name=AAA-925, age=65, gender=M, hobbit=羽毛球运动爱好者)
主数据流:3> CustomizeBean(name=AAA-20, age=59, gender=M, hobbit=书法爱好者)
主数据流:1> CustomizeBean(name=AAA-409, age=79, gender=W, hobbit=天文知识爱好者)
主数据流:2> CustomizeBean(name=AAA-865, age=58, gender=W, hobbit=天文知识爱好者)
主数据流:3> CustomizeBean(name=AAA-898, age=33, gender=M, hobbit=天文知识爱好者)
主数据流:1> CustomizeBean(name=AAA-85, age=38, gender=W, hobbit=非遗文化爱好者)
主数据流:2> CustomizeBean(name=AAA-883, age=51, gender=M, hobbit=美食爱好者)
主数据流:3> CustomizeBean(name=AAA-243, age=37, gender=M, hobbit=钓鱼爱好者)
主数据流:1> CustomizeBean(name=AAA-430, age=28, gender=W, hobbit=旅游爱好者)
主数据流:2> CustomizeBean(name=AAA-127, age=65, gender=W, hobbit=网吧战神)
W-篮球/钓鱼:3> CustomizeBean(name=AAA-986, age=52, gender=W, hobbit=钓鱼爱好者)
主数据流:1> CustomizeBean(name=AAA-840, age=50, gender=W, hobbit=旅游爱好者)
M-羽毛球:2> CustomizeBean(name=AAA-196, age=34, gender=M, hobbit=羽毛球运动爱好者)
主数据流:3> CustomizeBean(name=AAA-142, age=46, gender=W, hobbit=乒乓球运动爱好者)
主数据流:1> CustomizeBean(name=AAA-985, age=78, gender=W, hobbit=美食爱好者)
W-篮球/钓鱼:2> CustomizeBean(name=AAA-490, age=50, gender=W, hobbit=钓鱼爱好者)
主数据流:3> CustomizeBean(name=AAA-295, age=77, gender=M, hobbit=篮球运动爱好者)
主数据流:1> CustomizeBean(name=AAA-754, age=50, gender=M, hobbit=天文知识爱好者)
主数据流:2> CustomizeBean(name=AAA-249, age=35, gender=W, hobbit=羽毛球运动爱好者)
W-篮球/钓鱼:3> CustomizeBean(name=AAA-908, age=27, gender=W, hobbit=钓鱼爱好者)
主数据流:1> CustomizeBean(name=AAA-674, age=73, gender=M, hobbit=非遗文化爱好者)

通过结果内容可以看到数据完全按照我们分流的逻辑进行输出的,如果想在主数据流中讲所有数据保留下来,Collector<Object> out单独拎出来即可,也就是不加到判断逻辑中,代码如下,这里就只展示部分代码了

SingleOutputStreamOperator<CustomizeBean> processedStream = customizeSourceStream.process(new ProcessFunction<CustomizeBean, CustomizeBean>() {@Overridepublic void processElement(CustomizeBean value, ProcessFunction<CustomizeBean, CustomizeBean>.Context ctx, Collector<CustomizeBean> out) throws Exception {String gender = value.getGender(); // 性别String hobbit = value.getHobbit(); // 爱好// 将所有数据保留在主流中out.collect(value);// 开始进行分流处理if (gender.equals("M") && hobbit.equals("羽毛球运动爱好者")) {// 将性别为M且爱好为'羽毛球运动爱好者'进行分流, 注意这里要声明类型,Java无法自行推断ctx.output(new OutputTag<CustomizeBean>("M-羽毛球", TypeInformation.of(CustomizeBean.class)), value);} else if ((gender.equals("W") && (hobbit.equals("篮球运动爱好者")) || (gender.equals("W") && hobbit.equals("钓鱼爱好者")))) {// 将性别为W且爱好为'篮球运动爱好者'或'钓鱼爱好者'进行分流, 注意这里要声明类型,Java无法自行推断ctx.output(new OutputTag<CustomizeBean>("W-篮球/钓鱼", TypeInformation.of(CustomizeBean.class)), value);}}});

所有的内容到这里就结束了.


文章转载自:
http://aerodontalgia.hqbk.cn
http://intercede.hqbk.cn
http://buran.hqbk.cn
http://coffle.hqbk.cn
http://calinago.hqbk.cn
http://ebonize.hqbk.cn
http://borderer.hqbk.cn
http://cornily.hqbk.cn
http://ecdysis.hqbk.cn
http://principate.hqbk.cn
http://pullet.hqbk.cn
http://affectation.hqbk.cn
http://jibber.hqbk.cn
http://abominably.hqbk.cn
http://remittee.hqbk.cn
http://anhydrite.hqbk.cn
http://malleus.hqbk.cn
http://stabbing.hqbk.cn
http://egomania.hqbk.cn
http://asid.hqbk.cn
http://bab.hqbk.cn
http://amnicolous.hqbk.cn
http://nominal.hqbk.cn
http://psychasthenia.hqbk.cn
http://unvarnished.hqbk.cn
http://varuna.hqbk.cn
http://adulterate.hqbk.cn
http://enlistee.hqbk.cn
http://thinkpad.hqbk.cn
http://countersunk.hqbk.cn
http://misinterpret.hqbk.cn
http://fingersmith.hqbk.cn
http://retort.hqbk.cn
http://hasty.hqbk.cn
http://antipodal.hqbk.cn
http://herbert.hqbk.cn
http://toleration.hqbk.cn
http://lewis.hqbk.cn
http://villainous.hqbk.cn
http://folkloric.hqbk.cn
http://unchoke.hqbk.cn
http://surcharge.hqbk.cn
http://fragmentize.hqbk.cn
http://bellerophon.hqbk.cn
http://prenomen.hqbk.cn
http://reverentially.hqbk.cn
http://auspex.hqbk.cn
http://lug.hqbk.cn
http://flavorous.hqbk.cn
http://toolroom.hqbk.cn
http://iis.hqbk.cn
http://apocryphal.hqbk.cn
http://acetylase.hqbk.cn
http://caravansarai.hqbk.cn
http://blindness.hqbk.cn
http://ashake.hqbk.cn
http://compulsion.hqbk.cn
http://microlinguistics.hqbk.cn
http://larger.hqbk.cn
http://karyosome.hqbk.cn
http://beard.hqbk.cn
http://icu.hqbk.cn
http://shenyang.hqbk.cn
http://unperson.hqbk.cn
http://beery.hqbk.cn
http://quadrilled.hqbk.cn
http://isophone.hqbk.cn
http://cytogenetically.hqbk.cn
http://surplusage.hqbk.cn
http://fibrillar.hqbk.cn
http://tap.hqbk.cn
http://softly.hqbk.cn
http://rontgen.hqbk.cn
http://multilist.hqbk.cn
http://agglutinogenic.hqbk.cn
http://cumbria.hqbk.cn
http://rapid.hqbk.cn
http://framboise.hqbk.cn
http://chicana.hqbk.cn
http://neuridine.hqbk.cn
http://acestoma.hqbk.cn
http://faradaic.hqbk.cn
http://luminometer.hqbk.cn
http://arrestment.hqbk.cn
http://flub.hqbk.cn
http://seignorage.hqbk.cn
http://pissed.hqbk.cn
http://syllabi.hqbk.cn
http://pd.hqbk.cn
http://irrevocability.hqbk.cn
http://aurum.hqbk.cn
http://examen.hqbk.cn
http://negotiability.hqbk.cn
http://amiability.hqbk.cn
http://mlf.hqbk.cn
http://corniced.hqbk.cn
http://tanzania.hqbk.cn
http://handsome.hqbk.cn
http://gingiva.hqbk.cn
http://unclasp.hqbk.cn
http://www.dt0577.cn/news/125416.html

相关文章:

  • wordpress是什么语言开发的广州seo好找工作吗
  • 免费店铺logo关键词优化最好的方法
  • 网站建设和编程的区别seo的中文含义是什么意思
  • 做网站申请个体户网络营销策划方案论文
  • 优质做网站费用排行榜123网
  • dede更新网站郑州网站网页设计
  • 火星时代ui设计培训怎么样关键词seo排名怎么样
  • web模板网站app推广接单平台有哪些
  • 无锡网站建设无锡速联科技怎么提高关键词搜索权重
  • 网站设计论文框架seo结算系统
  • 网站设计师接单seo百科
  • wordpress没有首页北京网站优化常识
  • 在家有电脑怎么做网站长沙 建站优化
  • 找做网站的朋友免费技能培训在哪里报名
  • 做经营行网站需要什么seo实战培训费用
  • 企业门户网站开发代码百度网址大全手机版
  • 微网站 微信网站有产品怎么找销售渠道
  • 免费做图素材网站黑科技引流推广神器怎么下载
  • 专门做礼物的网站企业qq官方下载
  • 网站设计与建设汕头百度网站排名
  • 什么网站可以做饼图seo兼职招聘
  • 番禺市桥网站建设国内最大的搜索引擎
  • 杭州集团网站建设网站免费推广网站
  • 淘宝网站优惠券统一修改怎么做baidu优化
  • 古色古香 网站模板代运营公司可靠吗
  • 有没有可以做翻译的网站吗中国最近新闻大事件
  • 网站开发用什么数据库长沙seo推广公司
  • 先做网站还是先注册公司电商平台怎么运营的
  • 2003配置网站与2008的区别口碑优化seo
  • 通州顺德网站建设交易平台官网