FlinkCDC实现主数据与各业务系统数据的一致性(瀚高、TIDB)

         文章末尾附有flinkcdc对应瀚高数据库flink-cdc-connector代码下载地址

1、业务需求

        目前项目有主数据系统和N个业务系统,为保障“一数一源”,各业务系统表涉及到主数据系统的字段都需用主数据系统表中的字段进行实时覆盖,这里以某个业务系统的一张表举例说明:业务系统表TableB字段col_b3与主数据系统表TableA中col_a3不一致,需要用col_a3实时覆盖col_b3生成目标表TableB_new中间表,业务系统存储为国产瀚高数据库,中间库用TIDB。

2、需求分析

         业务系统已上线多年,存在历史数据和新数据,需要分两个阶段进行处理。

        第一阶段,历史数据通过TableA、TableB联合关联生成中间表TableC,其中TableC中的主数据字段已用主数据进行了更新,再将TableC实时同步到瀚高数据库中生成一个新的业务表TableB_new(TableC和TableB_new表结构一致);

        第二阶段,历史数据处理结束后,业务系统直接割接到新表TableB_new,后期新的业务数据用TableB_new与主数据表TableA关联,实时生成中间表TableC,再用FlinkCDC,实时同步TableC数据覆盖TableB_new主数据字段。

3、具体实现

        第一阶段流程图,历史数据处理,由TableA和Tabl

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BQL是什么如何使用?

BQL是什么如何使用? BQL来源于Business Query Language ,是一种业务查询语言。是北京硕迪制信科技有限公司根据以往统计分析案例研发的一种语言。特点是通过可视化界面对业务语言进行查询、聚合、排序等操作,通过BQL引擎转换为数据库可执行的…

CSGO游戏搬砖市场下跌分析,是跑还是入?

CSGO市场下跌分析,是跑还是入? 以下所有都是阿阳本人最近几年观察市场和踩坑的一点经验,由于篇幅不长所以肯定会很浅薄,大伙下嘴轻点 。 首先现在真的是CSGO市场最低点吗?后续还会跌吗?我们究竟是该继续观…

Course1-Week1:机器学习简介

Course1-Week1:机器学习简介 文章目录 Course1-Week1:机器学习简介1. 课程简介1.1 课程大纲1.2 Optional Lab的使用 (Jupyter Notebooks)1.3 欢迎参加《机器学习》课程 2. 机器学习简介2.1 机器学习定义2.2 有监督学习2.3 无监督学习 3. 线性回归模型3.1…

golang学习笔记——使用映射

文章目录 使用映射声明和初始化映射添加项访问项删除项映射中的循环 使用映射 Go 中的映射是一个哈希表,是键值对的集合。 映射中所有的键都必须具有相同的类型,它们的值也是如此。 不过,可对键和值使用不同的类型。 例如,键可以…

Apach Ozone部署

前言 最近由于工作需要,要部署一套ozone。我自己对hadoop这套体系不是很熟悉,所以过程磕磕碰碰,好不容易勉强搭起来,所以记录一下部署方式 准备 三台主机,主机均已安装jdk、hdfs,相关的安装配置就不另外写…

python二叉树链树_树的链式存储结构

二叉链树是一种树状数据结构,其中每个节点最多有两个子节点,分别称为左子节点和右子节点。每个节点包含一个数据元素和指向其左右子节点的指针。二叉链树可以是空树,也可以是具有以下特点的非空树: 1. 每个节点最多有两个子节点。…

netstat

netstat 命令用于显示网络状态 参数说明: -a或--all 显示所有连线中的Socket,默认不显示LISTEN相关 -n 拒绝显示别名,能显示数字的全部转化成数字 -e或--extend 显示网络扩展信息(User,Inode) -p或--programs 显示正在使用So…

计算机组成原理 the one day

1.计算机系统硬件软件 cpu运算器控制器 1个字(word)16bit; difference 1个字节(Byte)bit; 2.cpu主频(时钟频率)1/cpu时钟周期 CPI执行一条指令所需的时间周期数。 执行一条程序的…

JavaEE 多线程01

为什么引入多线程? 首先进程已经能很好的完成多任务这个情景下的并发编程了,那为什么又引入多线程呢? 这是因为在一些情景下,我么需要大量的创建和销毁进程来完成一些任务,此时多进程对系统的开销就会很大了. 假设有这样一个场景,服务器同时接收到很多个服务请求,这个时候服务…

Python基础教程: sorted 函数

嗨喽,大家好呀~这里是爱看美女的茜茜呐 sorted 可以对所有可迭代的对象进行排序操作, sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。 从新排序列表。 👇 👇 👇 更多精彩机密、教程…

taro h5 ios解决input不能自动获取焦点拉起键盘

描述:页面中有个按钮,点击跳转到第二个页面(有input),能直接获取焦点拉起键盘输入 安卓: 直接用focus() ios: focus无效,必须手动拉起 原理: 点击按钮的时候拉起一…

一元三次方程求解——浮点数二分

题目描述 思路 根与根之差的绝对值>1。可以得出距离为1的区间最多只有一个根若存在2个数x1和x2&#xff0c;且x1 < x2&#xff0c;f(x1) x f(x2) < 0&#xff0c;则(x1, x2)之间一定有一个根我们可以遍历每一个区间为1的范围&#xff0c;先判断左端点是否是根&#x…

K8s client go 创建CRD的informer

背景 需要监听K8s中CRD资源的变动, 做出相应的处理, 需要针对 CRD资源建立informer 实现 dynamicClient 是 创建的K8s的client, 这里使用的是 Unstructured 接収的CRD的结果, 加工的时候使用了convertUnstructuredProject 加工了一下, convertUnstructuredProject 实现下面提…

如何进行网络通信和套接字编程?

网络通信和套接字编程 引言 网络通信是计算机科学中的重要概念&#xff0c;它使得不同计算机之间可以进行数据交换和信息传递。套接字编程是一种实现网络通信的方法&#xff0c;它提供了一套标准的接口&#xff0c;使得应用程序可以通过网络进行数据传输。本文将详细介绍网络…

Python---global关键字---设置全局变量

global 英 /ˈɡləʊb(ə)l/ adj. 全球的&#xff0c;全世界的&#xff1b;全面的&#xff0c;整体的&#xff1b;&#xff08;计算机&#xff09;全局的&#xff1b;球形的 需求&#xff1a;如果有一个数据&#xff0c;在函数A和函数B中都要使用&#xff0c;该怎么办&…

【PyGIS】使用阿里AIEarth快速下载指定区域指定年份的土地利用数据

说明 中国逐年土地覆盖数据集(CLCD) 由武汉大学的杨杰和黄昕教授团队基于Landsat影像制作了中国逐年土地覆盖数据集(annual China Land Cover Dataset, CLCD),数据包含1985—2021年中国逐年土地覆盖信息。研究团队基于Landsat长时序卫星观测数据,构建时空特征,结合随机森…

Linux常用命令——blockdev命令

在线Linux命令查询工具 blockdev 从命令行调用区块设备控制程序 补充说明 blockdev命令在命令调用“ioxtls”函数&#xff0c;以实现对设备的控制。 语法 blockdev(选项)(参数)选项 -V&#xff1a;打印版本号并退出&#xff1b; -q&#xff1a;安静模式&#xff1b; -v&…

蓝桥杯官网填空题(重合次数)

问题描述 在同一天中, 从上午 6 点 13 分 22 秒到下午 14 点 36 分 20 秒, 钟表上的 分针和秒针一共重合了多少次? 注意时针、分针、秒针都围绕中心敳匀速运动。 答案提交 这是一道结果填空的题&#xff0c;你只需要算出结果后提交即可。本题的结果为一 个整数, 在提交答案…

【正则插件】前端正则插件以及预览插件推荐

1&#xff09; 2&#xff09; any-rule Pegex Previewer 下载好插件之后 在代码层右键选择 选择你需要的正则表达式&#xff0c;随后可以使用第二个插件 正则表达式插入之后顶部会有 Test Regex.. 点击会出现以下内容 将他 ctrl a 删除&#xff0c;输入你对应的正则表达…

@Validated注解的作用代码示例

当使用Spring框架进行参数验证时&#xff0c;可以通过Validated注解来触发参数验证。以下是一个简单的示例&#xff0c;演示了如何在Spring控制器中使用Validated注解来验证请求的参数&#xff1a; 首先&#xff0c;假设有一个简单的User类作为请求的数据模型&#xff1a; pu…