数据采集汇聚----全量和增量

  • 数据如果保留多份,就会存在一致性问题,就需要同步。数据同步一般有两种方式:全量和增量。数据如果要保留副本,要么同时写(就是多写),或者进行复制:异步写(即从主数据拷贝到副本);
  • 全量
    1.每天定时(避开业务高峰期)或者周期性全量把数据从一个地方拷贝到另外一个地方;
    2.可以采用直接全部覆盖(使用“新”数据覆盖“旧”数据);或者走更新逻辑(覆盖前判断下,如果新旧不一致,就更新);
    3.这里面有一个隐藏的问题:如果采用异步写,主数据物理删除了,怎么直接通过全量数据同步?这就需要借助一些中间操作日志文件,或者其他手段,把这些“看不到”的数据记录起来。
    4.存在问题
    (1)数据量太大
    5.优点
    (1)逻辑比较简单,不像增量那样要处理有可能非常复杂的增量逻辑;
    (2)一般不会造成数据的不一致情况;
    6.全量构建
    (1)每次更新时都需要更新整个数据集;
    (2)查询时不需要合并不同Segment;
    (3)不需要对后续的 Segment 合并;
    (4)适合小数据量或全表更新的Cube;
    7.数据备份
    备份慢 ,但是备份恢复快,要求的磁盘空间多;
  • 增量
    1.指抓取某个时刻(更新时间)或者检查点(checkpoint)以后的数据来同步,不是无规律的全量同步。这里引入一个关键性的前提:副本一端要记录或者知道(通过查询更新日志或者订阅更新)哪些更新了。
    2.增量的基础是全量,就是你要使用某种方式先把全量数据拷贝过来,然后再采用增量方式同步更新。
    3.采用更新时间戳、有的采用checkpoint等来标识和记录更新点。
    4.存在问题:
    (1)数据提供方,很难制作增量包,事无巨细都要记录,稍微记错就全完了;
    (2)数据接收方,理解并且实施增量包的逻辑比较复杂,很容易造成数据的不一致;
    (3)中间过程一旦出了问题,很难定位;
    5.优点
    (1)更新数据量较小,操作快;
    6.增量构建
    (1)只对需要更新的时间范围进行更新,计算量会较小;
    (2)查询时需要合并不同Segment的结果 ,查询性能会受影响;
    (3)累计一定量的Segment后需要进行合并;
    (4)适合大数据量的Cube;
    7.数据备份
    备份速度相对快,但是恢复速度慢,磁盘空间要求少;
  • 差异备份
    将新旧数据差异部分记录下来,这种备份方式备份速度、恢复速度、空间要求是一种折中的选择。
  • 增量抽取时判别出新增或者发生变化的数据,两种方法
  1. 触发器方法: 当需要抽取的表中发生新增、修改、删除时,触发触发器,触发器将数据插入临时表,之后抽取只抽取临时表,抽取时对临时表数据打标记或者删除。
  2. 时间戳方法:
    在源系统表中增加一个时间戳字段,在用户对这条记录进行增删改查时,更新时间戳,进行数据抽取时使用时间戳来判断这条记录是否要抽取。加时间戳优点为抽取相对简单,但是对源系统依赖较强。

参考:
1.https://blog.csdn.net/qq_2300688967/article/details/80341279?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161035440816780265439208%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161035440816780265439208&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-2-80341279.pc_search_result_cache&utm_term=%E5%85%A8%E9%87%8F%E5%A2%9E%E9%87%8F&spm=1018.2226.3001.4187
2.https://blog.csdn.net/h8b6Pk7M7r8/article/details/100718458?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161035440816780265439208%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161035440816780265439208&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-3-100718458.pc_search_result_cache&utm_term=%E5%85%A8%E9%87%8F%E5%A2%9E%E9%87%8F&spm=1018.2226.3001.4187
3.https://blog.csdn.net/weixin_43132433/article/details/82665231?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161035440816780265439208%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161035440816780265439208&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-10-82665231.pc_search_result_cache&utm_term=%E5%85%A8%E9%87%8F%E5%A2%9E%E9%87%8F&spm=1018.2226.3001.4187

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据采集平台通常会支持全量采集增量采集、更新采集等方式,下面是它们的详细描述: 1. 全量采集数据采集平台通过全量采集方式,可以采集整个数据源中的全部数据,不论是新增的还是已有的数据都会被采集到。全量采集方式适用于第一次采集数据或者数据源中的数据发生了较大的变化需要重新采集的情况。全量采集方式可以保证数据的完整性和准确性,但是也存在采集时间长、占用带宽及存储资源等问题。 2. 增量采集数据采集平台通过增量采集方式,可以采集数据源中新增或修改的数据,而不是采集整个数据源中的全部数据。增量采集方式相对于全量采集方式,能够更加高效地采集数据,减少了采集时间和占用带宽及存储资源等问题。但是增量采集方式需要考虑数据的实时性和准确性。 3. 更新采集数据采集平台通过更新采集方式,可以在增量采集的基础上,仅采集数据源中更新或修改的数据,而不采集新增的数据。更新采集方式可以避免重复采集数据,减少了采集时间和占用带宽及存储资源等问题。但是更新采集方式需要根据数据源的特点进行定制化开发,对于一些复杂的数据源,可能需要进行多次更新采集才能保证数据的完整性和准确性。 综上所述,数据采集平台支持全量采集增量采集、更新采集等方式,可以根据实际情况选择采用不同的方式来采集数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值