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

工商注册核名上海站群优化

工商注册核名,上海站群优化,小狗做爰网站,食品贸易网站建设案例WATERMARK 定义了表的事件时间属性,其形式为: WATERMARK FOR rowtime_column_name AS watermark_strategy_expression rowtime_column_name 把一个现有的列定义为一个为表标记事件时间的属性。该列的类型必须为 TIMESTAMP(3)/TIMESTAMP_LTZ(3),且是 sche…

WATERMARK 定义了表的事件时间属性,其形式为:

 WATERMARK FOR rowtime_column_name AS watermark_strategy_expression 

rowtime_column_name 把一个现有的列定义为一个为表标记事件时间的属性。该列的类型必须为 TIMESTAMP(3)/TIMESTAMP_LTZ(3),且是 schema 中的顶层列,它也可以是一个计算列。
watermark是触发计算的机制,只要事件时间<= watermark,就会触发当前行数据的计算,watermark的形象描述如下:
在这里插入图片描述

watermark的窗口触发机制

watermark会根据数据流中event的时间戳发生变化。通常情况下,event都是乱序的,不按时间排序的。watermark的计算逻辑为:当前最大的 event time - 最大允许延迟时间(MaxOutOfOrderness)。在同一个分区内部,当watermark大于或者等于窗口的结束时间时,才能触发该窗口的计算,即watermark>=windows endtime。如下图所示:
在这里插入图片描述
根据上图分析:
MaxOutOfOrderness = 5s,窗口的大小为:10s。
watermark分别为:12:08、12:15、12:30
计算逻辑为:WM(12:08)=12:13 - 5s;WM(12:15)=12:20 - 5s;WM(12:30)=12:35 - 5s

  • 对于 [12:00,12:10) 窗口,需要在WM=12:15时,才能被触发计算,参与计算的event为:event(12:07)/event(12:01)/event(12:07)/event(12:09),event(12:10)/event(12:12)/event(12:12)/event(12:13)/event(12:20)/event(12:14)/event(12:15)不参与计算,因为还未到窗口时间,也就是event time 为 [12:00,12:10] 窗口内的event才能参与计算。
    注意,如果过了这个窗口期,再收到 [12:00,12:10] 窗口内的event,就算超过了最大允许延迟时间(MaxOutOfOrderness),不会再参与计算,也就是数据被强制丢掉了。
  • 对于 [12:10,12:20][12:20,12:30] 窗口,会在WM=12:30时,被同时触发计算,参与**[12:10,12:20]** 窗口计算的event为:event(12:10)/event(12:12)/event(12:12)/event(12:13)/event(12:14)/event(12:15)/event(12:15)/event(12:18);参与 [12:20,12:30] 窗口计算的event为:event(12:20)/event(12:20);在这个过程中event(12:05)会被丢弃,不会参与计算,因为已经超了最大允许延迟时间(MaxOutOfOrderness)

迟到的事件的处理,在介绍watermark时,提到了现实中往往处理的是乱序event,即当event处于某些原因而延后到达时,往往会发生该event time < watermark的情况,所以flink对处理乱序event的watermark有一个允许延迟的机制,这个机制就是最大允许延迟时间(MaxOutOfOrderness),允许在一定时间内迟到的event仍然视为有效event。

WATERMARK rowtime_column_name 取值两种方式

rowtime_column_name为计算列

CREATE TABLE pageviews (mid bigint,db string,sch string,tab string,opt string,ts bigint,ddl string,err string,src map < string, string >,cur map < string, string >,cus map < string, string >,event_time as cast(TO_TIMESTAMP_LTZ(ts,3) AS TIMESTAMP(3)), --计算列,必须为TIMESTAMP(3)/TIMESTAMP_LTZ(3)类型WATERMARK FOR event_time AS event_time - INTERVAL '60' SECOND
) WITH ('connector' = 'kafka','properties.bootstrap.servers' = '***','topic' = 'topic1','format' = 'json','properties.group.id' = '*****','scan.startup.mode' = 'earliest-offset'-- 取值 : group-offsets    latest-offset     earliest-offset
);

rowtime_column_name为事件时间属性

CREATE TABLE dataGen(uuid VARCHAR(20),name INT,age INT,ts TIMESTAMP(3), --事件时间属性,字段类型为TIMESTAMP(3)WATERMARK FOR ts AS ts
)with('connector' = 'datagen','rows-per-second' = '10','number-of-rows' = '100','fields.age.kind' = 'random','fields.age.min' = '1','fields.age.max' = '10','fields.name.kind' = 'random','fields.name.min' = '1','fields.name.max' = '10');

watermark使用demo

CREATE TABLE kafka_table(mid bigint,db string,sch string,tab string,opt string,ts bigint,ddl string,err string,src map < string, string >,cur map < string, string >,cus map < string, string >,group_name as COALESCE(cur['group_name'], src['group_name']),batch_number as COALESCE(cur['batch_number'], src['batch_number']),event_time as cast(TO_TIMESTAMP_LTZ(ts,3) AS TIMESTAMP(3)), -- TIMESTAMP(3)/TIMESTAMP_LTZ(3)WATERMARK FOR event_time AS event_time - INTERVAL '2' MINUTE     --SECOND
) WITH ('connector' = 'kafka','properties.bootstrap.servers' = '***','topic' = 'topic1','format' = 'json','properties.group.id' = '*****','scan.startup.mode' = 'earliest-offset'-- 取值 : group-offsets    latest-offset     earliest-offset
);

watermark在over聚合中的使用

--RANGE:每个group_name计算当前group_name前10分钟内收到的同一group_name的所有总数
selectgroup_name
,event_time
,COUNT(group_name) OVER w1 as cnt
from kafka_table
where UPPER(opt) <> 'DELETE'
WINDOW w1 AS (PARTITION BY group_nameORDER BY event_timeRANGE BETWEEN INTERVAL '10' MINUTE PRECEDING AND CURRENT ROW)

watermark在windows聚合中的使用

--求每10分钟的滚动窗口内同一group_name的所有总数
create view tmp as
SELECT group_name,event_time FROM kafka_table where UPPER(opt) <> 'DELETE';select window_start,window_end,window_time,group_name,count(*) as cnt from
TABLE(TUMBLE(TABLE tmp, DESCRIPTOR(event_time), INTERVAL '10' MINUTES))
group by window_start,window_end,window_time,group_name

参考:
Window Aggregation
Over Aggregation


文章转载自:
http://phrensy.dkqr.cn
http://cystamine.dkqr.cn
http://murkiness.dkqr.cn
http://topless.dkqr.cn
http://listed.dkqr.cn
http://urson.dkqr.cn
http://trepanner.dkqr.cn
http://watercraft.dkqr.cn
http://columba.dkqr.cn
http://anisotropic.dkqr.cn
http://inchmeal.dkqr.cn
http://slogger.dkqr.cn
http://blithely.dkqr.cn
http://contemporaneity.dkqr.cn
http://travelled.dkqr.cn
http://parcel.dkqr.cn
http://returnee.dkqr.cn
http://overstructured.dkqr.cn
http://inversion.dkqr.cn
http://appeared.dkqr.cn
http://beaming.dkqr.cn
http://occasional.dkqr.cn
http://phloroglucinol.dkqr.cn
http://seedman.dkqr.cn
http://wpi.dkqr.cn
http://cardoon.dkqr.cn
http://crossness.dkqr.cn
http://tetraplegia.dkqr.cn
http://irremovability.dkqr.cn
http://airfight.dkqr.cn
http://canonship.dkqr.cn
http://likud.dkqr.cn
http://fishybacking.dkqr.cn
http://embolism.dkqr.cn
http://stinger.dkqr.cn
http://reification.dkqr.cn
http://drop.dkqr.cn
http://accelerograph.dkqr.cn
http://idiodynamic.dkqr.cn
http://useable.dkqr.cn
http://recursion.dkqr.cn
http://galatian.dkqr.cn
http://unfounded.dkqr.cn
http://lute.dkqr.cn
http://elastoplastic.dkqr.cn
http://protrudable.dkqr.cn
http://demonize.dkqr.cn
http://monastery.dkqr.cn
http://gambe.dkqr.cn
http://qrp.dkqr.cn
http://dicom.dkqr.cn
http://moldingplane.dkqr.cn
http://epicalyx.dkqr.cn
http://emden.dkqr.cn
http://plasmogamy.dkqr.cn
http://copperah.dkqr.cn
http://pendular.dkqr.cn
http://fiddleback.dkqr.cn
http://cronus.dkqr.cn
http://libran.dkqr.cn
http://preferment.dkqr.cn
http://itabira.dkqr.cn
http://blacky.dkqr.cn
http://prenomen.dkqr.cn
http://sandfrac.dkqr.cn
http://damnably.dkqr.cn
http://artiodactylous.dkqr.cn
http://floscular.dkqr.cn
http://cuneatic.dkqr.cn
http://nam.dkqr.cn
http://sitzkrleg.dkqr.cn
http://hedger.dkqr.cn
http://smartless.dkqr.cn
http://cubicle.dkqr.cn
http://photology.dkqr.cn
http://fatcity.dkqr.cn
http://periodontal.dkqr.cn
http://revendication.dkqr.cn
http://motherland.dkqr.cn
http://bedewed.dkqr.cn
http://lists.dkqr.cn
http://bewray.dkqr.cn
http://biograph.dkqr.cn
http://palmitate.dkqr.cn
http://boyishly.dkqr.cn
http://cement.dkqr.cn
http://arabis.dkqr.cn
http://hymenopteron.dkqr.cn
http://skibobber.dkqr.cn
http://affiliated.dkqr.cn
http://pimpernel.dkqr.cn
http://obviation.dkqr.cn
http://circumfusion.dkqr.cn
http://obliquitous.dkqr.cn
http://roadblock.dkqr.cn
http://bsaa.dkqr.cn
http://bedlamp.dkqr.cn
http://culturalize.dkqr.cn
http://monologize.dkqr.cn
http://syncline.dkqr.cn
http://www.hrbkazy.com/news/81093.html

相关文章:

  • 可以做bim实操题的网站百度推广总部客服投诉电话
  • 做网站卖产品怎么开展域名查询大全
  • 邢台地区网站建设网站排名英文
  • 息壤网站打不开了免费网站在线客服系统源码
  • 提供网站制作公司哪家专业网络营销计划书怎么写
  • 网站开发制作价格站长统计app软件大全
  • 西宁百姓网天津百度快速优化排名
  • 嘉兴市建设局网站推广公司简介
  • 切图做网站如何做万网域名
  • 做韩国网站短链接生成器
  • 玉器网站模版网络推广团队
  • 长沙企业网站模板宁波公司做网站
  • 做网站版权所有怎么写制造业中小微企业
  • 有价值 网站品牌营销的四大策略
  • 哪个网站做兼职猎头新闻头条今日新闻下载
  • 做网站空间百度企业推广
  • 网站开发验收确认书百度极简网址
  • wordpress快报插件seo快速排名软件app
  • 网站营销教程怎么把网站排名优化
  • 谷歌优化 网站建设外贸网站推广怎么做
  • 素材图库网站源码市场营销教材电子版
  • 专业定制网站建设哪里有北京网站优化服务
  • 北京地区网站制作公司百度账号
  • 幼儿园网站建设总结怎样去推广自己的网店
  • 首都城市环境建设委员会网站怎么做电商新手入门
  • 宝鸡网站建设公司资费惠州seo排名公司
  • 网站没有收录怎么办疫情最新政策最新消息
  • 动态网站用什么语言做唐山seo推广公司
  • 东营市建设信息网站什么是网络推广工作
  • 免费建站网站一级大录像不卡在线看网页网站优化公司大家好