异构系统数据库级人员组织结构同步

异构系统数据库级人员组织结构同步,第1张

概述

HR提供组织结构人员主数据,OA与HR组织结构人员主数据保持一致, HR 为Oracle,OA SQL SERVER,实现方案:

部门表 DZ_SYS_DeptIntegrate

人员表 DZ_SYS_UserIntegrate

注意:以上两个中间表数据,只允许插入不允许删除或编辑;数据处理使用“Oper”字段标识;

H R 组织同步触发器:

人员同步触发器:

HR将数据推送到中间表后,采用数据库触发器对中间表数据进行处理,分发到OA相应用户、部门及关系表中。

OA端数据取数 *** 作步骤就不再叙述。

4.结束语:

异构系统之间的互联最好是通过接口实现,例如webapi webservice ,条件好的,可以通过MDM,不推荐使用数据库进行数据互联,出了问题不好排查。

数据库同步有很多方法,这里不讨论了,我这里只针对异构数据库.那什么是异构数据库呢,我们先看下定义(引用)

异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面:

计算机体系结构的异构

各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中。

基础 *** 作系统的异构

各个数据库系统的基础 *** 作系统可以是Unix、Windows NT、 Linux等。

DMBS本身的异构

可以是同为关系型数据库系统的Oracle、 SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库共同组成一个异构数据库系统。

在转换的过程中,有时要想实现严格的等价转换是比较困难的。首先要确定两种模型中所存在的各种语法和语义上的冲突,这些冲突可能包括:

命名冲突:即源模型中的标识符可能是目的模型中的保留字,这时就需要重新命名。

格式冲突:同一种数据类型可能有不同的表示方法和语义差异,这时需要定义两种模型之间的变换函数。

结构冲突:如果两种数据库系统之间的数据定义模型不同,如分别为关系模型和层次模型,那么需要重新定义实体属性和联系,以防止属性或联系信息的丢失。

异构数据库同步的解决方法主要有以下几种:

1.建立触发器记录表的变化情况,在源数据库建立增、删、改触发器,然后根据变化登记表进行处理.优点是充分结合业务进行处理,保持数据的一致性、完整性,实时性较强,对多个数据源合并有非常大的优势,我们现在也是采用这种方式来同步的。

2.日志:通过分析源数据库日志,来获得源数据库中的变化的数据。ORCLE 的 异步 CDC (Asynchronized CDC) 就是使用这种方式,但缺点是有一定延时.

表同步偏重于数据的同步,包括历史数据及实时数据变化同步。用于业务数据共享或集成需求,支持异构数据库同步(如SQL Server同步到Oracle、Oracle同步到DB2)

表同步软件产品工具 如OGG、BeeDI                            

库同步偏重于数据库整体结构内容复制,包括DDL及DML *** 作。一般用于灾备或读写分离环境,仅用于同构数据库 (如Oracle同步到Oracle、DB2同步到DB2)

库同步工具软件产品工具 如ODG、Beedup


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6688192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存