zoukankan      html  css  js  c++  java
  • 五种数据同步思路

    数据同步:当数据源发生改变时,其他相关数据也跟着发展变化。根据需求不同可采取以下方案。

    1.触发器
    在数据库建立增删改的触发器。触发器将变更放到一张临时表里。oracle同步cdc
    优点:实时同步
    缺点:影响到业务系统,因为需要在业务系统建立触发器

    2.日志
    通过分析源数据库日志,来获得源数据库中的变化的数据。oracle异步cdc
    优点:不影响业务系统
    缺点:有一定得延时,对于没有提供日志分析接口的数据源,开发的难度比较大

    3.时间戳
    在要同步的源表里有时间戳字段,每当数据发生变化,时间戳会记录发生变化的时间
    优点:基本不影响业务系统
    缺点:要求源表必须有时间戳这一列

    4.数据比较
    通过比较两边数据源数据,来完成数据同步。一般用于实时性要求不高的场景。
    优点:基本不影响业务系统
    缺点:效率低

    5. 全表拷贝
    定时清空目的数据源,将源数据源的数据全盘拷贝到目的数据源。一般用于数据量不大,实时性要求不高的场景。
    优点:基本不影响业务系统,开发、部署都很简单
    缺点:效率低

    总结:
    1. 上面五种数据同步方式,除了第五种都需要业务表有主键。
    2. 对于没有触发器和日志的一些小型数据源,如txt 文本,excel 文件,Aceess,则只能使用后三种方式。
    3. 对于大型数据源,一般优先选择日志方式,如 ORCALE Asynchronized CDC, 对于不能通过日志来实现的情况,可以考虑第1,3,4种方式。

  • 相关阅读:
    hadoop集群管理之 SecondaryNameNode和NameNode
    无法fsck问题解决
    处世
    [THUSC2016]成绩单
    Python安装官方whl包、tar.gz包、zip包
    poj1159 Palindrome 动态规划
    hoj1249 Optimal Array Multiplication Sequence 矩阵链乘
    hoj分类(转)
    hoj 2012 winter training Graph Day1 106 miles to Chicago图论最短路dijkstra算法
    poj1050 To the Max
  • 原文地址:https://www.cnblogs.com/syncnavigator/p/10193541.html
Copyright © 2011-2022 走看看