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

  • 数据如果保留多份,就会存在一致性问题,就需要同步。数据同步一般有两种方式:全量和增量。数据如果要保留副本,要么同时写(就是多写),或者进行复制:异步写(即从主数据拷贝到副本);
  • 全量
    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

你可能感兴趣的:(大数据,数据库)