ETL工具 与SQL server对比(即日志解析与事务复制)

一、 工作原理

1.   灵蜂ETL工具  BeeDI日志解析同步的工作机制

      下图显示了日志解析同步的组件关系。



日志解析同步由日志解析模块、过滤转换模块和数据加载模块组成。日志解析模块从指定的解析点(源库日志中事务发生时间)开始,按照提交顺序依次解析日志文件中各个事务包含的DML记录,同时向前移动解析点,并将记录封装为灵蜂ETL工具BeeDI内部格式数据,过滤转换模块根据预设的规则对解析后的数据进行过滤,排除不需同步的数据,对数据进行转换,满足标准化需要。数据加载模块将最终需要同步的数据翻译为目标数据库可接受的DML,按照预设的事务缓冲区大小执行提交DML,同时通知日志解析模块记录解析时间点,用于下次日志解析的起点。

每个日志解析模块可以对应多个过滤转换模块,每个过滤转换模块可以对应多个数据加载模块,由此单个增量数据流可以根据过滤条件向多个目标同步。

对于双向数据同步,只需反向设置从目标库解析日志,并将解析后的数据加载到源库。解析模块支持忽略某一指定用户产生的事务,由此可以避免双向同步时增量数据的反复同步。

1.      SQL Server事务复制的工作机制

事务复制由 SQL Server 快照代理、日志读取器代理和分发代理实现。 快照代理准备快照文件(其中包含了已发布表和数据库对象的架构和数据),然后将这些文件存储在快照文件夹中,并在分发服务器中的分发数据库中记录同步作业。

日志读取器代理监视为事务复制配置的每个数据库的事务日志,并将标记为要复制的事务从事务日志复制到分发数据库中。分发代理将快照文件夹中的初始快照文件和分发数据库表中的事务复制到订阅服务器中。

下图显示了事务复制的主要组件。


新的事务复制订阅服务器中必须包含一些表,这些表需要与发布服务器中的表具有相同的架构和数据,这样才能从发布服务器中接收增量更改。

二、 技术参数对比

序号技术
参数
SQL Server事务复制灵蜂 ETL工具 BeeDI日志解析同步
1复制
表结构要求
结构一致且包含主键支持同构或异构表同步,同步表不要求必须包含主键
2

复制数据的清洗转换

创建发布模块时,通过筛选器过滤复制数据,不支持对数据进行转换过滤转换模块可对解析数据进行过滤,支持多种转换操作,如类型转换、字段运算、参照转换、字符串处理、字符集转换、空值处理、日期转换、聚集运算、既定取值、字段切分、字段合并
3双向
复制
需要在订阅服务器创建触发器直接解析目标库日志,将增量变化同步到源库
4

复制过程表结构改变

重新设置发布订阅,初始化快照数据配置源表和目标表数据映射关系,从断点处继续同步
5复制点
移动
不支持任意指定从某一时间点开始挖掘增量数据
6事务审计不支持记录每一事务的执行用户、执行时间、insert、delete和update记录数
7部署方式需要主库开启发布模块,从库开启订阅模块集中部署,无需在主从库安装

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值