[发明专利]一种基于SQL Server的数据同步方法及系统在审
申请号: | 202010068598.3 | 申请日: | 2020-01-21 |
公开(公告)号: | CN111125260A | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 马新强;黄羿;刘友缘;杨建党;白金生 | 申请(专利权)人: | 重庆文理学院 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/25 |
代理公司: | 浙江千克知识产权代理有限公司 33246 | 代理人: | 裴金华 |
地址: | 402160 *** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sql server 数据 同步 方法 系统 | ||
本发明提供一种基于SQL Server的数据同步方法及系统,涉及数据管理技术领域,其中一种基于SQL Server的数据同步方法包括以下步骤:S1:获取源表的数据变化;S2:实时获取数据表的行级更改数据并记录;S3:将变更的数据同步到Kafka中;S4:实时消费Kafka中产生的数据,进行ETL操作;S5:输出结果存储至目标表,获得业务统计分析的宽表,便于后台读取。本发明一种基于SQL Server的数据同步方法及系统可以获取SQL Server数据库中现有数据的快照,然后监视和记录对该数据的所有后续行级更改。每个表的所有事件都记录在单独的Kafka Topic中,进而用于kafka消费,实现数据同步,数据同步效果好,方便后台读取。
技术领域
本发明涉及数据管理技术领域,
尤其是,本发明涉及一种基于SQL Server的数据同步方法及系统。
背景技术
传统的数据同步方式有以下几种:
(1)触发器方式
触发器方式是普遍采取的一种增量抽取机制。该方式是根据抽取要求,在要被抽取的源表上建立插入、修改、删除3个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个增量日志表,ETL的增量抽取则是从增量日志表中而不是直接在源表中抽取数据,同时增量日志表中抽取过的数据要及时被标记或删除。为了简单起见,增量日志表一般不存储增量数据的所有字段信息,而只是存储源表名称、更新的关键字值和更新操作类型(KNSEN、UPDATE或DELETE),ETL增量抽取进程首先根据源表名称和更新的关键字值,从源表中提取对应的完整记录,再根据更新操作类型,对目标表进行相应的处理。触发器这种方式,虽然可以自动进行抽取,但是执行频率过多,十分影响效率。也会影响到原生系统的稳定。
(2)时间戳方式
时间戳方式是指增量抽取时,抽取进程通过比较系统时间与抽取源表的时间戳字段的值来决定抽取哪些数据。这种方式需要在源表上增加一个时间戳字段,系统中更新修改表数据的时候,同时修改时间戳字段的值。有的数据库(例如SQL SERVER)的时间戳支持自动更新,即表的其它字段的数据发生改变时,时间戳字段的值会被自动更新为记录改变的时刻。在这种情下,进行ETL实施时就只需要在源表加上时间戳字段就可以了。对于不支持时间戳自动更新的数据库,这就要求业务系统在更新业务数据时,通过编程的方式手工更新时间戳字段。使用时间戳方式可以正常捕获源表的插入和更新操作,但对于删除操作则无能为力。这种方式并不能完全捕获源数据的变化。
(3)全表删除插入方式
全表删除插入方式是指每次抽取前先删除目标表数据,抽取时全新加载数据。该方式实际上将增量抽取等同于全量抽取。对于数据量不大,全量抽取的时间代价小于执行增量抽取的算法和条件代价时,可以采用该方式。而医疗数据的数据量十分庞大,这中方式对于大数据量来说是非常不可取的。
(4)全表比对方式
全表比对即在增量抽取时,ETL进程逐条比较源表和目标表的记录,将新增和修改的记录读取出来。优化之后的全部比对方式是采用MD5校验码,需要事先为要抽取的表建立一个结构类似的MD5临时表,该临时表记录源表的主键值以及根据源表所有字段的数据计算出来的(BI)
MD5校验码,每次进行数据抽取时,对源表和MD5临时表进行MD5校验码的比对,如有不同,进行UPDATE操作:如目标表没有存在该主键值,表示该记录还没有,则进行INSERT操作。然后,还需要对在源表中已不存在而目标表仍保留的主键值,执行DELETE操作。
5、日志表方式
对于建立了业务系统的生产数据库,可以在数据库中创建业务日志表,当特定需要监控的业务数据发生变化时,由相应的业务系统程序模块来更新维护日志表内容。增量抽取时,通过读日志表数据决定加载哪些数据及如何加载。日志表的维护需要由业务系统程序用代码来完成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆文理学院,未经重庆文理学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010068598.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:混凝土PC构件布料设备
- 下一篇:一种插装阀盖板装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置