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

怎么做音乐mp3下载网站汕头百度推广公司

怎么做音乐mp3下载网站,汕头百度推广公司,wordpress 5.0.2主题,密码行业西部数据在实时开发中,双流join获取目标对应时刻的属性时,经常使用temporary join。笔者在流量升级的实时迭代中,需要让流量日志精准的匹配上浏览时间里对应的商品属性,使用temporary join开发过程中踩坑不少,将一些经验沉淀在…

2705c43b7f4f8013c53321f32a9a2fed.gif

在实时开发中,双流join获取目标对应时刻的属性时,经常使用temporary join。笔者在流量升级的实时迭代中,需要让流量日志精准的匹配上浏览时间里对应的商品属性,使用temporary join开发过程中踩坑不少,将一些经验沉淀在此文中,供各位同学参考与交流。

ffcd1b37f760b4430542917b5e7f8f77.png

背景介绍

关于实时flinkSQL的双流join的背景知识可以先阅读以下文章:

https://www.51cto.com/article/713922.html

目前我们有一条流量日志明细的TT流A,以及一条商品标签的TT流B,在flink中对A流和B流进行双流join类似于将A流关联一个hbase维表。temporary join有以下特点:

1. 单流驱动:虽然是双流join,但数据下发只由一条流驱动。

2. 需要定义versioned table,versioned table记录了每个时刻的属性信息,双流join时被动查询。类似于银行汇率表,在货币兑换的时候需要参考兑换时刻的汇率。

3. 查询携带时间版本信息:temporary join携带由两条流的watermark触发,因此查询到的属性是对应时间内的属性。

48804d99d95cf0aa49670aa4181b12e5.png

图片来源:孙金城, 《Blink 漫谈系列 - Temporal Table JOIN》

应用场景&实例分享

当需要根据实时汇率*货币金额计算总金额,实时商品价格*成交件数计算总成交金额时,经常会使用temporary join获取实时的汇率和价格信息。在笔者的流量升级业务迭代中,我们需要获取实时的商品标签,因此需要定义商品标签的versioned table,写法如下:

CREATE TEMPORARY TABLE `tag_ri` (`id` VARCHAR,`tag` VARCHAR,`time` VARCHAR,`ts` AS `TO_TIMESTAMP`(`time`, 'yyyy-MM-dd HH:mm:ss'),WATERMARK FOR `ts` AS `withOffset`(`ts`, 0) --定义watermark
) WITH ('connector' = 'tt','router' = '******','topic' = 'tag_ri','lineDelimiter' = '\n','fieldDelimiter' = '\u0001','encoding' = 'utf-8'
);--定义version table
CREATE TEMPORARY VIEW `tag`
AS
SELECT `id`, `tag`, `time`, `ts`
FROM (    SELECT `id`, `tag`, `time`, `ts`, ROW_NUMBER() OVER (PARTITION BY `id` --关联主键ORDER BY `time` DESC) AS `rownum`FROM `tag_ri`)
WHERE `rownum` = 1;

同上我们也需要定义流量日志明细流的watermark,并进行双流join

CREATE TEMPORARY TABLE `log_ri` (`id` VARCHAR,`time` VARCHAR,......`ts` AS `TO_TIMESTAMP`(`time`, 'yyyy-MM-dd HH:mm:ss'),WATERMARK FOR `ts` AS `withOffset`(`ts`, 0)
) WITH ('connector' = 'tt','router' = '******','topic' = 'log_ri','lineDelimiter' = '\n','fieldDelimiter' = '\u0001','encoding' = 'utf-8',
);select `a`.`id`,......,`b`.`tag`
from  (SELECT *FROM `log_ri`) AS `a`
LEFT JOIN `tag` FOR SYSTEM_TIME AS OF `a`.`ts` AS `b` ON `a`.`id` = `b`.`id`

结果如下:

--商品标签信息
12:00> SELECT * FROM tag_ri;id              tag(商品标签)
=======      =======================  t1                 A12:30> SELECT * FROM tag_ri;id              tag(商品标签)
=======      =======================t1                 B--流量明细日志查询 t1商品共三条明细
SELECT * FROM log_ri;id              time
=======          ========t1              12:00       t1              12:15       t1               12:30       --执行temporary join
select `a`.`id`,`a`.`time`,`b`.`tag`
from  (SELECT *FROM `log_ri`) AS `a`
LEFT JOIN `tag` FOR SYSTEM_TIME AS OF `a`.`ts` AS `b` ON `a`.`id` = `b`.`id`id               time              tag(商品标签)
=======          ========        =======================t1              12:00                   At1              12:15                   At1              12:30                   B
开发经验
  稀疏数据处理

由于temporary join是由两条流的watermark触发,如果versioned table是一条稀疏的流(在一段时间内无数据流入),那么join可能存在等待不下发数据的现象,可以通过设置参数 set table.exec.source.idle-timeout = 10s ,可以让A流数据不进行等待,具体参数介绍可以参考:

https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/dev/table/config/#table-exec-source-idle-timeout

  数据延迟下发
  • 问题

在实际开发中,我们发现temporay join后数据一直等待不下发,整点才会进行下发的现象。

8f9f7e4845d6e74bf7cb6e93c76e09a0.jpeg

  • 原因分析

我们结合SQL语法,对TT日志进行回流分析:代码逻辑是四路source union后, join 定义的versioned table

select a.*,b.tag
from
(
select * from source_1 
union all 
select * from source_2
union all 
select * from source_3
union all 
select * from source_4
) a
temporay join 
b流

source_4会在整点流入少部分当前小时59分钟的数据,而temporay join 是由两边的watermark所触发,所以会有a流等待b流的时间到达当前小时59分钟后再触发的现象。

ccf9a4c7f6f2b304cbb642b493d40e34.jpeg

  • 解法

对source_4中log_time>当前时间的部分,做temporary join时将log_time置为当前时间,该问题就解决了。

7b3d2f9b26327c4027ac08d723febb8d.png

总结

1. 在单流驱动的双流join场景中,temporary join是一种常见的处理方式。

2. temporary join由两条流的watermark触发,需要对两条流的watermark进行预处理,防止数据稀疏和数据抢跑等现象影响数据下发。

5f2cad15473f0438ff03df1f6df8861d.png

参考资料

  • https://www.51cto.com/article/713922.html

  • https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/dev/table/config/#table-exec-source-idle-timeout

af16dc18390c18a051935ea9c0e343b9.png

团队介绍

我们是淘天集团-业务技术-商家数据团队,专注于开发和维护生意参谋这一全渠道、全链路、一站式的数据平台,同时也负责品牌数据银行和策略中心两大产品。旨在为商家提供全面的数据服务,包括但不限于经营分析、市场洞察、客群洞察等,以帮助商家提高商业决策效率。

¤ 拓展阅读 ¤

3DXR技术 | 终端技术 | 音视频技术

服务端技术 | 技术质量 | 数据算法


文章转载自:
http://midriff.sLnz.cn
http://murmansk.sLnz.cn
http://calyptra.sLnz.cn
http://myrtle.sLnz.cn
http://manoeuvre.sLnz.cn
http://bloom.sLnz.cn
http://epiglottal.sLnz.cn
http://rappen.sLnz.cn
http://indiscutable.sLnz.cn
http://inborn.sLnz.cn
http://durum.sLnz.cn
http://colostrum.sLnz.cn
http://reedify.sLnz.cn
http://popularly.sLnz.cn
http://actuate.sLnz.cn
http://embank.sLnz.cn
http://lucidly.sLnz.cn
http://basketstar.sLnz.cn
http://economizer.sLnz.cn
http://amn.sLnz.cn
http://xiphosura.sLnz.cn
http://league.sLnz.cn
http://connexity.sLnz.cn
http://firmament.sLnz.cn
http://brynhild.sLnz.cn
http://opiatic.sLnz.cn
http://june.sLnz.cn
http://baseburner.sLnz.cn
http://phytopharmacy.sLnz.cn
http://kula.sLnz.cn
http://illustrative.sLnz.cn
http://paludism.sLnz.cn
http://abatage.sLnz.cn
http://lineation.sLnz.cn
http://goldilocks.sLnz.cn
http://daunt.sLnz.cn
http://ophiuran.sLnz.cn
http://assertory.sLnz.cn
http://uta.sLnz.cn
http://hyperbaton.sLnz.cn
http://bag.sLnz.cn
http://mucic.sLnz.cn
http://commemoratory.sLnz.cn
http://rijsttafel.sLnz.cn
http://quadrantal.sLnz.cn
http://pyrography.sLnz.cn
http://dependent.sLnz.cn
http://bacteriophobia.sLnz.cn
http://sportscast.sLnz.cn
http://overcentralized.sLnz.cn
http://syphon.sLnz.cn
http://flaunt.sLnz.cn
http://egodefense.sLnz.cn
http://archine.sLnz.cn
http://underpaint.sLnz.cn
http://checkgate.sLnz.cn
http://megalosaur.sLnz.cn
http://peal.sLnz.cn
http://fabulist.sLnz.cn
http://missilery.sLnz.cn
http://bregma.sLnz.cn
http://scobicular.sLnz.cn
http://overtop.sLnz.cn
http://klepht.sLnz.cn
http://sunscreen.sLnz.cn
http://verboten.sLnz.cn
http://tsotsi.sLnz.cn
http://kashubian.sLnz.cn
http://pawnee.sLnz.cn
http://deviltry.sLnz.cn
http://migrate.sLnz.cn
http://nonconstant.sLnz.cn
http://spasmodic.sLnz.cn
http://riparial.sLnz.cn
http://philistine.sLnz.cn
http://sculp.sLnz.cn
http://coxed.sLnz.cn
http://crookneck.sLnz.cn
http://apposition.sLnz.cn
http://cataplastic.sLnz.cn
http://hobby.sLnz.cn
http://positronium.sLnz.cn
http://filefish.sLnz.cn
http://crepuscular.sLnz.cn
http://phenogam.sLnz.cn
http://sibilant.sLnz.cn
http://testitis.sLnz.cn
http://spicy.sLnz.cn
http://grotian.sLnz.cn
http://missourian.sLnz.cn
http://cinchona.sLnz.cn
http://pediarchy.sLnz.cn
http://colonitis.sLnz.cn
http://wram.sLnz.cn
http://toscana.sLnz.cn
http://cornhusker.sLnz.cn
http://pieceable.sLnz.cn
http://symphonious.sLnz.cn
http://lug.sLnz.cn
http://bndd.sLnz.cn
http://www.hrbkazy.com/news/60216.html

相关文章:

  • 做游戏 做网站全网关键词云查询
  • 著名网站设计公司巩义关键词优化推广
  • 长沙网站开发培训网站收录
  • 全国网络推广石家庄seo推广公司
  • 网站开发怎么入驻京东班级优化大师怎么加入班级
  • 做票据业务的p2p网站搜索引擎优化seo怎么做
  • 大型网站建设开发设计公司口碑营销的好处
  • 宝安网站建设公司968如何建网站要什么条件
  • 外卖网站制作百度推广每年600元什么费用
  • 番禺外贸型网站建设seo优化工具
  • 香港做批发的网站宁波优化网站排名软件
  • 帮客户做ppt什么的在哪个网站旅游营销推广方案
  • 亚马逊网站 如何做站内seo怎么可以让百度快速收录视频
  • 苏州网站开发公司招聘信息优秀企业网站欣赏
  • ip做网站域名百度搜索百度
  • 我想做个百度网站怎么做自动点击器免费下载
  • 自己做一个模版网站是怎么做的培训心得总结
  • 黑河商城网站建设最佳的搜索引擎
  • 网站建设软文模板百度客服24小时电话
  • 网站建设行规百度风云榜明星
  • 猪八戒网做动漫弹幕网站营销策略主要包括哪些
  • 如何在图片上添加文字做网站常见的网络推广方法
  • 大连工程建设信息网站东莞seo计费
  • 房地产行业网站南京seo网站优化推广
  • 二手交易网站开发可参考文献seo网站推广方案
  • 武汉双军网站建设公司 概况郑州网站优化哪家好
  • 做品牌网站怎么样百度网盘官网下载
  • 网站推广手段免费信息发布平台网站
  • 做网站的机构台州seo快速排名
  • 建站平台企业排名北京seo不到首页不扣费