CN104778175A - 一种实现异构数据库数据同步的方法及系统 - Google Patents
一种实现异构数据库数据同步的方法及系统 Download PDFInfo
- Publication number
- CN104778175A CN104778175A CN201410013022.1A CN201410013022A CN104778175A CN 104778175 A CN104778175 A CN 104778175A CN 201410013022 A CN201410013022 A CN 201410013022A CN 104778175 A CN104778175 A CN 104778175A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- synchronization
- module
- field
- 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.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种实现异构数据库数据同步的方法,同时还提供基于该方法的异构数据库数据同步系统。所述数据同步的方法包括如下步骤:a)异构数据库数据同步的准备工作,对数据进行配置;b)数据同步的数据增量捕获;c)全量数据的同步;d)增量数据同步。本发明所述的实现异构数据库数据同步的方法和系统能够兼容各种数据存储,并且高效地进行数据同步与交换的技术和工具,以满足企业对内及对外业务的各方面数据需求。
Description
技术领域
本发明涉及异构数据库数据同步领域,更具体地,涉及一种实现异构数据库数据同步的方法,同时还提供使用所述方法的异构数据库数据同步系统。
背景技术
近年来,计算机系统的应用已经深入到各行各业,在互联网行业,企业同时存在多种计算机应用对内对外提供服务,而每个应用都有各自的数据存储方式,随着业务的发展,这些相对独立的系统间又必须进行一定的数据交互,因此我们需要一种能够兼容各种数据存储,并且高效进行数据同步与交换的技术和工具,以满足企业对内及对外业务的各方面数据需求。
例如,在企业级的网络环境中,异种数据库同时并存的现象越来越普遍地存在,比如,在市场部门采用微软的SQL Server数据库,在研发部门采用国产神通数据库,而企业的总服务器采用ORACLE数据库,这种异种数据库同时使用的情况在许多系统集成的方案与实施中屡见不鲜,于是在不同数据库之间的数据内容的同步变成一个普遍令人关心的问题。目前,各大主流数据库产品都提供了在各自数据库之间进行同步的功能 。现有的同步功能-一般采用发布/订阅模型来实现,一般来说,发布/订阅模型包括下列对象:发布服务器、分发服务器、订阅服务器,体系结构如附图图1所示。
发布服务器:发布服务器是提供数据以便同步到其他服务器的服务器。
分发服务器:分发服务器是具体执行数据分发任务的服务器。
订阅服务器:订阅服务器是接收同步数据的服务器。
首先,在发布服务器进行发布配置,对同步的内容和执行同步的周期等进行设置;订阅服务器根据需要订阅配置好的发布;分发服务器会根据发布配置执行数据分发,将数据写入订阅服务器。在这样的实现模型下,数据被写入发布数据库后,分发数据库根据发布配置定期去检查数据变更,然后将这些数据变更提取出来写入订阅服务器。
但是,这种同步技术存在的主要问题是不能实现异构数据库间的数据同步,发布服务器和分发服务器的实现和数据库服务器紧密相关(因为要获取数据库服务器上的数据更改需要数据库本身的支持),各个数据库厂商只能开发出配合自己的数据库产品的发布服务器和分发服务器,目前最多只能做到订阅数据库可以是其他数据库,这主要是通过SQL标准来屏蔽不同数据库间的差异。
专利授权公告号为CN 102063502B的发明专利:实现异构数据库数据同步的方法,提供了一种实现异构数据库数据同步的方法,其中异种数据库包括数据库A和数据库B,数据库A是用户应用所使用的数据库,数据库访问接口使用JDBC接口,数据库B是进行数据同步的目的数据库,还包括符合SUN规范的JDBC驱动AB,所述驱动AB包括A的JDBC驱动包和B的JDBC驱动包;对驱动AB上的函数调用都被原样传递给数据库A的JDBC驱动,而对数据库有更改的函数调用,则通过SQL语法映射转换后,再传递给数据库B的JDBC驱动。其利用数据库访问的标准接口,比如ODBC,JDBC等或者其他数据库访问标准接口,只要数据库同步双方都支持即可,对它们进行封装,所有通过标准接口进行数据库访问的应用发给数据库的更新语句都可以被转发给另外的数据库,使用该方法,通过数据库访问标准接口,数据库产品间的差异被屏蔽了,而且,在应用发送语句给目标数据库的时候,该语句也同时发送给同步数据库,实时性好。
但是上述发明对实时性的支持不够好,JDBC驱动包设定的周期去检查发布数据库的更改,然后再写入,这一般会有几秒的延时,实时性能不够好。
目前,行业内数据同步交换的软件主要有IBM的Datastage、Informatic PowerCenter以及Oracle GoldenGate等。这些专业化的工具主要应用在ETL和数据复制方面,并不能满足互联网行业复杂的系统和异构数据库之间的数据交换同步需求。
发明内容
本发明提供一种实现异构数据库数据同步的方法,同时还提供使用该方法的异构数据库数据同步系统。
本发明提供一种实现异构数据库数据同步的方法,所述方法包括如下步骤:a) 异构数据库数据同步的准备工作,对数据进行配置;b) 数据同步的数据增量捕获;c) 全量数据的同步;d) 增量数据同步。
在上述任一方案中优选的是,所述对数据进行配置包括但不限于配置基本数据作业单元、配置数据作业流、配置数据作业流定时任务。
在上述任一方案中优选的是,所述配置基本数据作业单元包括如下步骤:选择操作类型;输入上述数据作业单元的操作类型对应的参数;保存相应的数据操作作业。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型包括从ORACLE数据表到GP数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE数据表到ORACLE数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE数据表到MYSQL数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括ORACLE SQL数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到GP数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到MYSQL数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从ORACLE SQL数据表到ORACLE数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到HADOOP数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到ORACLE数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP数据表到文本文件的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括GP SQL数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP SQL数据表到HADOOP数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP SQL数据表到ORACLE数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从GP SQL数据表到文本文件的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从HADOOP数据表到GP数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括从HADOOP数据表到ORACLE数据表的数据操作。
在上述任一方案中优选的是,所述数据作业单元支持的所述操作类型还包括HADOOP SHELL & PIG数据表的数据操作。
在上述任一方案中优选的是,所述操作类型对应的参数包括数据库相关参数和HADOOP相关参数。
在上述任一方案中优选的是,所述数据库相关参数包括但不限于数据库名称、数据库用户名、数据库表名、SQL语句。
在上述任一方案中优选的是,所述HADOOP相关参数的格式为:<shell>shell脚本内容</shell>;<pig>pig脚本内容</pig>;文件路径;文件名称;文件是否分割。
在上述任一方案中优选的是,所述配置数据作业流包括如下步骤:首先,新建或选择已有的数据作业流;其次,将已配置好的数据作业加入数据作业流,并根据需求配置作业前提;然后,重复前一步步骤,并定义数据作业执行顺序;最后,保存相应的数据作业流。
在上述任一方案中优选的是,所述配置数据作业流定时任务包括如下步骤:首先,选择已有的数据作业流;其次,输入参数;最后,保存相应的数据作业流的定时任务。
在上述任一方案中优选的是,所述输入的参数包括但不限于分、时、日、月、星期、年。
在上述任一方案中优选的是,所述数据同步的数据增量捕获包括如下步骤:首先,在数据增量捕获配置表定义相关信息;其次,数据增量捕获;最后,重复上述一步的步骤,实现持续捕获增量的数据。
在上述任一方案中优选的是,所述数据增量捕获配置表定义的相关信息包括但不限于相应的数据库、数据表的表名和日志表名信息。
在上述任一方案中优选的是,所述数据增量捕获包括如下步骤:首先,读取数据增量捕获配置表,并连接对应的数据库;其次,读取日志表,卸载相应的数据表到指定的数据目录下;最后,保存相应的数据信息至数据增量文件信息表。
在上述任一方案中优选的是,所述数据增量文件信息表的文件格式包括但不限于元数据文件和数据文件。
在上述任一方案中优选的是,所述元数据文件的格式为:表名 + 0x07 + 字段列表 + 0x07 + 字段类型列表 + 0x07 + 主键字段名 + 0x07 + 主键字段类型。
在上述任一方案中优选的是,所述字段列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述字段类型列表==字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述主键字段名=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述主键字段类型列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述数据文件以数据生成的时间戳命名。
在上述任一方案中优选的是,所述数据文件的形式为:行分隔符为0x08;每行数据格式:删除 = D + 0x07 + 日志序号 + 0x07 + 主键值;新增 = I + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值;修改 = U + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值; 字段空值时保存为:\N。
在上述任一方案中优选的是,所述全量数据同步包括如下步骤:首先,选择预先定义的数据作业流;其次,运行所述数据作业流,并等待服务器端返回作业完成信息。
在上述任一方案中优选的是,所述增量数据同步包括如下步骤:首先,在数据增量应用配置表定义相关信息;其次,实施数据增量应用;最后,重复上述一步的步骤,持续应用增量的数据。
在上述任一方案中优选的是,所述实施数据增量应用包括如下步骤:首先,读取数据增量应用配置表,连接相应的数据库;然后,读取增量数据文件,解析完成后写入目标表中。
在上述任一方案中优选的是,所述数据增量应用配置表中的相关信息包括但不限于源数据库信息、源表名信息、源字段名信息、目标数据库信息、目标表名信息、目标字段名信息、字段顺序信息。
本发明还提供一种采用实现异构数据库数据同步的方法的数据同步系统,所述系统包括数据配置模块;数据同步的数据增量捕获模块;全量数据的同步模块;增量数据同步模块。
在上述任一方案中优选的是,所述数据配置模块包括但不限于配置基本数据作业单元模块、配置数据作业流模块、配置数据作业流定时任务模块。
在上述任一方案中优选的是,所述配置基本数据作业单元模块包括选择操作类型的模块;输入上述数据作业单元的操作类型对应的参数的模块;保存相应的数据操作作业的模块。
在上述任一方案中优选的是,所述操作类型对应的参数包括数据库相关参数和HADOOP相关参数。
在上述任一方案中优选的是,所述数据库相关参数包括但不限于数据库名称、数据库用户名、数据库表名、SQL语句。
在上述任一方案中优选的是,所述HADOOP相关参数的格式为:<shell>shell脚本内容</shell>;<pig>pig脚本内容</pig>;文件路径;文件名称;文件是否分割。
在上述任一方案中优选的是,所述数据同步的数据增量捕获模块中包括数据增量文件信息表,所述数据增量文件信息表的文件格式包括但不限于元数据文件和数据文件。
在上述任一方案中优选的是,所述元数据文件的格式为:表名 + 0x07 + 字段列表 + 0x07 + 字段类型列表 + 0x07 + 主键字段名 + 0x07 + 主键字段类型。
在上述任一方案中优选的是,所述字段列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述字段类型列表==字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述主键字段名=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述主键字段类型列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
在上述任一方案中优选的是,所述数据文件以数据生成的时间戳命名。
在上述任一方案中优选的是,所述数据文件的形式为:行分隔符为0x08;每行数据格式:删除 = D + 0x07 + 日志序号 + 0x07 + 主键值;新增 = I + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值;修改 = U + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值; 字段空值时保存为:\N。
在上述任一方案中优选的是,所述增量数据同步模块包括数据增量应用配置表,所述数据增量应用配置表中的相关信息包括但不限于源数据库信息、源表名信息、源字段名信息、目标数据库信息、目标表名信息、目标字段名信息、字段顺序信息。
本发明所述的实现异构数据库数据同步的方法和系统能够兼容各种数据存储,并且高效地进行数据同步与交换的技术和工具,以满足企业对内及对外业务的各方面数据需求。
附图说明
为了使本发明便于理解,现在结合附图描述本发明的具体实施例。
图1示出了现有技术中数据库体系结构图。
图2示出了按照本发明的一优选实施例的数据增量同步总体示意图。
具体实施方式
下面结合附图和优选的实施方式对本发明作进一步详细描述。权利要求中构成要件和实施例中具体实例之间的对应关系可以如下例证。这里的描述意图在于确认在实施例中描述了用来支持在权利要求中陈述的主题的具体实例,由于在实施例中描述了实例,不意味着该具体实例不表示构成要件。相反地,即使在此包含了具体实例作为对应一个构成要件的要素特征,也不意味着该具体实例不表示任何其它构成要件。
此外,这里的描述不意味着对应于实施例中陈述的具体实例的所有主题都在权利要求中引用了。换句话说,这里的描述不否认这种实体,即对应实施例包含的具体实例,但不包含在其任何一项权利要求中,即,能够在以后的修正被分案并申请、或增加的可能发明的实体。
应当注意的是,“系统”在此意味着由两个或更多设备构成的处理。
显而易见地,用户终端可以由个人计算机构成。此外,所述用户终端还可以由例如蜂窝电话、任何其它PDA(个人数字助理)工具、AV(音频视频)装置、诸如家用电气(家庭用电气化)设备的CE(消费电子设备)等构成。
“网络”意味着至少连接了两个设备的机构,并且在其中,一条信息能够从一个设备发送到另一个设备。经由网络建立通信的设备可以是彼此分离的,也可以是构成一个机器的内部模块。
“通信”可表示无线通信和有线通信。然而,还可以是混合无线和有线通信的通信,更具体地,在某个区段采取无线通信而在另一个区段采取有线通信的通信。同样,它也可以是这样的通信:从一个设备向另一设备的通信是有线的,且相反方向的通信是无线的。
本发明提供一种实现异构数据库数据同步的方法,同时还提供采用该方法的异构数据库数据同步系统。图2示出了按照本发明的一优选实施例的数据增量同步总体示意图。
本方案提供的一种实现异构数据库数据同步的方法包括如下步骤:
异构数据库数据同步的准备工作,对数据进行配置,其中,所述对数据进行配置包括如下三个步骤:
首先,配置基本数据作业单元;其次,配置数据作业流;最后,配置数据作业流定时任务。
具体的说,配置基本数据作业单元包括如下步骤:
首先,选择操作类型。目前,本发明所支持的数据作业单元的操作类型如下:
从ORACLE数据表到GP数据表的数据操作;
从ORACLE数据表到ORACLE数据表的数据操作;
从ORACLE数据表到MYSQL数据表的数据操作;
ORACLE SQL数据表的数据操作;
从ORACLE SQL数据表到GP数据表的数据操作;
从ORACLE SQL数据表到MYSQL数据表的数据操作;
从ORACLE SQL数据表到ORACLE数据表的数据操作;
从GP数据表到HADOOP数据表的数据操作;
从GP数据表到ORACLE数据表的数据操作;
从GP数据表到文本文件的数据操作;
GP SQL数据表的数据操作;
从GP SQL数据表到HADOOP数据表的数据操作;
从GP SQL数据表到ORACLE数据表的数据操作;
从GP SQL数据表到文本文件的数据操作;
从HADOOP数据表到GP数据表的数据操作;
从HADOOP数据表到ORACLE数据表的数据操作;
HADOOP SHELL & PIG数据表的数据操作。
其次,输入上述数据作业单元的操作类型对应的参数。其中,包括两种相关参数:数据库相关参数和HADOOP相关参数。
其中,数据库相关参数包括数据库名称、数据库用户名、数据库表名、SQL语句。HADOOP相关参数的格式如下所示:
<shell>shell脚本内容</shell>
<pig>pig脚本内容</pig>
文件路径;
文件名称;
文件是否分割。
最后,保存相应的数据操作作业。
具体的说,配置数据作业流包括如下步骤:首先,新建或选择已有的数据作业流;其次,将已配置好的数据作业加入数据作业流,并根据需求配置作业前提;然后,重复前一步步骤,并定义数据作业执行顺序;最后,保存相应的数据作业流。
具体的说,配置数据作业流定时任务包括如下步骤:首先,选择已有的数据作业流;其次,输入参数:分、时、日、月、星期、年;最后,保存相应的数据作业流的定时任务。
在完成上述异构数据库数据同步的准备工作后,即实现对数据进行配置后,进行数据同步的数据增量捕获。所述数据同步的数据增量捕获包括如下步骤:首先,在数据增量捕获配置表定义相关信息;其次,数据增量捕获;最后,重复上述一步的步骤,实现持续捕获增量的数据。
具体地说,在数据增量捕获配置表定义的相关信息包括相应的数据库、数据表的表名和日志表名信息。
数据增量捕获包括如下步骤:首先,读取数据增量捕获配置表,并连接对应的数据库。其次,读取日志表,卸载相应的数据表到指定的数据目录下。最后,保存相应的数据信息至数据增量文件信息表,其中,数据增量文件信息表的文件格式有两种形式:元数据文件格式和数据文件格式。
元数据文件格式的定义如下:表名 + 0x07 + 字段列表 + 0x07 + 字段类型列表 + 0x07 + 主键字段名 + 0x07 + 主键字段类型。其中,字段列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
字段类型列表、主键字段名、主键字段类型列表记录方式同字段列表,即,字段类型列表==字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。主键字段名=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。主键字段类型列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
数据文件格式以数据生成的时间戳命名,具体形式如下:
行分隔符:0x08
每行数据格式:
删除 = D + 0x07 + 日志序号 + 0x07 + 主键值;
新增 = I + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值;
修改 = U + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值;
字段空值时保存为:\N。
在完成上述数据同步的数据增量捕获的工作后,实现全量数据的同步。具体地说,包括如下步骤:首先,选择预先定义的数据作业流;其次,运行所述数据作业流,并等待服务器端返回作业完成信息。
在完成上述全量数据的同步的工作后,实现增量数据同步。所述增量数据同步包括如下步骤:首先,在数据增量应用配置表定义相关信息。其次,实施数据增量应用,所述数据增量应用包括如下步骤:首先,读取数据增量应用配置表,连接相应的数据库;然后,读取增量数据文件,解析完成后写入目标表中。最后,重复上述一步的步骤,持续应用增量的数据。
其中,数据增量应用配置表中的相关信息包括但不限于源数据库信息、源表名信息、源字段名信息、目标数据库信息、目标表名信息、目标字段名信息、字段顺序信息。
同时,本发明还提供一种采用上述的实现异构数据库数据同步的方法的异构数据库数据同步系统,所述系统包括数据配置模块;数据同步的数据增量捕获模块;全量数据的同步模块;增量数据同步模块。
所述数据配置模块包括但不限于配置基本数据作业单元模块、配置数据作业流模块、配置数据作业流定时任务模块。
所述配置基本数据作业单元模块包括选择操作类型的模块;输入上述数据作业单元的操作类型对应的参数的模块;保存相应的数据操作作业的模块。所述操作类型对应的参数包括数据库相关参数和HADOOP相关参数。所述数据库相关参数包括但不限于数据库名称、数据库用户名、数据库表名、SQL语句。所述HADOOP相关参数的格式为:<shell>shell脚本内容</shell>;<pig>pig脚本内容</pig>;文件路径;文件名称;文件是否分割。
所述数据同步的数据增量捕获模块中包括数据增量文件信息表,所述数据增量文件信息表的文件格式包括但不限于元数据文件和数据文件。
所述元数据文件的格式为:表名 + 0x07 + 字段列表 + 0x07 + 字段类型列表 + 0x07 + 主键字段名 + 0x07 + 主键字段类型。所述字段列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。所述字段类型列表==字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。所述主键字段名=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。所述主键字段类型列表=字段1 + 0x1B + 字段2 + 0x1B + ... + 字段n。
所述数据文件以数据生成的时间戳命名。所述数据文件的形式为:行分隔符为0x08;每行数据格式:删除 = D + 0x07 + 日志序号 + 0x07 + 主键值;新增 = I + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值;修改 = U + 0x07 + 日志序号 + 0x07 + 主键值 + 0x07 + 字段1值 + 0x1B + 字段2值 + 0x1B + ... + 字段n值; 字段空值时保存为:\N。
所述增量数据同步模块包括数据增量应用配置表,所述数据增量应用配置表中的相关信息包括但不限于源数据库信息、源表名信息、源字段名信息、目标数据库信息、目标表名信息、目标字段名信息、字段顺序信息。
上述详细描述通过实施例和/或示意图阐明了系统和/或过程的各种实施例。就这些示意图和/或包含一个或多个功能和/或操作而言,本领域技术人员将理解,这些示意图或实施例中的每一个功能和/或操作都可由各种各样的硬件、软件、固件、或实际上其任意组合来单独地和/或共同地实现。
应该理解,本文描述的方法可以结合硬件或软件,或在适当时结合两者的组合来实现。因此,本发明的方法,可以采用包含在诸如软盘、CD-ROM、硬盘驱动器或任何其他机器可读存储介质等有形介质中的程序代码(即,指令)的形式,其中,当程序代码在可编程计算机上执行的情况下,计算设备通常包括处理器、该处理器可读的存储介质(包括易失性存储器和/或存储元件)、至少一个输入设备、以及至少一个输出设备。一个或多个程序可以例如,通过使用API,可重用控件等来实现或利用结合本发明描述的过程。这样的程序优选地用高级过程语言或面向对象编程语言来实现,以与计算机系统通信。然而,如果需要,该程序可以用汇编语言或机器语言来实现。在任何情形中,语言可以是编译语言或解释语言,且与硬件实现相结合。
需要说明的是,本发明的一种实现异构数据库数据同步的方法以及采用所述方法的异构数据库数据同步系统的方案的范畴包括但不限于上述各部分之间的任意组合。
尽管具体地参考其优选实施例来示出并描述了本发明,但本领域的技术人员可以理解,可以做出形式和细节上的各种改变而不脱离所附权利要求书中所述的本发明的范围。以上结合本发明的具体实施例做了详细描述,但并非是对本发明的限制。凡是依据本发明的技术实质对以上实施例所做的任何简单修改,均仍属于本发明技术方案的范围。
Claims (10)
1.一种实现异构数据库数据同步的方法,包括如下步骤:
a) 异构数据库数据同步的准备工作,对数据进行配置;
b) 数据同步的数据增量捕获;
c) 全量数据的同步;
d) 增量数据同步。
2.如权利要求1所述的实现异构数据库数据同步的方法,其特征在于,所述对数据进行配置包括但不限于配置基本数据作业单元、配置数据作业流、配置数据作业流定时任务。
3.如权利要求2所述的实现异构数据库数据同步的方法,其特征在于,所述配置基本数据作业单元包括如下步骤:
选择操作类型;
输入上述数据作业单元的操作类型对应的参数;
保存相应的数据操作作业。
4.如权利要求3所述的实现异构数据库数据同步的方法,其特征在于,所述数据作业单元支持的所述操作类型包括从ORACLE数据表到GP数据表的数据操作。
5.如权利要求3所述的实现异构数据库数据同步的方法,其特征在于,所述数据作业单元支持的所述操作类型还包括从ORACLE数据表到ORACLE数据表的数据操作。
6.一种采用如权利要求1所述的实现异构数据库数据同步的方法的异构数据库数据同步系统,其特征在于,所述系统包括数据配置模块;数据同步的数据增量捕获模块;全量数据的同步模块;增量数据同步模块。
7.如权利要求6所述的实现异构数据库数据同步的系统,其特征在于,所述数据配置模块包括但不限于配置基本数据作业单元模块、配置数据作业流模块、配置数据作业流定时任务模块。
8.如权利要求7所述的实现异构数据库数据同步的系统,其特征在于,所述配置基本数据作业单元模块包括选择操作类型的模块;输入上述数据作业单元的操作类型对应的参数的模块;保存相应的数据操作作业的模块。
9.如权利要求8所述的实现异构数据库数据同步的系统,其特征在于,所述操作类型对应的参数包括数据库相关参数和HADOOP相关参数。
10.如权利要求9所述的实现异构数据库数据同步的系统,其特征在于,所述数据库相关参数包括但不限于数据库名称、数据库用户名、数据库表名、SQL语句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410013022.1A CN104778175A (zh) | 2014-01-13 | 2014-01-13 | 一种实现异构数据库数据同步的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410013022.1A CN104778175A (zh) | 2014-01-13 | 2014-01-13 | 一种实现异构数据库数据同步的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104778175A true CN104778175A (zh) | 2015-07-15 |
Family
ID=53619644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410013022.1A Pending CN104778175A (zh) | 2014-01-13 | 2014-01-13 | 一种实现异构数据库数据同步的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104778175A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701181A (zh) * | 2016-01-06 | 2016-06-22 | 中电科华云信息技术有限公司 | 一种动态异构元数据获取方法及系统 |
CN105760174A (zh) * | 2016-03-09 | 2016-07-13 | 浪潮软件集团有限公司 | 一种基于Windows定时任务的建议数据抽取方法 |
CN105787098A (zh) * | 2016-03-18 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | 一种Oracle数据库表数据历史轨迹保存方法及系统 |
CN105847378A (zh) * | 2016-04-13 | 2016-08-10 | 北京思特奇信息技术股份有限公司 | 一种实现大数据同步的方法和系统 |
CN106095880A (zh) * | 2016-06-07 | 2016-11-09 | 浪潮软件集团有限公司 | 基于VB开发的sybase库内外网数据同步的方法 |
CN106326469A (zh) * | 2016-08-31 | 2017-01-11 | 无锡雅座在线科技发展有限公司 | 数据的同步方法和装置 |
CN106708891A (zh) * | 2015-11-17 | 2017-05-24 | 中兴通讯股份有限公司 | 一种网管数据同步方法及装置 |
CN107229657A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 数据迁移方法及装置 |
CN107729366A (zh) * | 2017-09-08 | 2018-02-23 | 广东省建设信息中心 | 一种普适多源异构大规模数据同步系统 |
CN107943979A (zh) * | 2017-11-29 | 2018-04-20 | 山东鲁能软件技术有限公司 | 一种数据库之间数据的准实时同步方法及装置 |
CN108052661A (zh) * | 2017-12-27 | 2018-05-18 | 广州品唯软件有限公司 | 分布式环境下的聚合检索的方法、装置及可读存储介质 |
CN108334648A (zh) * | 2018-04-14 | 2018-07-27 | 温州职业技术学院 | 异构数据库间数据同步方法 |
CN109857809A (zh) * | 2019-01-31 | 2019-06-07 | 浙江小泰科技有限公司 | 一种原始数据库数据同步到目标数据库的同步方法及系统 |
WO2020151054A1 (zh) * | 2019-01-25 | 2020-07-30 | 网宿科技股份有限公司 | 一种数据同步方法及装置 |
CN112000722A (zh) * | 2020-08-17 | 2020-11-27 | 杭州数云信息技术有限公司 | 一种实时异构源数据同步系统及同步方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102346775A (zh) * | 2011-09-26 | 2012-02-08 | 苏州博远容天信息科技有限公司 | 一种基于日志的异构多源数据库同步方法 |
CN102542007A (zh) * | 2011-12-13 | 2012-07-04 | 中国电子科技集团公司第十五研究所 | 关系型数据库之间的同步方法及系统 |
CN102752372A (zh) * | 2012-06-18 | 2012-10-24 | 天津神舟通用数据技术有限公司 | 一种基于文件的数据库同步方法 |
CN103064976A (zh) * | 2013-01-14 | 2013-04-24 | 浙江水利水电专科学校 | 基于主动数据库技术的同异构dbms间数据交换方法 |
-
2014
- 2014-01-13 CN CN201410013022.1A patent/CN104778175A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102346775A (zh) * | 2011-09-26 | 2012-02-08 | 苏州博远容天信息科技有限公司 | 一种基于日志的异构多源数据库同步方法 |
CN102542007A (zh) * | 2011-12-13 | 2012-07-04 | 中国电子科技集团公司第十五研究所 | 关系型数据库之间的同步方法及系统 |
CN102752372A (zh) * | 2012-06-18 | 2012-10-24 | 天津神舟通用数据技术有限公司 | 一种基于文件的数据库同步方法 |
CN103064976A (zh) * | 2013-01-14 | 2013-04-24 | 浙江水利水电专科学校 | 基于主动数据库技术的同异构dbms间数据交换方法 |
Non-Patent Citations (1)
Title |
---|
李苒 等: ""中间件技术在异构数据库同步中的应用"", 《计算机与网络》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708891A (zh) * | 2015-11-17 | 2017-05-24 | 中兴通讯股份有限公司 | 一种网管数据同步方法及装置 |
WO2017084410A1 (zh) * | 2015-11-17 | 2017-05-26 | 中兴通讯股份有限公司 | 一种网管数据同步方法及装置 |
CN105701181A (zh) * | 2016-01-06 | 2016-06-22 | 中电科华云信息技术有限公司 | 一种动态异构元数据获取方法及系统 |
CN105760174A (zh) * | 2016-03-09 | 2016-07-13 | 浪潮软件集团有限公司 | 一种基于Windows定时任务的建议数据抽取方法 |
CN105787098A (zh) * | 2016-03-18 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | 一种Oracle数据库表数据历史轨迹保存方法及系统 |
CN105787098B (zh) * | 2016-03-18 | 2019-10-25 | 上海斐讯数据通信技术有限公司 | 一种Oracle数据库表数据历史轨迹保存方法及系统 |
CN107229657A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 数据迁移方法及装置 |
CN105847378B (zh) * | 2016-04-13 | 2019-06-28 | 北京思特奇信息技术股份有限公司 | 一种实现大数据同步的方法和系统 |
CN105847378A (zh) * | 2016-04-13 | 2016-08-10 | 北京思特奇信息技术股份有限公司 | 一种实现大数据同步的方法和系统 |
CN106095880A (zh) * | 2016-06-07 | 2016-11-09 | 浪潮软件集团有限公司 | 基于VB开发的sybase库内外网数据同步的方法 |
CN106326469A (zh) * | 2016-08-31 | 2017-01-11 | 无锡雅座在线科技发展有限公司 | 数据的同步方法和装置 |
CN107729366A (zh) * | 2017-09-08 | 2018-02-23 | 广东省建设信息中心 | 一种普适多源异构大规模数据同步系统 |
CN107729366B (zh) * | 2017-09-08 | 2021-01-05 | 广东省建设信息中心 | 一种普适多源异构大规模数据同步系统 |
US11500903B2 (en) | 2017-09-08 | 2022-11-15 | Guangdong Construction Information Center | Generic multi-source heterogeneous large-scale data synchronization client-server method |
CN107943979A (zh) * | 2017-11-29 | 2018-04-20 | 山东鲁能软件技术有限公司 | 一种数据库之间数据的准实时同步方法及装置 |
CN108052661A (zh) * | 2017-12-27 | 2018-05-18 | 广州品唯软件有限公司 | 分布式环境下的聚合检索的方法、装置及可读存储介质 |
CN108052661B (zh) * | 2017-12-27 | 2021-12-28 | 广州品唯软件有限公司 | 分布式环境下的聚合检索的方法、装置及可读存储介质 |
CN108334648A (zh) * | 2018-04-14 | 2018-07-27 | 温州职业技术学院 | 异构数据库间数据同步方法 |
WO2020151054A1 (zh) * | 2019-01-25 | 2020-07-30 | 网宿科技股份有限公司 | 一种数据同步方法及装置 |
CN109857809A (zh) * | 2019-01-31 | 2019-06-07 | 浙江小泰科技有限公司 | 一种原始数据库数据同步到目标数据库的同步方法及系统 |
CN112000722A (zh) * | 2020-08-17 | 2020-11-27 | 杭州数云信息技术有限公司 | 一种实时异构源数据同步系统及同步方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104778175A (zh) | 一种实现异构数据库数据同步的方法及系统 | |
CN108536761B (zh) | 报表数据查询方法及服务器 | |
US11102292B2 (en) | System and method for real-time cloud data synchronization using a database binary log | |
US11334594B2 (en) | Data model transformation | |
WO2020237797A1 (zh) | 一种微服务框架下动态配置管理方法及系统 | |
US9336288B2 (en) | Workflow controller compatibility | |
CN102752372A (zh) | 一种基于文件的数据库同步方法 | |
CN112069265B (zh) | 配置数据的同步方法、业务数据系统、计算机系统和介质 | |
CN105487864A (zh) | 代码自动生成的方法和装置 | |
CN104115139A (zh) | 提供可配置工作流能力 | |
CN110413673B (zh) | 数据库数据统一采集与分发方法及系统 | |
CN104899295A (zh) | 一种异构数据源数据关联分析方法 | |
CN107515933A (zh) | 修改源数据库表结构的方法、服务器、系统及存储介质 | |
US20150301875A1 (en) | Persisting and managing application messages | |
CN104699723A (zh) | 数据交换适配器、异构系统之间数据同步系统和方法 | |
JP2018049656A (ja) | KeyValueデータベースのデータテーブルを更新するための方法およびテーブルデータを更新するための装置 | |
CN108763234A (zh) | 一种数据实时同步方法及系统 | |
CN112988702A (zh) | 异构数据源实时数据传输方法及系统、存储介质及终端 | |
CN112632035A (zh) | 面向自主可控数据库迁移方法及存储介质 | |
US20150326664A1 (en) | System and method for managing data transactions between applications | |
US8843438B2 (en) | Parameter value binding for mobile business objects | |
CN102215264B (zh) | 一种支持多租户数据与服务定制运行的方法和装置 | |
CN104932904A (zh) | 一种针对智能家居的可配置数据库编程模式 | |
CN106156044B (zh) | 数据库切换方法及装置 | |
CN105718468A (zh) | 一种数据仓库ods层的建立方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180801 Address after: 100080 1-701-1 seven, level 28, Cheng Fu Road, Haidian District, Beijing. Applicant after: Digital Trade Technology (Beijing) Co., Ltd. Address before: 100083 Beijing Haidian District Huayuan Road 3-2, 6 floor of Dimon building. Applicant before: Century Light Technology Development (Beijing) Co., Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150715 |