实时数据迁移方法、装置及存储介质与流程

文档序号:17442418发布日期:2019-04-17 04:56阅读:253来源:国知局
实时数据迁移方法、装置及存储介质与流程

本发明涉及计算机领域,更具体地说,涉及一种计算机系统中不同数据库之间进行实时数据迁移的方法、装置及存储介质。



背景技术:

在业务系统中,随着业务的不断发展,客户的快速增加,过时的数据库版本或者数据表格涉及将成为限制业务发展的瓶颈。数据库单实例部署,可能存在单点故障的风险;数据库分表分库设计不合理,则可能在业务繁忙时,引发资源争用,导致系统并发量过低。出现以上情况时,需要考虑对现有的数据库设计进行调整,进行数据迁移。

在数据迁移的过程中,实时交易系统不能停止对外服务。现有技术中,使用oracle提供的owb(oraclewarehousebuilder,oracle的数据仓库加载工具)产品组件进行数据迁移,可以从其他数据库经过清洗、转换将数据加载到数据仓库中。然而采用owb产品组件无法实现实时数据迁移的要求。



技术实现要素:

为解决上述问题,本发明实施例提供了一种实时数据迁移方法,在数据迁移的过程中,通过数据同步交易有针对性的进行数据实时同步,能够使得在数据迁移的过程中实时交易系统不停机。

本发明实施例的第一方面提供一种实时数据迁移方法,其特征在于,所述方法包括:从源数据库到目标数据库进行全量数据导出装载;在数据装载的过程中,记录会发生数据变动的客户信息;根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易;根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步。

具体地,所述在数据装载的过程中,记录会发生数据变动的客户信息包括:根据交易码区分会更改客户数据的客户交易;根据所述客户交易获取所述会发生客户数据更改的客户编号,将所述客户编号记录到数据表格中。

具体地,根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易包括:定位出所述数据表格,根据所述客户编号获取会发生客户数据更改的客户范围;根据所述客户范围通过源数据库的交易系统提供数据同步交易。

具体地,根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步包括:通过目标数据库的交易系统运行所述数据同步交易;通过所述数据同步交易从源数据库拉取最新的客户数据,将所述客户数据实时同步到目标数据库。

具体地,根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步的过程中,

校验源数据库与目标数据库的客户数据是否一致,若不一致,则继续运行所述数据同步交易,若一致,则停止运行所述数据同步交易,数据同步完成。

进一步地,所述源数据库所在系统与所述目标数据库所在系统共享存储。

进一步地,在所述从源数据库到目标数据库进行全量数据导出装载的过程中,使用明文文本作为数据文件格式。

本发明实施例的第二方面提供一种实时数据迁移装置,所述装置包括:

数据迁移模块,用于从源数据库到目标数据库进行全量数据导出装载;变动记载模块,用于在数据装载的过程中,记录会发生数据变动的客户信息;交易提供模块,用于根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易;数据同步模块,用于根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步。

具体地,所述变动记载模块在数据装载的过程中,使用以下方式记录会发生变动的客户信息:根据交易码区分会更改客户数据的客户交易;根据所述客户交易获取所述会发生客户数据更改的客户编号,将所述客户编号记录到数据表格中。

具体地,所述交易提供模块根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易包括:定位出所述数据表格,根据所述客户编号获取会发生客户数据更改的客户范围;根据所述客户范围通过源数据库的交易系统提供数据同步交易。

具体地,所述数据同步模块根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步包括:通过目标数据库的交易系统运行所述数据同步交易;通过所述数据同步交易从源数据库拉取最新的客户数据,将所述客户数据实时同步到目标数据库。

具体地,所述数据迁移系统还包括:校验模块,用于校验源数据库与目标数据库的客户数据是否一致,若不一致,则继续运行所述数据同步交易,若一致,则停止运行所述数据同步交易,数据同步完成。

进一步地,所述源数据库所在系统与所述目标数据库所在系统共享存储。

进一步地,所述全量数据迁移模块在所述从源数据库到目标数据库进行全量数据导出装载的过程中,使用明文文本作为数据文件格式。

本发明实施例的第三方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序能够被处理器执行以实现本发明任意一项实施例所述方法的步骤。

本发明实施例在数据迁移时,通过数据同步交易有针对性的进行数据实时同步,能够保证数据的一致性,使得在数据迁移的过程中实时交易系统不停机,并且,本发明实施例还通过使用共享存储作为数据迁移的传输介质,使用明文文本作为数据文件格式,提高了大数据量、跨数据库数据迁移的效率。

附图说明

图1是根据本发明数据迁移方法的一个实施例;

图2是根据本发明数据迁移装置的一个实施例。

具体实施方式

为了便于理解本发明技术方案的各个方面、特征以及优点,下面结合附图对本发明进行具体描述。应当理解,下述的各种实施方式只用于举例说明,而非用于限制本发明的保护范围。

图1是根据本发明实施方式的数据迁移方法的一个实施例。参考图1,本实施例所述的实时数据迁移方法包括:

s101:从源数据库到目标数据库进行全量数据导出装载;

s102:在数据装载的过程中,记录会发生数据变动的客户信息;

s103:根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易;

s104:根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步。

数据迁移的全流程包括:从源数据库卸出数据文件,通过传输介质将所卸出的数据文件传输到目标数据库所在的存储或者文件系统,然后将数据文件入库到目标数据库。

因为全量数据迁移导出装载的是某一时间点源数据库的数据,在这个数据迁移的过程中,源数据库的数据可能发生了变化。在数据迁移的过程中,如果在新旧系统同时运行,则可能存在数据不一致的问题。例如:在数据迁移的过程中,客户在旧系统修改了客户的个人信息,而当交易切换到新系统后,展示给客户的信息可能没有被更新,从而导致客户信息不一致,实时交易系统出现故障。

本发明实施例提供了一种实时数据同步的方法,在数据迁移的过程中,通过数据同步交易有针对性对数据迁移过程中会发生数据变动的客户信息进行数据实时同步,能够保证数据的一致性,使得在数据迁移的过程中实时交易系统不停机。

具体地,处理s101中,选取某一时间点进行一次从源数据库到目标数据库的全量数据导出装载,使目标数据库装入源数据库某一时间点的数据。

具体地,在处理102中,记录会发生数据变动的客户信息包括:根据交易码区分会更改客户数据的客户交易;根据所述客户交易获取所述会发生客户数据更改的客户编号,将所述客户编号记录到数据表格中。该处理在数据装载的过程中,设计数据表格记录下来数据迁移过程中客户信息的变动。

具体地,在处理s103中,根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易包括:定位出所述数据表格,根据所述客户编号获取会发生客户数据更改的客户范围;根据所述客户范围通过源数据库的交易系统提供数据同步交易。该处理通过定位出所述数据表格,搜索会发生数据变化的客户范围,由源数据库的交易系统提供针对该范围客户的数据同步交易,提高了数据同步的效率。

具体地,在处理s104中,根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步包括:通过目标数据库的交易系统运行所述数据同步交易;通过所述数据同步交易从源数据库拉取最新的客户数据,将所述客户数据实时同步到目标数据库。

进一步地,在处理s104中,根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步的过程中,校验源数据库与目标数据库的客户数据是否一致,若不一致,则继续运行所述数据同步交易,若一致,则停止运行所述数据同步交易,数据同步完成。

本实施例在通过数据同步交易进行数据同步的过程中,通过数据同步交易有针对性的进行数据实时同步,并通过校验源数据库与目标数据库的数据是否一致,待确认源数据库与目标数据库一致后,切换到目标数据库运行,保证了实时交易系统切换到目标数据库上运行时不停机。客户在目标数据库对应的交易系统登陆后,首先调用所述数据同步交易,从源数据库拉取最新的客户数据,最新的客户数据全部更新到目标数据库后,客户再进行其他操作。

进一步地,所述源数据库所在系统与所述目标数据库所在系统共享存储。

在进行海量数据在线迁移时,由于数据量过大,导致产生的数据文件过大,如果采取网络传输,将会十分缓慢效率低下。本发明实施例的源数据库所在系统与目标数据库所在系统挂载同一块数据存储盘,实现了打通两个不同数据库所在系统的存储。数据文件从源数据库卸出后,目标数据库即可同步实时进行装载,节省了数据文件跨系统传输的时间,缩短了数据迁移的耗时。

进一步地,在所述从源数据库到目标数据库进行全量数据导出装载的过程中,使用明文文本作为数据文件格式。本发明实施例使用明文文本作为数据文件格式,明文文本格式便于解析且数据格式简单,数据装载高效,能够在跨数据库进行数据迁移时,进一步提高跨数据库数据迁移的效率,缩短数据迁移的耗时。

本发明实施例的第二方面一种实时数据迁移装置,图2示出了根据本发明实施例的实时数据迁移装置的示意图,如图2所示,所述实时数据迁移装置包括:

数据迁移模块11:用于从源数据库20到目标数据库30进行全量数据导出装载;

变动记载模块12:用于在数据装载的过程中,记录会发生数据变动的客户信息;

交易提供模块13:用于根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易;

数据同步模块14:用于根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步。

具体地,所述变动记载模块12在数据装载的过程中,使用以下方式记录会发生变动的客户信息:根据交易码区分会更改客户数据的客户交易;根据所述客户交易获取所述会发生客户数据更改的客户编号,将所述客户编号记录到数据表格中。

具体地,所述交易提供模块13根据所述记录的客户信息通过源数据库的交易系统提供数据同步交易包括:定位出所述数据表格,根据所述客户编号获取会发生客户数据更改的客户范围;根据所述客户范围通过源数据库的交易系统提供数据同步交易。

具体地,所述数据同步模块14根据所述数据同步交易通过目标数据库的交易系统进行数据实时同步包括:通过目标数据库的交易系统运行所述数据同步交易;通过所述数据同步交易从源数据库拉取最新的客户数据,将所述客户数据实时同步到目标数据库。

进一步地,所述数据迁移系统还包括:

校验模块15,用于校验源数据库与目标数据库的客户数据是否一致,若不一致,则继续运行所述数据同步交易,若一致,则停止运行所述数据同步交易,数据同步完成。

进一步地,所述源数据库所在系统和所述目标数据库所在系统共享存储。

进一步地,所述数据迁移模块11在所述从源数据库到目标数据库进行全量数据导出装载的过程中,使用明文文本作为数据文件格式。

本实施例所述的实时数据迁移装置通过数据同步交易对会发生变动的客户信息进行实时同步,提供了一种实时数据迁移装置,保证在数据迁移过程中,实时交易系统不停机;进一步地,本实施例所述的实时数据迁移装置使用共享存储作为数据迁移的介质,使用明文文本数据迁移过程中的数据文件格式,能够对跨数据库、大数据量的实时数据进行实时迁移。

所述领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、模块、单元的具体工作过程,可以参考前述方法实施例中对应的过程,在此不再赘述。

根据本发明的实施例,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序能够被处理器执行实现前述方法实施例中的任一种方法。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1