大数据之路之数据上云解决方案(增量)

上篇说到全量数据上云,这里继续讲增量

为什么要用到增量?因为小数据库还好,数据量大的,每一次都要全量既对存储压力巨大,也对上云效率产生弊端,每次都要上全量代价太大了,所以这时候为什么不考虑全量+增量=全量的模式呢,即如果某库数据是一天一调度,那就是昨天的全量+今天的增量=今天的全量,如此一来只需要第一次上一份全量,后续每次的调度只抽取增量即可

难点:

  1. 如何获取到云下数据库的增量数据
  2. 如何保证全量+增量的合并数据能和源数据保持一致性 
  3. 如何保存增量数据,如何上云这些增量数据
  4. 如何调度全量合并,如何设置合理分区

如何获取增量,即增量采集,我之前写过一篇增量采集的博客,传送门

  1. 对于大型数据库,数据变更频率快,表数量多,对数据传输要求有备份,安全,零差数据的采用基于数据库日志的方法
  2. 对于小型数据库,且未开归档,但数据变更频率快的采用基于全量对比的方法
  3. 对于含有标准时间戳字段,且应用环境适合,表数量较少的采用基于时间字段的方法
  4. 至于触发器,由于需要源端运维成本较大,且对源端存储有压力(既然都是对存储有压力为何不用OGG),故很少有客户选择这一种
     

一般来讲应用场景最多的就是第一种和第三种,这里我们采用基于数据库日志的方法,也就是OGG+DataX(数据采集工具), OGG是基于oracle日志,负责采集变化数据的一个数据库插件,大部分公司用它都是用它的灾备功能,而大数据应用里它还有一个更牛逼的作用:采集增量数据并生成数据文件,这个过程由OGG里的两个组件GordenGate 和 Adapter来完成

基于OGG的数据集成方案是把从Oracle采集数据的工作交给OGG来做。主要考虑到既要获得源系统精确的数据变化又要尽量不对源系统造

你可能感兴趣的:(大数据弄潮儿)