第290章 牛肉河粉(2 / 2)

离语 semaphore 1674 字 20天前

采用增量字段方式捕获变化数据的原理是Y在源系统业务表数据表中增</p>

加增量字段Y增量字段可以是时间字段Y同时也可以是自增长字段Y当</p>

源业务系统中数据新增或者被修改时Y增量字段就会产生变化Y时间戳</p>

字段就会被修改为相应的系统时间Y自增长字段就会增加</p>

每当ETL工具进行增量数据获取时Y只需比对最近一次数据抽取的增量</p>

字段值Y就能判断出来哪些是新增数据Y哪些是修改数据。</p>

这种数据抽取方式的优点是抽取性能比较高Y判断过程比较简单YETL</p>

系统设计清晰Y源数据抽取相对清楚简单Y可以实现数据的递增加载</p>

最大的局限性就是由于某些数据库在进行设计的时候Y未考虑到增量字</p>

段Y需要对业务系统进行改造Y基于数据库其他方面的原因Y还有可能</p>

出现漏数据的情况。</p>

3. 全量同步</p>

全量同步又叫 全表删除插入方式</p>

Y是指每次抽取前先删除目标表</p>

数据Y抽取时全新加载数据该方式实际上将增量抽取等同于全量</p>

抽取对于数据量不大Y全量抽取的时间代价小于执行增量抽取的</p>

算法和条件代价时Y可以采用该方式。</p>

这种方式的优点是对已有系统表结构不产生影响Y不需要修改业务</p>

操作程序Y所有抽取规则由ETL完成Y管理维护统一Y可以实现数</p>

据的递增加载Y没有风险</p>

缺点是ETL比对较复杂Y设计较为复杂Y速度较慢与触发器和时</p>

间戳方式中的主动通知不同Y全表比对方式是被动的进行全表数据</p>

的比对Y性能较差当表中没有主键或唯一列且含有重复记录时Y</p>

全表比对方式的准确性较差。</p>

日志比对的方式是通过获取数据库层面的日志来捕获到变化的数据Y</p>

不需要改变源业务系统数据库相关表结构Y数据同步的效率比较高Y</p>

同步的及时性也比较快Y最大的问题就是不同数据库的日志文件结</p>

构存在较大的差异性Y实施分析起来难度比较大Y同时Y需要具备</p>

访问源业务库日志表文件的权限Y存在一定的风险性Y所以这种方</p>

式有很大的局限性。</p>

日志比对方式中比较成熟的技术是CDC(Change Data Capture)技术Y</p>

作用同样是能够捕获到上一次抽取之后产生的相关变化数据Y当</p>

CDC对源业务表进行新增更新和删除等相关操作的时就可以捕获</p>

到相关变化的数据Y相对于增量字段方式YCDC方式能够较好地捕</p>

获到删除数据Y并写入相关数据库日志表Y然后再通过视图或者别</p>

的某种可操作的方式将捕获到的变化同步到数据仓库当中去。</p>

这种方式的优点是ETL同步效率较高Y不需要修改业务系统表结构Y</p>

可以实现数据的递增加载缺点是业务系统数据库版本与产品不统</p>

一Y难以统一实现Y实现过程相对复杂Y并且需深入研究方能实现</p>

这种方式也通过第三方工具实现Y但是Y一般都是商业软件Y费用</p>

较高。</p>

www.mbeoge.cc。m.mbeoge.cc</p>