一次数据库表同步经历

事件背景:同步组织人员数据

任务描述:

业务系统中的 单位、部门、人员、身份 来源于统一认证组织机构人员管控平台

原来方案:

自定义一个日期 startTime ,从 startTime 到当前的这段时间内的所有数据变动(增删改),
打成压缩包发送过来、解压、处理数据、删除压缩包

  • 优点:统一认证组织机构人员管控平台上的数据保证正确性,其它系统从日志来,所有的操作都有记录

  • 缺点:

    • startTime到当前时间如果过长会造成数据量很大,同步失败
    • 即使时间间隔短,但如果在该时间段内的数据量很大,同步也会失败
    • 后台的定时任务来拉取,例如10分钟拉取一次,当从统一认证组织机构人员管理平台接入的业务系统很多时,服务器压力很大
    • 数据丢失后,想要恢复一般在晚上,增加了运维成本

推荐方案:

统一认证组织机构人员管理平台的数据库与业务系统的数据库在同一个数据库集群中,所以直接从认证组织机构人员库来拉取数据
在业务系统中建立视图