一种实现异构数据库数据同步的方法及系统的制作方法

文档序号:8457274阅读:330来源:国知局
一种实现异构数据库数据同步的方法及系统的制作方法
【技术领域】
[0001]本发明涉及异构数据库数据同步领域,更具体地,涉及一种实现异构数据库数据同步的方法,同时还提供使用所述方法的异构数据库数据同步系统。
【背景技术】
[0002]近年来,计算机系统的应用已经深入到各行各业,在互联网行业,企业同时存在多种计算机应用对内对外提供服务,而每个应用都有各自的数据存储方式,随着业务的发展,这些相对独立的系统间又必须进行一定的数据交互,因此我们需要一种能够兼容各种数据存储,并且高效进行数据同步与交换的技术和工具,以满足企业对内及对外业务的各方面数据需求。
[0003]例如,在企业级的网络环境中,异种数据库同时并存的现象越来越普遍地存在,t匕如,在市场部门采用微软的SQL Server数据库,在研发部门采用国产神通数据库,而企业的总服务器采用ORACLE数据库,这种异种数据库同时使用的情况在许多系统集成的方案与实施中屡见不鲜,于是在不同数据库之间的数据内容的同步变成一个普遍令人关心的问题。目前,各大主流数据库产品都提供了在各自数据库之间进行同步的功能。现有的同步功能-一般采用发布/订阅模型来实现,一般来说,发布/订阅模型包括下列对象:发布服务器、分发服务器、订阅服务器,体系结构如附图图1所示。
[0004]发布服务器:发布服务器是提供数据以便同步到其他服务器的服务器。
[0005]分发服务器:分发服务器是具体执行数据分发任务的服务器。
[0006]订阅服务器:订阅服务器是接收同步数据的服务器。
[0007]首先,在发布服务器进行发布配置,对同步的内容和执行同步的周期等进行设置;订阅服务器根据需要订阅配置好的发布;分发服务器会根据发布配置执行数据分发,将数据写入订阅服务器。在这样的实现模型下,数据被写入发布数据库后,分发数据库根据发布配置定期去检查数据变更,然后将这些数据变更提取出来写入订阅服务器。
[0008]但是,这种同步技术存在的主要问题是不能实现异构数据库间的数据同步,发布服务器和分发服务器的实现和数据库服务器紧密相关(因为要获取数据库服务器上的数据更改需要数据库本身的支持),各个数据库厂商只能开发出配合自己的数据库产品的发布服务器和分发服务器,目前最多只能做到订阅数据库可以是其他数据库,这主要是通过SQL标准来屏蔽不同数据库间的差异。
[0009]专利授权公告号为CN 102063502B的发明专利:实现异构数据库数据同步的方法,提供了一种实现异构数据库数据同步的方法,其中异种数据库包括数据库A和数据库B,数据库A是用户应用所使用的数据库,数据库访问接口使用JDBC接口,数据库B是进行数据同步的目的数据库,还包括符合SUN规范的JDBC驱动AB,所述驱动AB包括A的JDBC驱动包和B的JDBC驱动包;对驱动AB上的函数调用都被原样传递给数据库A的JDBC驱动,而对数据库有更改的函数调用,则通过SQL语法映射转换后,再传递给数据库B的JDBC驱动。其利用数据库访问的标准接口,比如ODBC,JDBC等或者其他数据库访问标准接口,只要数据库同步双方都支持即可,对它们进行封装,所有通过标准接口进行数据库访问的应用发给数据库的更新语句都可以被转发给另外的数据库,使用该方法,通过数据库访问标准接口,数据库产品间的差异被屏蔽了,而且,在应用发送语句给目标数据库的时候,该语句也同时发送给同步数据库,实时性好。
[0010]但是上述发明对实时性的支持不够好,JDBC驱动包设定的周期去检查发布数据库的更改,然后再写入,这一般会有几秒的延时,实时性能不够好。
[0011]目前,行业内数据同步交换的软件主要有IBM的Datastage、InformaticPowerCenter以及Oracle GoldenGate等。这些专业化的工具主要应用在ETL和数据复制方面,并不能满足互联网行业复杂的系统和异构数据库之间的数据交换同步需求。

【发明内容】

[0012]本发明提供一种实现异构数据库数据同步的方法,同时还提供使用该方法的异构数据库数据同步系统。
[0013]本发明提供一种实现异构数据库数据同步的方法,所述方法包括如下步骤:a)异构数据库数据同步的准备工作,对数据进行配置;b)数据同步的数据增量捕获;c)全量数据的同步;d)增量数据同步。
[0014]在上述任一方案中优选的是,所述对数据进行配置包括但不限于配置基本数据作业单元、配置数据作业流、配置数据作业流定时任务。
[0015]在上述任一方案中优选的是,所述配置基本数据作业单元包括如下步骤:选择操作类型;输入上述数据作业单元的操作类型对应的参数;保存相应的数据操作作业。
[0016]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型包括从ORACLE数据表到GP数据表的数据操作。
[0017]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE数据表到ORACLE数据表的数据操作。
[0018]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE数据表到MYSQL数据表的数据操作。
[0019]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括ORACLE SQL数据表的数据操作。
[0020]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到GP数据表的数据操作。
[0021]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到MYSQL数据表的数据操作。
[0022]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到ORACLE数据表的数据操作。
[0023]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到HAD00P数据表的数据操作。
[0024]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到ORACLE数据表的数据操作。
[0025]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到文本文件的数据操作。
[0026]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括GPSQL数据表的数据操作。
[0027]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GPSQL数据表到HADOOP数据表的数据操作。
[0028]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GPSQL数据表到ORACLE数据表的数据操作。
[0029]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GPSQL数据表到文本文件的数据操作。
[0030]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从HADOOP数据表到GP数据表的数据操作。
[0031]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从HADOOP数据表到ORACLE数据表的数据操作。
[0032]在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括HADOOP SHELL & PIG数据表的数据操作。
[0033]在上述任一方案中优选的是,所述操作类型对应的参数包括数据库相关参数和HADOOP相关
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1