CN104376062B - 一种异构数据库平台数据的同步方法 - Google Patents

一种异构数据库平台数据的同步方法 Download PDF

Info

Publication number
CN104376062B
CN104376062B CN201410631561.1A CN201410631561A CN104376062B CN 104376062 B CN104376062 B CN 104376062B CN 201410631561 A CN201410631561 A CN 201410631561A CN 104376062 B CN104376062 B CN 104376062B
Authority
CN
China
Prior art keywords
data
database
external
postgresql
source
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410631561.1A
Other languages
English (en)
Other versions
CN104376062A (zh
Inventor
范志龙
吴松林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHINESE NONFERROUS METAL SURVEY AND DESIGN Institute OF CHANGSHA Co Ltd
Original Assignee
CHINESE NONFERROUS METAL SURVEY AND DESIGN Institute OF CHANGSHA Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHINESE NONFERROUS METAL SURVEY AND DESIGN Institute OF CHANGSHA Co Ltd filed Critical CHINESE NONFERROUS METAL SURVEY AND DESIGN Institute OF CHANGSHA Co Ltd
Priority to CN201410631561.1A priority Critical patent/CN104376062B/zh
Publication of CN104376062A publication Critical patent/CN104376062A/zh
Application granted granted Critical
Publication of CN104376062B publication Critical patent/CN104376062B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供了一种异构数据库平台数据的同步方法,包括以下步骤:在PostgreSQL数据库中分别安装与源数据库和目标数据库对应的第一外部数据交换模块和第二外部数据交换模块,并建立第一外部数据交换模块扩展及第一外部服务器、第二外部数据交换模块扩展及第二外部服务器;所述源数据库和所述目标数据库为异构数据库;创建分别与源数据库和目标数据库建立映射关系的第一外部数据表和第二外部数据表,再分别建立捕捉数据变更的触发器。本申请创新性的将PostgreSQL数据库和相应的数据交换模块作为中介,来实现外部多源异构数据库之间的数据同步/复制。

Description

一种异构数据库平台数据的同步方法
技术领域
本申请涉及数据库数据同步领域,特别地,涉及一种异构数据库平台数据的同步方法。
背景技术
现有技术中,国外大多数数据库厂商提供了数据复制的功能,而且一般都支持异构数据库间的复制,如MS SQL Server、Oracle、Sybase等,也开发了能作为数据导入导出工具的产品,如SQLServer2000的DTS。有一些软件商开发的复制中间件应用于数据复制领域,如比较知名的有PeerDirect公司的PDRE、SynchroLogic公司的SyncKit、Syware公司的DataSync等。这些方法的优点在于它们独立于数据库系统本身,能够解决各种异构问题;能够适应主从复制和同步复制;能够提供丰富的API,可扩展性好。
但现有产品仍然存在一些缺陷:
1、异构数据库数据的同步/复制大都依赖于数据库管理系统的支持,普遍存在着符合某种体系结构或标准的前提,因此兼容性欠缺,故应用范围受到一定的限制;复制中间件只针对一部分应用领域或者只针对某些特定的异构平台,并不能广泛应用。
2、数据库厂商提供的异构数据库间的复制对异构的支持程度比较有限:
例如:MSSQLServer的复制方案对网络要求高,如果因网络故障或其他原因找不到目标数据库则复制功能会直接down掉,需要复制的表在使用过程中不能经常变动表结构;Oracle的复制方案配置和管理比较复杂,需要有专业的技术人员处理;Sybase的复制方案数据和网络的流量大,且配置困难;DB2复制方案CCD表要占用较多的系统资源,如存储空间和进程等,需要安装各种数据库的客户端,通过客户端连接到其他类型的数据库。
3、数据库数据同步/复制的方法存在针对性较强,缺乏普遍的适用性,难以进行二次开发以及不能进行持续的数据集成的问题。
发明内容
本申请目的在于提供一种异构数据库平台数据的同步方法,以解决现有技术的多源、分布式、异构数据库平台数据同步/复制的局限性和兼容性不足的技术问题。
为实现上述目的,本申请提供了一种异构数据库平台数据的同步方法,包括以下步骤:
A、在PostgreSQL数据库中分别安装与源数据库和目标数据库对应的的第一外部数据交换模块和第二外部数据交换模块,并建立第一外部数据交换模块扩展及第一外部服务器、第二外部数据交换模块扩展及第二外部服务器;
所述源数据库和所述目标数据库为异构数据库;外部数据交换模块包括预定义的数据类型映射文件;
B、基于第一外部服务器和第二外部服务器,创建分别与源数据库和目标数据库建立映射关系的第一外部数据表和第二外部数据表;
C、基于第一外部数据表和/或第二外部数据表,分别建立捕捉数据变更的触发器。
优选的,在所述源数据库和所述目标数据库需要更新的数据表上,建立捕捉数据变更的触发器。
优选的,步骤B中建立映射关系为:
创建PostgreSQL数据库角色与所述源数据库、目标数据库角色的映射。
优选的,所述映射关系以文件形式保存。
优选的,所述源数据库和所述目标数据库为MSSQL Server、Oracle、DB2、Sybase、MySQL、PostgreSQL中的任意一种。
优选的,所述源数据库和所述目标数据库的基础操作系统为Unix、Windows NT、Linux中的任意一种。
本申请具有以下有益效果:
本申请创新性的采用开源数据库PostgreSQL为中间数据库,综合利用开源DBMS及其外部数据交换模块实现多源、分布式、异构数据库平台业务数据的同步/复制,包括PostgreSQL数据库相应外部数据交换模块的安装、外部数据交换模块的建立、映射用户的创建、外部数据表的创建;能够实现多种异构数据库平台数据的同步,包括但不限于:Oracle、MSSQLServer、MySQL、PostgreSQL。
本申请的同步方法由于采用的是开源数据库PostgreSQL作为中间数据库,各异构源数据库或目标数据库需同步/复制的表在PostgreSQL中分别对应不同的外部数据表,异构数据库之间数据的同步/复制是通过在PostgreSQL中映射的外部数据表来实现的,只要保证源数据库和目标数据库相对PostgreSQL数据库的正常连接和访问即可实现异构数据库数据的顺畅同步/复制。
并且,本申请综合利用开源DBMS及其外部数据交换模块实现异构数据库平台业务数据的同步/复制,将需要数据同步/复制的内容以外部数据表的形式在中介开源DBMS中实现,无需对生产DBMS和生产服务器进行特殊的操作,不会对源或目标数据库系统平台和操作系统平台产生较大的负载,不会对业务系统产生不良影响。
具体的优势有:
(1)扩展性
本申请中,异构数据库间的连接都是通过PostgreSQL的外部数据交换模块进行,所以在更换DBMS的情况下,换个相应的外部数据交换模块,修改些配置文件,对程序进行少量的修改便可以适用于新环境,故而扩展性较好。
(2)传输的数据量
该发明传输的捕获到的变化数据,相对于SQL Server和Sybase的传输事务日志的复制方案,传输量减小了。
本申请中数据传输主要体现在源数据库与PostgreSQL数据库及目标数据库与PostgreSQL数据库外部数据表的数据同步,同步的是SQL语句。而SQL Server和Sybase本质上同步的是事务日志,事务日志相对于SQL语句添加了很多其他信息,数据量大得多。
(3)传输稳定性
本申请使用PostgreSQL数据库作为中介,可以通过PostgreSQL控制触发器来控制每次处理的数据量,防止在大数据量传输的情况下出现程序消耗内存过大而出现“内存不足”的错误。因此即使在大数据量传输的情况下,也能稳定传输。
(4)提高系统可用性和可靠性
数据库同步复制是一种实时远程存取和实时更新数据的分发复制技术,最基本的功能是提高数据库工作的性能,通过将远程数据库中的数据复制到本地,使得应用能够就近访问数据,避免了远程读取数据,从而降低网络传输负载,提高效率。降低网络传输开销和缩短响应时间,在节点和通信发生故障时仍可保证系统依然正常运行,能够起到数据备份的作用。
(5)配置部署
配置简单方便,非常容易操作。
本申请的异构数据库平台数据同步/复制的方法可以集成多源、分布式、异构的各个信息系统中的数据,消除“信息孤岛”,保证信息系统之间信息交换的畅通,保障数据传输中的一致性和安全性,真正实现数据共享,在数据仓库、应用集成,到移动办公、电子商务,从高可用性系统、负载均衡,到嵌入式系统、互联网设备等多个领域都可以发挥重要作用。
除了上面所描述的目的、特征和优点之外,本申请还有其它的目的、特征和优点。下面将参照图,对本申请作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请优选实施例的结构示意图;
图2是本申请优选实施例的流程示意图;
图3是本申请优选实施例的数据同步流程示意图;
其中,1、源数据库,2、PostgreSQL数据库,3、目标数据库,4、第一外部服务器,5、第二外部服务器。
具体实施方式
以下结合附图对本申请的实施例进行详细说明,但是本申请可以根据权利要求限定和覆盖的多种不同方式实施。
参见图1、图2和图3,本申请提供了一种异构数据库平台数据的同步方法,包括以下步骤:
A、在PostgreSQL数据库中分别安装到源数据库和目标数据库的外部数据交换模块,并建立源数据库的外部数据交换模块扩展及外部服务器、目标数据库的外部数据交换模块扩展及外部服务器,以支持外部数据表的建立功能。
需要指出的是,源数据库和目标数据库是异构数据库平台的多源数据库。异构数据库是指数据定义模型、表示方法、管理系统和基础操作系统都存在差异的数据库,例如MSSQLServer、Oracle、DB2、Sybase、MySQL、PostgreSQL中的任意一种相对于其他数据库均为异构数据库。
外部数据交换模块一般是通过源码安装,如果源数据库是Oracle,目标数据库是MySQL就需要在PostgreSQL中安装Oracle外部数据交换模块和MySQL外部数据交换模块,以实现由Oracle到MySQL数据同步/复制。
现有技术已经存在Oracle和MySQL的外部数据模块,但还没有专门针对DB2、Sysbase、MSSQLServer等常用数据库的外部数据模块。
源码安装的过程采用的是现有技术,即在linux系统中进入源码包的目录,执行以下命令即可:
./configure[–prefix=/usr/local/pgsql/share/extension/](中括号内容可选)
make
make install
针对本申请特定技术而开发的创新点在于开发了一种基于PostgreSQL数据库的异构数据库平台数据同步/复制的系统,该系统不仅综合了所有现有技术支持的多源数据库外部数据交换模块,而且开发了专门针对MSSQLServer、DB2数据库的外部数据交换模块,以实现其他多源数据库与MSSQLServer、DB2数据库的同步/复制。现有技术只是实现了部分外部数据库与PostgreSQL数据库的映射外部数据表数据的同步/复制,本申请在此基础上更进一步的实现了多个外部数据库与PostgreSQL数据库的同步/复制,并创新性的将PostgreSQL数据库和相应的数据交换模块作为中介(中转),来实现外部多源异构数据库之间的数据同步/复制。
本申请中MSSQLServer数据库的外部数据交换模块采用C语言基于PostgreSQL数据库内核开发实现,主要包含如下大类模块:
MSSQLServer_fdw_validator:验证使用MSSQLServer外部数据交换的通用选项,包括外部服务器、用户映射和外部数据表,如果其选项或值被验证是无效的将会给予报错或提示选项缺失。
MSSQLServerPlanForeignScan:进行外部扫描,获取MSSQLServer外部数据交换的状态。MSSQLServer外部数据交换计划及其状态是在外部数据交换私有域中创建和序列化保存的。
MSSQLServerBeginForeignScan:用于恢复序列化的连接信息,以支持远程查询;从执行计划的外部数据交换私有域中获取MSSQLServer数据表的描述与参数列表;也可用于重新建立到MSSQLServer数据库的连接。
MSSQLServerIterateForeignSacn:迭代外部扫描模块,在第一次调用时,从MSSQLServer中获取实际参数并执行远程查询,获取第一行数据,之后进行迭代获取更多的数据直到没有数据。
MSSQLServerEndForeignScan:停止当前MSSQLServer语句的执行。
MSSQLServerReScanForeignSacn:如果已经存在MSSQLServer语句,则停止MSSQLServer语句的执行,并触发下一个MSSQLServerIterateForeignSacn调用,执行重新扫描。
MSSQLServerGetForeignRelSize:获取当前外部扫描的MSSQLServer外部数据交换状态;构建远程SQL查询语句,并预估可能产生影响的数据量及其平均成本和代价。
本申请还创新性的研究并实现了多源异构数据库各种数据类型映射关系,并将该映射关系以文件形式保存在系统后台方便异构数据库平台数据映射时调用,以保证异构数据库数据同步的顺利执行。
本申请映射关系实现的难点在于需要对所涉及的所有源或目标数据库系统的数据类型都有深入的理解,能够在PostgreSQL中找到相同的数据类型或能够代替原数据类型的数据类型,并将这些映射以文件形式保存在系统后台,在PostgreSQL创建外部数据表时调用该映射文件,自动生成创建外部数据表的DDL语句。
在本申请的实施例中,用到了Oracle到PostgreSQL的数据类型映射文件、MySQL到PostgreSQL的数据类型映射文件。其中Oracle到PostgreSQL的数据类型映射文件内容可以如下表:
外部数据交换模块扩展指的就是外部数据交换模块在PostgreSQL中的实现,外部数据交换模块安装到PostgreSQL中并创建支持模块功能的后就称为PostgreSQL的“外部数据交换模块扩展(extension)”。。具体的包括现有的Oracle外部数据交换模块扩展、MySQL外部数据交换模块扩展,还有本申请开发实现的MSSQLServer外部数据交换模块扩展和DB2外部数据交换模块扩展。这些扩展的功能就是用来实现与原数据库和目标数据的连接,并同步各自在PostgreSQL中映射外部数据表的数据。
B、配置外部数据库的连接,创建需要同步/复制的映射外部数据表,分别实现源数据库与PostgreSQL数据库的数据同步/复制和目标数据库与PostgreSQL数据库的数据同步/复制。
在创建映射外部数据表时,需要参考存储在后台的异构数据库平台数据映射关系文件,以保证不同数据库平台数据关系和属性的正确转换。
本申请所提及的“外部数据表”、“外部服务器”都是专用名词,外部服务器是PostgreSQL的内部概念,并不是真正的服务器,外部服务器可以理解为在PostgreSQL中创建的外部数据扩展的驱动,用于支出外部数据库的连接;外部数据表指的就是在PostgreSQL中基于外部服务器创建的数据表,它与普通的数据表的不同之处在于,在创建外部数据表时必须指定需要连接外部服务器,并且指出需要映射到源数据库或目标数据库的模式/数据表,这样,当源数据库或目标数据库被映射的数据表发生变化时,在PostgreSQL中的外部数据表也会实时同步更新。
C、在PostgreSQL的源数据库映射外部数据表上面建立捕捉数据变更的触发器,当源数据库映射外部数据表数据发生变化时,触发该触发器使得其向目标数据库映射外部数据表写入相同的变化内容,实现了目标数据库数据与原数据库数据的同步/复制。
同样,也可以在目标数据库上创建捕捉数据变更的触发器,来实现源数据库数据与目标数据库的同步,从而实现双向同步/复制。
对于异构数据库同步所不可缺少的环节,其过程大致为首先在源数据库上定义复制对象,从而获得复制对象的内容,再将数据进行相应的语法或语义上的转换,最后将这些内容从源数据库传送到目标数据库;可以简单归纳为几个环节:捕捉变更数据、数据转换和数据分发。
一、捕捉变更数据:
捕捉变更数据是为了获取自上次同步结束后需要同步的数据库中的变更数据。变更数据是数据转换和数据分发环节的数据来源。目前常用的变更数据捕捉的方法主要有基于日志法,基于触发器法,基于API法,影子表法和控制变化法等几种,本申请的捕捉变更数据是通过在异构数据库同步/复制系统中设置源数据库的数据变更检测触发器来实现的。
二、数据转换:
随着对异构环境中信息的交流和共享的需求的增多,对异构环境的数据集成处理的方案在逐步加强,数据转换一般都是通过直接建立一种源数据库的数据类型和目标数据库的数据类型的映射关系,然后通过这种映射关系进行转换,随着一些标准化语言的出现,数据转换过程可以采用一种中间数据格式,由源数据库到中间数据格式以及中间数据格式到目标数据库分别做映射的方式从而完成从源数据库到目标数据库类型的转换。
目前的异构数据转换方式主要有:(1)利用数据库厂商的专业工具进行转换;(2)利用前台开发工具进行转换;(3)使用中介数据格式做转换。中介数据格式一般采用标准的预定义的文本格式或基于XML的数据格式,例如关系数据库的数据到XML的转换是预先定义一个XML文档的结构,然后将数据库中的数据按照数据与XML结构的映射关系,将从数据源中获取的数据填充到XML文档的相应标记中去。
本申请涉及的数据转换主要体现在源数据库与PostgreSQL数据库的数据转换和目标数据库与PostgreSQL数据库的转换。本申请将这些多源异构数据库与PostgreSQL数据库的数据转换/映射关系以文件的形式保存在系统后台,在PostgreSQL中创建到源或目标数据库的映射外部数据表时,系统自动到后台查找对应的映射关系文件,生成与源或目标数据库匹配的外部数据表数据定义语言,将该语言在PostgreSQL中执行即可创建到源或目标数据库的映射外部数据表。
在PostgreSQL中建立一个与源数据库数据表映射的外部数据表和与目标数据库数据表映射的外部数据表,这两个外部数据表在PostgreSQL中相当于PostgreSQL数据库自身的数据表,源数据库与目标数据库数据表的同步/复制转化成为PostgreSQL内部两个映射外部数据表的同步/复制,在PostgreSQL内部只需建立这两个外部数据表的基于触发器的同步/复制机制即可实现。
三、数据分发
数据分发的作用是将数据从源节点传输到目的节点,实现数据库间的通信。按照由不同的节点承担分发任务可以将分发过程归纳得出三种分发模型:“推式(push)”模型、“拉式(pull)”模型和“推拉结合”模型。推式模型是源服务器主动把捕获信息发送给目标服务器,这种方式发送数据方不依赖于接收数据方,可以实现实时同步传送;拉式模型是数据接收方向数据发送方发出请求获取数据,方便调度,也较能保证数据的安全性;推拉模型即推式模型和拉式模型的结合体,推拉模型是由代理服务器负责数据分发,对源服务器是拉式模型方式,而对目标服务器是推式模型方式。
在本申请中,开源数据库PostgreSQL及其外部数据交换模块采用的就是第三种“推拉结合”模型实现数据在多源、分布式、异构数据库平台进行分发的。对应于本申请来说,“推拉模型”体现的是源数据库和目标数据库可以实现双向的同步/复制,因为PostgreSQL中映射并保存了源数据库和目标数据库的数据表,源数据库和目标数据库的同步/复制是通过PostgreSQL中外部数据表来实现的,对于源数据库来说,PostgreSQL中源数据库的映射外部数据表的作用是“拉”,而目标数据库中的映射外部数据表的作用是“推”,然而这里的“推/拉”是可以相互转换的,即可以实现源数据库和目标数据库的双向同步/复制。
参见图2和图3,具体实施例如下,源数据库1为Oracle-1,目标数据库3为MySQL-1。可以理解,源数据库1可以是DB2、Sysbase、MSSQLServer中的任意一种,目标数据库3也可以是DB2、Sysbase、MSSQLServer中的任意一种。
①创建外部数据交换模块:
在PostgreSQL数据库2中安装Oracle-1外部数据交换模块和MySQL-1外部数据交换模块。
②创建外部数据交换模块扩展:
在PostgreSQL数据库中创建Oracle-1外部数据交换模块扩展和MySQL-1外部数据交换模块扩展。
③创建外部服务器:
利用第②步安装的外部数据交换模块扩展新建一个到Oracle-1的第一外部服务器4和一个到MySQL-1的第二外部服务器5,实现源和目标数据库之间的连接。
④创建映射用户:
创建PostgreSQL数据库角色与Oracle-1角色、MySQL-1角色的映射,实现在PostgreSQL数据库角色在PostgreSQL数据中操作源数据库和目标数据库的外部数据表,最终实现数据的同步/复制。
⑤创建外部数据表:
创建需要实现数据同步的表,包括Oracle-1外部数据表(表2)和MySQL-1外部数据表(表3),之后操作外部数据表就能够像操作本地数据库的数据表一样方便简单。
⑥建立触发器,开始数据同步/复制:
在PostgreSQL数据库2中的表2上面建立捕捉数据变更的触发器,当表2数据发生变化时,触发该触发器使得其向表3写入相同的变化内容。
同样,也可以在表3上面建立捕捉数据变更的触发器,当表3数据发生变化时,触发该触发器使得其向表2写入相同的变化内容。
或者,在Oracle-1的表1上和/或MySQL-1的需要更新的数据表(表1和/或表4)上,建立捕捉数据变更的触发器;当表1或表4数据发生变化时,触发该触发器使得其向表2或表3写入相同的变化内容。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (5)

1.一种异构数据库平台数据的同步方法,其特征在于,包括以下步骤:
A、在PostgreSQL数据库中分别安装与源数据库和目标数据库对应的的第一外部数据交换模块和第二外部数据交换模块,并建立第一外部数据交换模块扩展及第一外部服务器、第二外部数据交换模块扩展及第二外部服务器;
所述源数据库和所述目标数据库为异构数据库;外部数据交换模块包括预定义的数据类型映射文件;
B、基于第一外部服务器和第二外部服务器,创建分别与源数据库和目标数据库建立映射关系的第一外部数据表和第二外部数据表;Oracle到PostgreSQL的数据类型映射文件为:Oracle中的CHAR、NCHAR、CLOB角色与PostgreSQL中的char角色形成映射关系;所述映射关系以文件形式保存;
C、基于第一外部数据表和/或第二外部数据表,分别建立捕捉数据变更的触发器。
2.根据权利要求1所述的一种异构数据库平台数据的同步方法,其特征在于,在所述源数据库和所述目标数据库需要更新的数据表上,建立捕捉数据变更的触发器。
3.根据权利要求1所述的一种异构数据库平台数据的同步方法,其特征在于,步骤B中建立映射关系为:
创建PostgreSQL数据库角色与所述源数据库、目标数据库角色的映射。
4.根据权利要求1所述的一种异构数据库平台数据的同步方法,其特征在于,所述源数据库和所述目标数据库为MSSQL Server、Oracle、DB2、Sybase、MySQL、PostgreSQL中的任意一种。
5.根据权利要求1所述的一种异构数据库平台数据的同步方法,其特征在于,所述源数据库和所述目标数据库的基础操作系统为Unix、Windows NT、Linux中的任意一种。
CN201410631561.1A 2014-11-11 2014-11-11 一种异构数据库平台数据的同步方法 Active CN104376062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410631561.1A CN104376062B (zh) 2014-11-11 2014-11-11 一种异构数据库平台数据的同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410631561.1A CN104376062B (zh) 2014-11-11 2014-11-11 一种异构数据库平台数据的同步方法

Publications (2)

Publication Number Publication Date
CN104376062A CN104376062A (zh) 2015-02-25
CN104376062B true CN104376062B (zh) 2018-01-26

Family

ID=52554969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410631561.1A Active CN104376062B (zh) 2014-11-11 2014-11-11 一种异构数据库平台数据的同步方法

Country Status (1)

Country Link
CN (1) CN104376062B (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699799A (zh) * 2015-03-19 2015-06-10 神华集团有限责任公司 基于跨系统数据传输方法
CN106156227A (zh) * 2015-04-26 2016-11-23 阿里巴巴集团控股有限公司 一种数据传输方法及装置
CN104869172B (zh) * 2015-06-01 2018-07-31 明算科技(北京)股份有限公司 异构系统下多应用的数据交互方法和数据交互系统
CN105631053B (zh) * 2016-03-10 2022-04-15 国家电网公司 用于数据库的数据集成分发方法和数据集成分发装置
US9990260B2 (en) 2016-04-29 2018-06-05 Netapp Inc. Cross-platform replication
CN106095944A (zh) * 2016-06-15 2016-11-09 深圳海带宝网络科技股份有限公司 一种跨境电商全球数据同步系统
CN106484785B (zh) * 2016-09-19 2019-07-26 浪潮通用软件有限公司 一种高效的自动匹配数据字段映射的方法
CN106383901B (zh) * 2016-09-29 2019-05-14 航天科工智慧产业发展有限公司 一种多数据源之间单向数据同步方法
CN106897373B (zh) * 2017-01-19 2020-01-21 浙江大学 一种基于PostgreSQL和众包的不完整数据查询处理方法
CN107092529B (zh) * 2017-02-10 2021-01-01 北京星选科技有限公司 Olap服务方法、装置及系统
CN107203642A (zh) * 2017-06-19 2017-09-26 山东浪潮通软信息科技有限公司 一种数据同步方法和装置
CN107506261B (zh) * 2017-08-01 2020-05-15 北京丁牛科技有限公司 适应cpu、gpu异构集群的级联容错处理方法
CN107729366B (zh) * 2017-09-08 2021-01-05 广东省建设信息中心 一种普适多源异构大规模数据同步系统
CN110309191B (zh) * 2018-04-08 2023-07-04 腾讯科技(深圳)有限公司 存储业务数据的方法、装置和系统
CN108664659A (zh) * 2018-05-21 2018-10-16 四川中电启明星信息技术有限公司 一种分布式异构数据库的数据同步方法及装置
CN110597891B (zh) * 2018-06-12 2022-06-21 武汉斗鱼网络科技有限公司 MySQL聚合为PostgreSQL数据库的设备、系统、方法、存储介质
CN109558448B (zh) * 2018-10-10 2021-04-06 北京海数宝科技有限公司 数据处理方法、装置、计算机设备和存储介质
CN109508346B (zh) * 2018-10-19 2021-02-02 武汉达梦数据库股份有限公司 一种ddl操作的级联同步控制方法及系统
CN111581179A (zh) * 2019-02-19 2020-08-25 上海云桓信息科技有限公司 一种Oracle到MySQL的数据迁移方法及工具
CN110175179B (zh) * 2019-04-15 2021-09-10 浙江大华技术股份有限公司 数据传输方法及系统、服务节点、存储装置
CN110096541B (zh) * 2019-04-28 2021-06-15 新华三大数据技术有限公司 一种数据库间的数据交换方法及装置
CN110334141B (zh) * 2019-05-30 2023-11-21 平安科技(深圳)有限公司 数据转换的方法、装置、计算机设备和存储介质
CN112749157A (zh) * 2019-10-30 2021-05-04 北京国双科技有限公司 数据表的处理方法、装置、存储介质和设备
CN112988860B (zh) * 2019-12-18 2023-09-26 菜鸟智能物流控股有限公司 数据加速处理方法、装置及电子设备
CN110955673A (zh) * 2020-02-04 2020-04-03 医渡云(北京)技术有限公司 数据去标识化方法、装置、设备及存储介质
CN111666338B (zh) * 2020-05-26 2023-08-15 中国工商银行股份有限公司 数据复制方法、控制节点及电子设备
CN113051347B (zh) * 2021-03-25 2024-03-29 未鲲(上海)科技服务有限公司 异构数据库之间数据同步方法、系统、设备及存储介质
CN113282605A (zh) * 2021-04-14 2021-08-20 上海瀚之友信息技术服务有限公司 一种异构数据库的实时同步系统及方法
CN113535478B (zh) * 2021-07-15 2024-01-02 天翼云科技有限公司 数据备份方法及装置、存储介质及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521389A (zh) * 2011-12-23 2012-06-27 天津神舟通用数据技术有限公司 一种混合使用固态硬盘和传统硬盘的postgresql数据库集群系统及其优化方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825713B2 (en) * 2007-09-12 2014-09-02 Red Hat, Inc. BPM system portable across databases

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521389A (zh) * 2011-12-23 2012-06-27 天津神舟通用数据技术有限公司 一种混合使用固态硬盘和传统硬盘的postgresql数据库集群系统及其优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PostgreSQL的外部表使用;kenyon_君羊;《中国开源社区>博客专区>kenyon_君羊的博客 https://my.oschina.net/Kenyon/blog/165432》;20130930;第1-6页 *

Also Published As

Publication number Publication date
CN104376062A (zh) 2015-02-25

Similar Documents

Publication Publication Date Title
CN104376062B (zh) 一种异构数据库平台数据的同步方法
CN108052681B (zh) 一种关系型数据库间结构化数据的同步方法及系统
CN106685691B (zh) 物联网系统中终端设备的高效更新配置方法
CN104104738B (zh) 一种基于ftp的数据交换系统
CN102693324B (zh) 一种分布式数据库同步系统、同步方法和节点管理方法
CN102708213B (zh) 一种在pdm系统与erp系统之间实现bom信息传输的方法
CN103605698A (zh) 一种用于分布异构数据资源整合的云数据库系统
CN102841927A (zh) 多数据库之间数据交互的方法装置及分布式数据交互系统
CN102929911A (zh) 变电站与调度主站一体化建模方法
CN102750358A (zh) 一种系统数据模型到cim模型的映射方法及系统
CN104123392A (zh) 一种关系型数据库迁移到HBase数据库的工具和方法
CN103248726A (zh) 一种多根对等的物联网标识解析方法
CN109739867A (zh) 一种工业元数据管理方法及系统
CN103220285A (zh) 泛在业务环境下基于RESTful接口的接入系统
CN105791401B (zh) 客户端与服务端在网与离网状态下数据交互方法、系统
CN101945126A (zh) 森林资源异构数据分布式管理系统
CN103019803B (zh) 一种用于遥感卫星地面数据处理网格节点的虚拟环境系统
CN103761256B (zh) 一种远程目录分支点维护系统及其方法
CN109241054A (zh) 一种多模型数据库系统、实现方法以及服务器
CN104050276A (zh) 一种分布式数据库的缓存处理方法及系统
CN101834765A (zh) 一种远程文件传输的系统及方法
CN107016031A (zh) 一种数据中心中间件系统
CN103078920A (zh) 一种基于iec61968企业服务总线的消息在线校验系统
CN102137161B (zh) 基于光纤通道的文件级数据共享存储系统
CN104392123A (zh) 一种cda引擎系统及实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant