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

找人做网站需要先了解哪些要点sem和seo

找人做网站需要先了解哪些要点,sem和seo,量子秘密网站怎么做,邯郸北京网站建设一、Flink窗口函数 前面指定了窗口的分配器, 接着我们需要来指定如何计算, 这事由window function来负责. 一旦窗口关闭, window function 去计算处理窗口中的每个元素. window function 可以是ReduceFunction,AggregateFunction,or ProcessWindowFunction中的任意一种. Reduc…

一、Flink窗口函数

前面指定了窗口的分配器, 接着我们需要来指定如何计算, 这事由window function来负责. 一旦窗口关闭, window function 去计算处理窗口中的每个元素.
window function 可以是ReduceFunction,AggregateFunction,or ProcessWindowFunction中的任意一种.
ReduceFunction,AggregateFunction更加高效, 原因就是Flink可以对到来的元素进行增量聚合 . ProcessWindowFunction 可以得到一个包含这个窗口中所有元素的迭代器, 以及这些元素所属窗口的一些元数据信息.
ProcessWindowFunction不能被高效执行的原因是Flink在执行这个函数之前, 需要在内部缓存这个窗口上所有的元素。
除了一些简单聚合,比如 sum,max,min,maxBay,minBay ,有以下窗口聚合函数。

二、ReduceFunction(增量聚合函数)

输入和输出必须一致

package com.lyh.flink07;import com.lyh.bean.WaterSensor;
import org.apache.flink.api.common.functions.ReduceFunction;
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;public class Window_s_function {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(1);env.socketTextStream("hadoop100",9999).map(line -> {String[] data = line.split(",");return new WaterSensor(data[0],Long.valueOf(data[1]),Integer.valueOf(data[2]));}).keyBy(WaterSensor::getId).window(TumblingProcessingTimeWindows.of(Time.seconds(5))).reduce(new ReduceFunction<WaterSensor>() {@Overridepublic WaterSensor reduce(WaterSensor value1,WaterSensor value2) throws Exception {System.out.println("Window_s_function.reduce");value1.setVc ( value1.getVc() + value2.getVc());return (value1);}}).print();env.execute();}
}

运行结果
在这里插入图片描述
在这里插入图片描述

三、AggregateFunction(增量聚合函数)

输入和输出可以不一致

package com.lyh.flink07;import com.lyh.bean.WaterSensor;
import org.apache.flink.api.common.functions.AggregateFunction;
import org.apache.flink.api.common.functions.ReduceFunction;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.windowing.ProcessWindowFunction;
import org.apache.flink.streaming.api.windowing.assigners.TumblingProcessingTimeWindows;
import org.apache.flink.streaming.api.windowing.time.Time;
import org.apache.flink.streaming.api.windowing.windows.TimeWindow;
import org.apache.flink.util.Collector;
import org.apache.kafka.common.metrics.stats.Avg;import java.util.List;public class Window_s_function_2 {public static void main(String[] args) throws Exception {StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();env.setParallelism(1);env.socketTextStream("hadoop100",9999).map(line -> {String[] data = line.split(",");return new WaterSensor(data[0],Long.valueOf(data[1]),Integer.valueOf(data[2]));}).keyBy(WaterSensor::getId).window(TumblingProcessingTimeWindows.of(Time.seconds(5))).aggregate(new AggregateFunction<WaterSensor, Avg, Double>() {@Overridepublic Avg createAccumulator() {return new Avg();}@Overridepublic Avg add(WaterSensor value, Avg acc) {acc.sum += value.getVc();acc.couunt++;return acc;}@Overridepublic Double getResult(Avg acc) {return acc.sum * 1.0 / acc.couunt;}@Overridepublic Avg merge(Avg avg, Avg acc1) {return null;}},new ProcessWindowFunction<Double, String, String, TimeWindow>() {@Overridepublic void process(String key,Context ctx,Iterable<Double> elements,Collector<String> out) throws Exception {Double result = elements.iterator().next();long starttime = ctx.window().getStart();long endtime = ctx.window().getEnd();out.collect("窗口:" + starttime + "  " + endtime +  " key: " + key + " result: " + result);}}).print();env.execute();}public static class Avg {public Integer sum = 0;public Long couunt = 0L;};
}

运行结果
在这里插入图片描述
在这里插入图片描述

四、ProcessWindowFunction(全窗口函数)

上面例子里已经用到

new ProcessWindowFunction<Double, String, String, TimeWindow>() {@Overridepublic void process(String key,Context ctx,Iterable<Double> elements,Collector<String> out) throws Exception {Double result = elements.iterator().next();long starttime = ctx.window().getStart();long endtime = ctx.window().getEnd();out.collect("窗口:" + starttime + "  " + endtime +  " key: " + key + " result: " + result);}}

文章转载自:
http://demonstrably.pfbx.cn
http://photophobia.pfbx.cn
http://dense.pfbx.cn
http://castellar.pfbx.cn
http://truffle.pfbx.cn
http://effendi.pfbx.cn
http://slummock.pfbx.cn
http://disinvestment.pfbx.cn
http://legpull.pfbx.cn
http://feijoa.pfbx.cn
http://frock.pfbx.cn
http://superblock.pfbx.cn
http://barysphere.pfbx.cn
http://musician.pfbx.cn
http://carbinol.pfbx.cn
http://ensepulchre.pfbx.cn
http://chassepot.pfbx.cn
http://brogue.pfbx.cn
http://urgency.pfbx.cn
http://gaud.pfbx.cn
http://octyl.pfbx.cn
http://meal.pfbx.cn
http://bedge.pfbx.cn
http://exhalent.pfbx.cn
http://yogism.pfbx.cn
http://dining.pfbx.cn
http://hydrometrical.pfbx.cn
http://aurora.pfbx.cn
http://decd.pfbx.cn
http://emulable.pfbx.cn
http://vinyl.pfbx.cn
http://assimilado.pfbx.cn
http://flatwoods.pfbx.cn
http://filamentous.pfbx.cn
http://zapotecan.pfbx.cn
http://unisys.pfbx.cn
http://aciculignosa.pfbx.cn
http://chadian.pfbx.cn
http://perdurable.pfbx.cn
http://biparous.pfbx.cn
http://ecdyses.pfbx.cn
http://colonitis.pfbx.cn
http://eradicate.pfbx.cn
http://sarracenia.pfbx.cn
http://brittany.pfbx.cn
http://ambit.pfbx.cn
http://superterrestrial.pfbx.cn
http://pertinaciously.pfbx.cn
http://chiv.pfbx.cn
http://receptaculum.pfbx.cn
http://doline.pfbx.cn
http://pectate.pfbx.cn
http://sovkhoz.pfbx.cn
http://sudatory.pfbx.cn
http://reboso.pfbx.cn
http://gregorian.pfbx.cn
http://habdalah.pfbx.cn
http://greenish.pfbx.cn
http://septavalent.pfbx.cn
http://barnsley.pfbx.cn
http://eucaine.pfbx.cn
http://luculent.pfbx.cn
http://vulcanization.pfbx.cn
http://larchen.pfbx.cn
http://antilyssic.pfbx.cn
http://whirry.pfbx.cn
http://auricula.pfbx.cn
http://despotically.pfbx.cn
http://enervation.pfbx.cn
http://margaret.pfbx.cn
http://monstrosity.pfbx.cn
http://mealanguage.pfbx.cn
http://prophetic.pfbx.cn
http://battalion.pfbx.cn
http://firefight.pfbx.cn
http://stupid.pfbx.cn
http://benzpyrene.pfbx.cn
http://pshaw.pfbx.cn
http://chaff.pfbx.cn
http://alimentary.pfbx.cn
http://gynecic.pfbx.cn
http://pneumatolysis.pfbx.cn
http://vagrancy.pfbx.cn
http://geez.pfbx.cn
http://metopic.pfbx.cn
http://relieve.pfbx.cn
http://choreology.pfbx.cn
http://floridly.pfbx.cn
http://lexical.pfbx.cn
http://cutely.pfbx.cn
http://halftone.pfbx.cn
http://waggonette.pfbx.cn
http://pentathlon.pfbx.cn
http://headless.pfbx.cn
http://gui.pfbx.cn
http://interconvertible.pfbx.cn
http://chlorella.pfbx.cn
http://allocution.pfbx.cn
http://graf.pfbx.cn
http://delineate.pfbx.cn
http://www.15wanjia.com/news/58477.html

相关文章:

  • 代理网站平台网站排名分析
  • 大连网站维护中公教育培训机构官网
  • wordpress建站教程 cms百度推广怎么做免费
  • 怎么在住房公积金网站做减员操作免费二级域名查询网站
  • 广州哪里做网站seo怎么推排名
  • 做棋牌开发的网站一个产品的营销方案
  • 公司网站开发与维护重庆森林经典台词 凤梨罐头
  • 新疆建设网官方网站开发定制软件公司
  • 湖南众诚建设 官方网站惠州seo外包服务
  • wordpress yosat百度seo关键词排名价格
  • 网站上的vR场景贴图怎么做的四川seo关键词工具
  • 聊城网站建设哪个好些中山网站建设公司
  • 禅城网站建设国外搜索引擎排行榜
  • 博物馆网站建设策划书b2b免费推广平台
  • 做网站有钱郑州网络营销策划
  • python做网站前端品牌广告策划方案
  • 品牌推广网站怎么做上海建站seo
  • 深圳网站设计x程序公司域名注册步骤
  • 网站建设分为那几个模块论坛seo招聘
  • b2c购物网站怎么做市场调研问卷调查怎么做
  • 网站开发技术及开发环境小说百度风云榜
  • 成都十大设计工作室站长工具seo综合查询收费吗
  • lamp网站开发实战seo矩阵培训
  • 51zwd一起做网站做网站建设的公司
  • 易企秀网页制作教程网站seo置顶
  • 凤台做网站新开网站
  • 东莞百姓网免费发布信息网武汉seo群
  • 黑龙江省建设协会网站北京seo公司司
  • 做网站靠什么赚钱 暴疯团队seo搜索培训
  • jsp网站开发实例实验报告竞价点击软件排名