Flink实时电商数仓(五)

FlinkSQL的join

  1. Regular join普通join,两条流的数据都时存放在内存的状态中,如果两条流数据都很大,对内存压力很大。
  2. Interval Join: 适合两条流到达时间有先后关系的;一条流的存活时间短,一条流的存活时间长。
  3. Lookup Join:适合主流特别大,从流特别小的情况;主流数据没到达一条,就会去查询从流的每一条数据。主流数据不存储在内存中。
    • 语法:主流使用时必须有处理时间,proctime as PROCTIME()
    • 在从流表名和别名之间添加 FOR SYSTEM_TIME AS OF c.proc_time
    • 参数位置,官网->application Development -> Table API & SQL -> Configuration, 在该网页搜索lookup即可查询到相应参数配置,比如:
      • table.exec.async-lookup.buffer-capacity: 缓冲队列的大小
      • table.exec.async-lookup.output-mode:数据输出的模式,是否有序
      • table.exec.async-lookup.timeout:lookup超时时间

交易域下单事务事实表

在这里插入图片描述

  1. 交易事务关联的表总共有四个表
    • order_detail
    • order_info
    • order_detail_activity
    • order_detail_coupon
  2. 设置ttl状态生存时间,设置网络波动延迟时间为5s
  3. 关联四张表获取到订单明细表,order_detail和order_info使用内连接即可,活动和优惠券表使用left join即可。
  4. 核心业务编写
    • 读取topic_db数据
    • 筛选订单详情order_detail表数据
    • 筛选订单信息表order_info
    • 筛选订单详情活动关联表
    • 筛选订单详情优惠券关联表
    • 将四张表join合并
    • 写出到kafka中:一旦使用了left join,会产生撤回流,此时如果需要将数据写出到kafka,不能使用kafka连接器,必须使用upsert kafka连接器。
      • upsert kafka必须声明主键

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/266017.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】贝叶斯决策论

参考课程视频:https://www.icourse163.org/course/NEU-1462101162?tid1471214452 1 概述 1.1 相关概念与变量描述 1.2 贝叶斯定理 2 分类准则 2.1 最大后验概率分类准则 2.2 最小错误概率分类准则 ) 2.3 最小风险分类准则 2.4 栗子 —— 根据身高预测性别

基于AWD攻防对Web漏洞的研究

写在前面 Copyright © [2023] [Myon⁶]. All rights reserved. 基于awd攻防环境和xshell远程连接,配合kali linux渗透系统、蚁剑、D盾、河马、Seay代码审计系统等,演示现实中网站可能存在的漏洞,对网站进行漏洞扫描,渗透测…

网络爬虫之Ajax动态数据采集

动态数据采集 规则 有时候我们在用 requests 抓取页面的时候,得到的结果可能和在浏览器中看到的不一样,在浏览器中可以看到正常显示的页面教据,但是使用 requests 得到的结果并没有,这是因为requests 获取的都是原始的 HTML 文档…

nodejs+vue+ElementUi家政服务系统c90g5

项目中登录模块用到token家政服务平台有管理员,雇主,雇员三个角色。管理员功能有个人中心,雇主管理,雇员管理,资料认证管理,项目类型管理,服务项目管理,需求信息管理,服务…

探索微软Edge:使用方法和心得分享

学习目标: 了解微软Edge的基本功能和使用方法。掌握在微软Edge上进行浏览、搜索和书签管理的技巧。学习如何使用微软Edge进行隐私和安全管理。探索微软Edge的扩展和其他高级功能。 学习内容: 微软Edge的简介:了解微软Edge的起源、特点和与其…

NiNNet

目录 一、网络介绍 1、全连接层存在的问题 2、NiN的解决方案(NiN块) 3、NiN架构 4、总结 二、代码实现 1、定义NiN卷积块 2、NiN模型 3、训练模型 一、网络介绍 NiN(Network in Network)是一种用于图像识别任务的卷积神经网络模型。它由谷歌研究…

设计模式除盲

目录 1.设计模式概述1.1 软件设计模式的产生背景1.2.软件设计模式的概念1.3 学习设计模式的必要性1.4 设计模式分类 2.UML图2.1 类图概述2.2 类图的作用2.3 类图表示法2.3.1 类的表示方式2.3.2 类与类之间关系的表示方式2.3.2.1 关联关系2.3.2.2 聚合关系2.3.2.3 组合关系2.3.2…

驱动开发-1

一、驱动课程大纲 内核模块字符设备驱动中断 二、ARM裸机代码和驱动有什么区别? 1、共同点: 都能够操作硬件 2、不同点: 1)裸机就是用C语言给对应的寄存器里面写值,驱动是按照一定的套路往寄存器里面写值 2&#xff09…

微服务之配置中心与服务跟踪

zookeeper 配置中心 实现的架构图如下所示,采取数据加载到内存方式解决高效获取的问题,借助 zookeeper 的节点监听机制来实现实时感知。 配置中心数据分类 事件调度(kafka) 消息服务和事件的统一调度,常用用 kafka …

vulnhub-Tre(cms渗透)

🐮博主syst1m 带你 acquire knowledge! ✨博客首页——syst1m的博客💘 😘《CTF专栏》超级详细的解析,宝宝级教学让你从蹒跚学步到健步如飞🙈 😎《大数据专栏》大数据从0到秃头👽&…

MATLAB画球和圆柱

1. 画球 修改了一下MATLAB的得到球的坐标的函数&#xff1a; GetSpherePoint function [xx,yy,zz] GetSpherePoint(xCenter,yCenter,zCenter,r,N) % 在[xCenter,yCenter,zCenter]为球心画一个半径为r的球,N表示球有N*N个面&#xff0c;N越大球的面越密集 if nargin < 4 …

Flink面试题与详解

Flink面试题目合集 从牛客网上找到的一些面试题&#xff0c;如果还有其他的&#xff0c;欢迎大家补充。 1、能否详细描述下Apache Flink的架构组件和其工作原理&#xff1f;请介绍一下Flink on YARN部署模式的工作原理。 官网图&#xff1a; 由两个部分组成&#xff0c;JM&am…

单调栈分类、封装和总结

作者推荐 map|动态规划|单调栈|LeetCode975:奇偶跳 通过枚举最小&#xff08;最大&#xff09;值不重复、不遗漏枚举所有子数组 C算法&#xff1a;美丽塔O(n)解法单调栈左右寻找第一个小于maxHeight[i]的left,right&#xff0c;[left,right]直接的高度都是maxHeight[i] 可以…

攻防世界——game 游戏

下载下来是一个exe文件&#xff0c;可以用IDA打开 我们先运行一下 这是属于第二种类型&#xff0c;完成一个操作后给你flag 这种题我更倾向于动调直接得到flag 我们查壳 没有保护壳&#xff0c;直接32打开 进入字符串界面&#xff0c;找到显示的那部分 int __cdecl main_0(…

XSKY星辰天合星海架构荣获 IT168 “2023 年度技术卓越奖”

近日&#xff0c;"2023 年度技术卓越奖"获奖名单公布&#xff0c;XSKY 星辰天合的星海架构&#xff08;XSEA&#xff0c;极速全共享架构&#xff09;获得行业 CIO/CTO 大咖、技术专家及 IT 媒体三方认可&#xff0c;成功入选&#xff01; “技术卓越奖”评选由国内著…

Java核心知识体系8:Java如何保证线程安全性

1 Java内存模型&#xff08;JMM&#xff09; 如何解决并发问题 维度1&#xff1a;使用关键字、属性进行优化JMM本质实际就是&#xff1a;Java 内存模型规范了 JVM 如何提供按需禁用缓存和编译优化的方法。这些方法包括了&#xff1a; volatile、synchronized 和 final 关键字 …

Linux多线程:线程池(单例),读写锁

目录 一、线程池&#xff08;单例模式&#xff09;1.1 makefile1.2 LockGuard.hpp1.3 log.hpp1.4 Task.hpp1.5 Thread.hpp1.6 ThreadPool.hpp1.7 main.cc 二、STL,智能指针和线程安全2.1 STL中的容器是否是线程安全的?2.2 智能指针是否是线程安全的? 三、其他常见的各种锁四、…

Mac OS 13+,Apple Silicon,删除OBS虚拟摄像头(virtual camera),

原文链接: https://www.reddit.com/r/MacOS/comments/142cv OBS为了捕获摄像头视频,将虚拟摄像头插件内置为系统插件了.如下 直接删除没有权限的,要删除他,在mac os 13以后,需要关闭先关闭苹果系统的完整性保护(SIP) Apple 芯片(M1,....)的恢复模式分为两种,回退恢复模式,和…

支持TrustZone®的R7FA4M2AC3CFM、R7FA4M2AD3CFM、R7FA4M2AD3CFP、R7FA4M2AC3CFP高性能32位微控制器

产品简介 RA4M2 32 位微控制器 (MCU) 产品群使用支持 TrustZone 的高性能 Arm Cortex-M33 内核。 与片内的 Secure Crypto Engine (SCE) 配合使用&#xff0c;可实现安全芯片的功能。 RA4M2 采用高效的 40nm 工艺&#xff0c;由灵活配置软件包 (FSP) 这个开放且灵活的生态系统…

计算机网络(5):运输层

这一章应该是整个计算机网络对我们来说最重要的&#xff0c;也是用的最多的一部分。 运输层协议 进程之间的通信 从通信和信息处理的角度看&#xff0c;运输层向它上面的应用层提供通信服务&#xff0c;它属于面向通信部分的最高层&#xff0c;同时也是用户功能中的最低层。…