13、关系型数据库数据摄入:增量摄入、CDC及数据类型转换

关系型数据库数据摄入:增量摄入、CDC及数据类型转换

在数据处理和分析领域,将数据引入平台是至关重要的一步。本文将深入探讨关系型数据库(RDBMS)的数据摄入方法,包括增量摄入、变更数据捕获(CDC)以及数据类型转换等关键内容。

1. 增量摄入的挑战

增量摄入过程有助于解决全量表摄入带来的一些挑战,它只需引入新的和已更改的数据,避免了大规模数据集的传输。然而,基于SQL的增量摄入过程仍然存在一些根本问题:
- 丢失删除的行 :如果仅读取源表中当前存在的数据,会错过已删除的行。除非应用程序专门设计为不删除行,而是使用特殊列标记为已删除,否则只能通过比较先前快照并查找缺失的行来推断删除的行,这会增加处理层的额外开发工作。
- 状态变化捕获有限 :如果数据经常变化,即使是增量加载过程也会受到摄入之间状态变化捕获数量的限制。例如,每小时增量摄入一次数据,如果源表中的行在这一小时内多次更改,将无法获取所有更改历史,只能看到每次摄入开始时每行的状态。虽然可以更频繁地摄入数据,但在繁忙的系统中,由于每行每秒可能插入和更新数千次,仍然无法捕获每行的每一次更改。基于SQL的增量摄入的合理最大频率为每隔几分钟一次,因为每次摄入都必须对源数据库服务器执行查询,会引入额外的负载,对于繁忙的系统来说,这种额外的摄入负载通常是不可接受的。

2. 变更数据捕获(CDC)

为了解决上述挑战,我们可以考虑使用变更数据捕获(CDC)。每个生产RDBMS都会将行更改写入日志,不同的供应商对这些日志的命名不同,如重做日志、事务日志、二进制日志等。CDC作为一种摄入机制,涉及使用CDC应用程序解析这些日

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值