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

丽江手机网站建设竞价排名是按照什么来计费的

丽江手机网站建设,竞价排名是按照什么来计费的,棋牌游戏网站模板下载安装,瑶海合肥网站建设文章目录 1、窗口2、分类3、窗口API概览4、窗口分配器 在批处理统计中,可以等待一批数据都到齐后,统一处理。但是在无界流的实时处理统计中,是来一条就得处理一条,那么如何统计最近一段时间内的数据呢? ⇒ 窗口的概念&…

文章目录

  • 1、窗口
  • 2、分类
  • 3、窗口API概览
  • 4、窗口分配器

在批处理统计中,可以等待一批数据都到齐后,统一处理。但是在无界流的实时处理统计中,是来一条就得处理一条,那么如何统计最近一段时间内的数据呢? ⇒ 窗口的概念:将无限数据切割成一个个的"数据块"

1、窗口

Flink的窗口,可以理解为一个,水龙头下面的水桶的桶,窗口把无限流切割成一个个存储桶,流中数据被分发到对应的桶,再按需对每个桶中收集的数据做计算。

在这里插入图片描述

2、分类

按照驱动类型分

即按照窗口怎么去截取数据来分:

  • 时间窗口:以时间点来定义窗口的开始和结束,定点发车,到点窗口就不再收集数据,且触发计算和窗口的销毁关闭
  • 计数窗口:基于当前窗口里的元素个数,人齐发车

在这里插入图片描述

按窗口数据分配规则:

滚动窗口:

  • 固定大小,均匀切片
  • 窗口之间首位相接,没有重叠,也没有间隔
  • 每个数据都会被分配到一个窗口,且只会属于一个窗口
  • 关键参数:窗口大小Windows size,可以时时长,也可以时元素数

在这里插入图片描述

滑动窗口:

  • 窗口大小固定,但不是首尾相接
  • 关键参数:窗口大小windows size、滑动步长windows slide,滑动步长即代表计算频率
  • 滑动步长小于窗口大小时,出现重叠,此时的数据可能会被同时分配到多个窗口(size除以slide)
  • 滚动窗口即size=slide的滑动窗口
  • 每经过一个步长,就有一个窗口触发输出
  • 举例:计算最近一个小时的订单数,每10分钟输出一次,即窗口长度一小时,滑动步长10分钟

在这里插入图片描述

会话窗口:

  • 基于会话来分割数据
  • 参数:会话超时时间size
  • 相邻两条数据的间隔大于会话超时时间时,切割一次,开新的窗口(也就是说这种没有计数一说了,只能时间)
  • 会话窗口长度不是固定的
  • 会话窗口不会重叠,且留至少为size的间隔(session gap)
  • 举个例子:上一条数据走了十分钟后,下一条数据还没有到来,即默认会话中止,下次数据来时开启新的会话窗口。关键词:间隔多久没有数据进来

在这里插入图片描述

全局窗口:

  • 把相同key的所有数据都分配到同一个窗口
  • 全局窗口没有结束时间点
  • 窗口没结束时,默认不触发计算,因此需要自定义触发器才能做计算。比如Flink的计数窗口底层就是全局窗口

在这里插入图片描述

在这里插入图片描述

3、窗口API概览

调用窗口API前,要确定是否是基于按键分区(Keyed)的数据流KeyedStream来开窗,即调用窗口算子之前,是否有keyBy操作,按键分区的窗口

  • 对DataStream先keyby,此时数据流被分成多条逻辑流,即一个个KeyedStream
  • 基于KeyedStream做窗口操作,窗口计算会在多个并行子任务上同时执行
  • 相同key的数据会被发送到同一个并行子任务,而窗口操作会基于每个key进行单独的处理
stream.keyBy(...).window(...)

对于非按键分区的窗口操作,原始的DataStream就不会分成多条逻辑流,这时窗口逻辑只能在一个任务(task)上执行,就相当于强行把并行度变成了1

stream.windowAll(...)

对于非按键分区的窗口操作,手动调大窗口算子的并行度也是无效的,windowAll本身就是一个非并行的操作。

对于窗口的操作,分为窗口分配器和窗口函数,前者指明了窗口的类型,是时间窗口、计数窗口、滑动、滚动还是会话窗口。后者定义窗口数据的计算和处理逻辑

stream.keyBy(<key selector>).window(<window assigner>).aggregate(<window function>)

4、窗口分配器

时间窗口

时间窗口是最常用的窗口类型,又可以细分为滚动、滑动和会话三种:

  • 滚动
stream.keyBy(...).window(TumblingProcessingTimeWindows.of(Time.seconds(5)))  //长度为5秒的滚动窗口.aggregate(...)
  • 滑动
stream.keyBy(...)//长度为10秒、滑动步长为5秒的滑动窗口.window(SlidingProcessingTimeWindows.of(Time.seconds(10)Time.seconds(5))).aggregate(...)
  • 会话
stream.keyBy(...).window(ProcessingTimeSessionWindows.withGap(Time.seconds(10)))  //会话的超时时间.aggregate(...)

在这里插入图片描述

看完window方法的传参,窗口分配器由类xxxEventTimeWindows提供:

//滚动
stream.keyBy(...).window(TumblingEventTimeWindows.of(Time.seconds(5))).aggregate(...)
//滑动
stream.keyBy(...).window(SlidingEventTimeWindows.of(Time.seconds(10)Time.seconds(5))).aggregate(...)
//会话
stream.keyBy(...).window(EventTimeSessionWindows.withGap(Time.seconds(10))).aggregate(...)

计数窗口

  • 滚动计数
stream.keyBy(...).countWindow(10)
  • 滑动计数
stream.keyBy(...).countWindow(103)  //传入两个参数:size和slide

全局窗口

全局窗口是计数窗口的底层实现,一般在需要自定义窗口时使用。它的定义同样是直接调用.window(),分配器由GlobalWindows类提供。

stream.keyBy(...).window(GlobalWindows.create());

使用全局窗口,必须自行定义触发器才能实现窗口计算,否则不起作用。


接下来是,窗口函数,对窗口下的数据做计算逻辑,下篇整理。

http://www.dtcms.com/wzjs/85454.html

相关文章:

  • 网站载入页面怎么做品牌运营公司
  • 拓和科技有限公司网站天门seo
  • 网站和做空间营销网站制作
  • 做糕点的网站网站seo搜索
  • 个人可以建设网站吗不备案燃灯seo
  • 论坛网站开发外文文献seo优化师培训
  • 长春火车站到长春机场大巴时刻表电商网站建设平台
  • 好网站设计公司门户网站推广方案
  • 百度快照网站俄罗斯搜索引擎浏览器
  • 广东深圳网站建设微信商城开发长沙自动seo
  • 站酷网页版哈尔滨seo优化软件
  • 网站制作答辩ppt怎么做外贸推广是做什么的
  • linux 网站目录权限设置sem竞价推广怎么做
  • 淘宝客网站是怎么做的百度一下知道首页
  • 英文外贸网站设计app营销策略
  • 墨刀网站开发原型图教程网址推广
  • wordpress更换网站域名网站seo优化培训
  • 中国企业500强排名一览表石家庄自动seo
  • 哪些网站做推广好b2b平台网站
  • 国内用什么做网站品牌广告语经典100条
  • 上海外贸营销网站建设网站广州疫情最新消息今天封城了
  • 企业网站优化的方式打开百度app
  • 做公司网站源代码怎么写站长平台工具
  • 制作网站计划书网页游戏推广平台
  • 做seo推广公司网站2022年新闻热点事件
  • 温州网站托管东莞seo推广机构帖子
  • WordPress做的网站源代码如何做网站 新手 个人 教程
  • 网站建设基础心得nba在线直播免费观看直播
  • 网站可以做外部链接吗网站seo方案模板
  • 网站开发测试工具让手机变流畅的软件下载