掌桥专利:专业的专利平台
掌桥专利
首页

数据实时同步参数的生成、同步方法及装置、存储介质、终端

文献发布时间:2023-06-19 09:41:38


数据实时同步参数的生成、同步方法及装置、存储介质、终端

技术领域

本发明涉及计算机技术领域,尤其涉及一种数据实时同步参数的生成、同步方法及装置、存储介质、终端。

背景技术

Oracle Golden Gate(简称OGG,又称灾难备份或者灾备)软件是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志或归档日志获得数据的增量变化,再将这些变化应用到目标数据库,从而实现源数据库与目标数据库同步,也即能够实现Oracle数据库的异构同步。

但是,在医疗领域,医疗行业数据环境复杂,特定条件较多,定制化需求较多,在OGG部署过程中,需要修改参数多且复杂;并且需要部署人员通过比较完整的学习如何运用和部署等相关知识才能进行部署工作,学习成本高,部署过程中出错率较高,大幅增加了现场部署、运维的工作量。

发明内容

本发明解决的技术问题是如何实现OGG软件部署的和维护的便捷性。

为解决上述技术问题,本发明实施例提供一种数据实时同步参数的生成方法,数据实时同步参数的生成方法包括:至少获取用户输入的源数据库信息以及目标数据库信息,所述源数据库信息以及目标数据库信息包括数据库类型;根据所述数据库类型以及第一映射关系确定实际参数模板,所述参数模板包括多种参数;至少结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件;数据库执行脚本根据所述数据库类型以及第二映射关系确定最终数据库执行脚本,所述最终参数文件和所述最终数据库执行脚本用于供数据库同步工具调用。

可选的,所述至少获取用户输入的源数据库信息以及目标数据库信息包括:获取用户输入的源数据库信息和目标数据库信息;获取所述用户在可视化界面选择的特殊配置,所述特殊配置是指预先封装完成的具有业务执行功能的代码。

可选的,所述至少获取用户输入的源数据库信息以及目标数据库信息之后还包括:将所述特殊配置对应的代码加入所述实际参数模板对应的位置。

可选的,所述特殊配置具备的业务功能包括:对无主键数据处理、捕获数据变化进程、同步修改状态、生成数据库同步工具启动服务的参数脚本、生成环境参数、数据转换操作、配置Kafka参数文件和多进程参数处理。

可选的,所述结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件包括:将所述源数据库信息以及目标数据库信息与所述实际参数模板中的参数进行匹配,并将匹配后的所述源数据库信息以及目标数据库信息中的值填入所述实际参数模板对应的位置,以得到所述最终参数文件。

可选的,所述结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件包括:将所述源数据库信息以及目标数据库信息与所述实际参数模板中的参数进行匹配,并将匹配后的所述源数据库信息以及目标数据库信息中的值填入所述实际参数模板对应的位置,以得到中间参数文件;将所述中间参数文件呈现在可视化界面;获取所述用户在可视化界面对所述中间参数文件的修改数据,以得到所述最终参数文件。

为解决上述技术问题,本发明实施例还公开了一种同步方法,同步方法包括:在指定路径调用最终参数文件和最终数据库执行脚本,所述指定路径存储有所述最终参数文件和所述最终数据库执行脚本;将源数据库中的数据同步至目标数据库。

本发明实施例还公开了一种数据实时同步参数的生成装置,同步脚本生成装置包括:输入获取模块,用以至少获取用户输入的源数据库信息以及目标数据库信息,所述源数据库信息以及目标数据库信息包括数据库类型;实际参数模板确定模块,用以根据所述数据库类型以及第一映射关系确定实际参数模板,所述参数模板包括多种参数;最终参数文件确定模块,用以至少结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件;最终数据库执行脚本确定模块,用以数据库执行脚本根据所述数据库类型以及第二映射关系确定最终数据库执行脚本,所述最终参数文件和所述最终数据库执行脚本用于供数据库同步工具调用。

本发明实施例还公开了一种存储介质,其上存储有计算机程序,所述计算机程序运行时执行所述数据实时同步参数的生成方法的步骤,或者所述的同步方法的步骤。

本发明实施例还公开了一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行所述数据实时同步参数的生成方法的步骤,或者所述同步方法的步骤。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明技术方案通过预先设置参数模板、参数模板与数据库类型之间的映射关系以及数据库执行脚本与数据库类型之间的映射关系,使得用户仅需输入简单参数,如源数据库信息以及目标数据库信息,就能够获得实际应用环境可用的实际参数模板以及数据库执行脚本,进而在部署数据库同步工具时可以直接调用该实际参数模板以及数据库执行脚本,部署过程简便易操作,尤其在同步数据环境复杂、需求较多的情况下,能够显著地降低部署和运维的工作量,提高了运维效率。

进一步地,本发明技术方案获取用户输入的源数据库信息和目标数据库信息;获取所述用户在可视化界面选择的特殊配置,所述特殊配置是指预先封装完成的具有业务执行功能的代码。本发明技术方案通过用户在可视化界面进行简单配置,能够自动化创建满足不同需求的参数模板在生产环境中,从而能够应用于不同数据环境,适用范围广。

附图说明

图1是本发明实施例一种数据实时同步参数的生成方法的流程图;

图2是本发明实施例另一种数据实时同步参数的生成方法的流程图

图3是图1所示步骤S103的一种具体实施方式的流程图;

图4是本发明实施例一种同步方法的流程图;

图5是本发明实施例一种数据实时同步参数的生成装置的结构示意图。

具体实施方式

如背景技术中所述,在医疗领域,医疗行业数据环境复杂,特定条件较多,定制化需求较多,在OGG部署过程中,需要修改参数多且复杂,学习成本高,部署过程中出错率较高,大幅增加了现场部署、运维的工作量。

本发明技术方案通过预先设置参数模板、参数模板与数据库类型之间的映射关系以及数据库执行脚本与数据库类型之间的映射关系,使得用户仅需输入简单参数,如源数据库信息以及目标数据库信息,就能够获得实际应用环境可用的实际参数模板以及数据库执行脚本,进而在部署数据库同步工具时可以直接调用该实际参数模板以及数据库执行脚本,部署过程简便易操作,尤其在同步数据环境复杂、需求较多的情况下,能够显著地降低部署和运维的工作量。

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

图1是本发明实施例一种数据实时同步参数的生成方法的流程图。

需要指出的是,本实施例中各个步骤的序号并不代表对各个步骤的执行顺序的限定。

图1所示的数据实时同步参数的生成方法的各个步骤可以由计算机设备来执行,例如,手机、计算机、平板电脑等。具体地,所述数据实时同步参数的生成方法可以包括以下步骤:

步骤S101:至少获取用户输入的源数据库信息以及目标数据库信息,所述源数据库信息以及目标数据库信息包括数据库类型;

步骤S102:根据所述数据库类型以及第一映射关系确定实际参数模板,所述参数模板包括多种参数;

步骤S103:至少结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件;

步骤S104:根据所述数据库类型以及第二映射关系确定最终数据库执行脚本,所述最终参数文件和所述最终数据库执行脚本用于供数据库同步工具调用。

用户可以在可视化界面输入源数据库信息以及目标数据库信息,那么在步骤S101的具体实施中,可以获取可视化界面传入的内容。其中,源数据库信息可以是表征源数据库的相关配置信息;目标数据库信息可以是表征目标数据库的相关配置信息,所述源数据库信息以及目标数据库信息至少包括数据库类型。

具体而言,所述源数据库信息还可以包括系统环境、进程名称、数据恢复管理(Parnassus Data Recovery Manager,prm)存放路径、数据库名称、数据库用户名、数据库用户密码、数据库实例名、数据库字符集;目标数据库信息还可以包括系统环境、进程名称、prm存放路径、数据库名称、数据库用户名、数据库用户密码、数据库实例名、数据库字符集、大数据(big data)配置文件名称。

进一步地,所述源数据库信息还可以包括表清单,所述表清单可以是源数据库所需配置的表清单列表。

可以理解的是,源数据库信息以及目标数据库信息所包含的具体内容可以由用户根据实际的应用环境进行选择和配置,本发明实施例对此不作限制。

相应地,在预先设置参数模板时,参数模板所包含的具体参数也可以是根据实际的应用环境来配置的。在步骤S102的具体实施中,参数模板与数据库类型之间具备映射关系,也即第一映射关系,那么一旦确定用户输入的数据库类型,就能够根据该映射关系确定当前应用环境可用的参数模板,也即实际参数模板。

本实施例中,参数模板中多种参数的一部分参数的值是预先配置好的,剩余参数的值则需要根据用户的输入来确定。进而在步骤S103中,结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件,最终参数文件中多个参数的值均已确定。

数据库同步工具在对源数据库和目标数据库进行数据同步操作时,需要执行开启和/或关闭数据库的动作,为了实现开启和/或关闭数据库,需要数据库执行脚本。数据库执行脚本的功能是开启和/或关闭数据库。

本实施例中所称的数据库同步工具能够对源数据库和目标数据库进行数据同步,具体可以是OGG工具,也可以是其他任意可实施的能够对数据库执行数据同步的工具,本发明实施例对此不作限制。

本实施例中所称数据库执行脚本能够对数据库执行业务操作,例如开启和/或关闭数据库,也可以是查询数据库等,具体可以是SQL执行脚本,也可以是其他任意可实施的计算机语言编写的脚本,本发明实施例对此不作限制。

本发明实施例可以预先设置第二映射关系,也即数据库执行脚本与数据库类型之间的映射关系。故而在步骤S104的具体实施中,可以根据用户输入的数据库类型确定最终数据库执行脚本。至此,OGG根据运行所需的参数(最终参数文件和最终数据库执行脚本)均已完成配置。

具体地,最终参数文件和最终数据库执行脚本可以存储至指定的路径,例如可以打包存储至指定路径的文件夹。该文件夹的指定路径可以是由用户预先设置的。

本实施例中,通过预先设置参数模板、参数模板与数据库类型之间的映射关系以及数据库执行脚本与数据库类型之间的映射关系,使得用户仅需输入简单参数,如源数据库信息以及目标数据库信息,就能够获得实际应用环境可用的实际参数模板以及数据库执行脚本,进而在部署数据库同步工具时可以直接调用该实际参数模板以及数据库执行脚本,部署过程简便易操作,尤其在同步数据环境复杂、需求较多的情况下,能够显著地降低部署和运维的工作量。

在本发明一个具体实施例中,请参照图2,图1所示步骤S101可以包括以下步骤:

步骤S201:获取用户输入的源数据库信息和目标数据库信息;

步骤S202:获取所述用户在可视化界面选择的特殊配置,所述特殊配置是指预先封装完成的具有业务执行功能的代码。

本实施例中,除了获取用户输入的源数据库信息和目标数据库信息之外,还可以获取用户选择的特殊配置。具体而言,可以预先将具有业务执行功能的代码进行封装,并形成模块,在可视化界面中提供该模块的选项供用户进行选择。如果用户勾选了某个特殊配置,则获取该特殊配置对应的封装好的代码。

由于特殊配置具有业务执行功能,并能够提供对外接口,因此通过提供特殊配置,可以实现用户个性化需求的定制,提升用户体验。

在一个具体实施例中,所述特殊配置具备的业务功能包括:对无主键数据处理、捕获数据变化进程、同步修改状态、生成数据库同步工具启动服务的参数脚本、生成环境参数、数据转换操作、配置Kafka参数文件和多进程参数处理。

在一个具体的例子中,主键表处理模块(No Key Table Module)能够基于数据表中没有主键情况下对参数进行特殊处理;数据捕获模块能够基于表数据在同步的过程中,对数据的变化进程捕获:获取修改前、修改后数据,源数据库删除数据(物理删除),同步后在目标服务器修改其状态(逻辑删除);MGR服务模块(MGR Module):生成OGG自身启动服务的参数脚本;DG(DataGuard灾备库)参数模块(DG Module):基于生产库是DG库的环境生成特殊参数;一键转换Schema模块(Change Schema Module)能够基于需要适应不同数据库类型,定制化转换数据库Schema的转换操作;KAFKA数据捕获模块(Kafka Module):基于大数据环境配置Kafka参数文件;初始化多进程模块(InitRange Module):基于初始化时数据量较大的表,进行多进程参数处理。

本发明实施例通过用户在可视化界面进行简单配置,能够自动化创建满足不同需求的参数模板在生产环境中,从而能够应用于不同数据环境,适用范围广。

在本发明一个具体实施例中,继续参照图2,图1所示步骤S101之后可以包括以下步骤:步骤S203:将所述特殊配置对应的代码加入所述实际参数模板对应的位置。

本实施例中,参数模板中预留有特殊配置对应的代码的位置。为了方便数据库同步工具方便调用特殊配置对应的代码,可以将特殊配置对应的代码加入实际参数模板对应的位置。数据库同步工具运行时,可以直接从实际参数模板中调用特殊配置对应的代码,以执行特殊配置具备的业务功能,无需工作人员进行额外的代码编写工作,使得OGG的部署更加简便快捷。

在本发明一个具体实施例中,继续参照图2,图1所示步骤S103可以包括以下步骤:步骤S204:将所述源数据库信息以及目标数据库信息与所述实际参数模板中的参数进行匹配,并将匹配后的所述源数据库信息以及目标数据库信息中的值填入所述实际参数模板对应的位置,以得到所述最终参数文件。

本实施例中,参数模板中预留有源数据库信息以及目标数据库信息对应的参数的位置。在将源数据库信息以及目标数据库信息中的值填入所述实际参数模板时,可以将用户输入的信息与参数模板中的参数进行匹配。例如,源数据库信息包括数据库名称,那么通过与参数模板中的参数进行匹配,可以得到匹配的参数是“数据库名称”,那么将源数据库信息所包含的数据库名称填入该匹配的参数对应的值的位置即可。

至此,最终参数文件中各个参数均具有对应的值。

本发明一个可选实施例中,请参照图3,图1所示步骤S103可以包括以下步骤:

步骤S301:将所述源数据库信息以及目标数据库信息与所述实际参数模板中的参数进行匹配,并将匹配后的所述源数据库信息以及目标数据库信息中的值填入所述实际参数模板对应的位置,以得到中间参数文件;

步骤S302:所述中间参数文件呈现在可视化界面;

步骤S303:获取所述用户在可视化界面对所述中间参数文件的修改数据,以得到所述最终参数文件。

与前述实施例不同的是,除了根据源数据库信息以及目标数据库信息确定实际参数模板中各个参数的值之外,还可以提供给用户修改的机会,并根据用户的修改数据获得最终参数文件。

具体而言,在初步获得实际参数模板中各个参数的值之后,得到中间参数模板;该中间参数模板可以呈现在可视化界面中,并能够被用户进行编辑和修改,以获得用户的修改数据。利用用户的修改数据对中间参数模板中对应的参数的值进行更新,以得到最终参数文件。

本发明实施例通过设置对中间参数文件进行修改的功能,可以满足特殊环境的要求,同时还能够使用户能够及时发现问题并更正,保证最终生成的最终参数文件和数据库执行脚本的准确性,进而保证后续OGG同步的准确性。

请参照图4,所述同步方法可以包括以下步骤:

步骤S401:在指定路径调用最终参数文件和最终数据库执行脚本,所述指定路径存储有所述最终参数文件和所述最终数据库执行脚本;

步骤S402:将源数据库中的数据同步至目标数据库。

本实施例中,同步方法的执行主体可以是数据库同步工具。

数据库同步工具通过在指定路径调用最终参数文件和最终数据库执行脚本,可以实现对源数据库和目标数据库中数据的同步。其中,源数据库和目标数据库的相关信息体现在最终参数文件中。

关于形成最终参数文件和数据库执行脚本的具体实施例请参照前述实施例,此处不再赘述。

请参照图5,所述数据实时同步参数的生成装置50可以包括输入获取模块501、实际参数模板确定模块502、最终参数文件确定模块503和最终数据库执行脚本确定模块504。

其中,输入获取模块501用以至少获取用户输入的源数据库信息以及目标数据库信息,所述源数据库信息以及目标数据库信息包括数据库类型;

实际参数模板确定模块502用以根据所述数据库类型以及第一映射关系确定实际参数模板,所述参数模板包括多种参数;

最终参数文件确定模块503用以至少结合所述源数据库信息以及目标数据库信息以及所述实际参数模板形成最终参数文件;

最终数据库执行脚本确定模块504用以数据库执行脚本根据所述数据库类型以及第二映射关系确定最终数据库执行脚本,所述最终参数文件和所述最终数据库执行脚本用于供数据库同步工具调用。

本发明实施例通过预先设置参数模板、参数模板与数据库类型之间的映射关系以及数据库执行脚本与数据库类型之间的映射关系,使得用户仅需输入简单参数,如源数据库信息以及目标数据库信息,就能够获得实际应用环境可用的实际参数模板以及数据库执行脚本,进而在部署数据库同步工具时可以直接调用该实际参数模板以及数据库执行脚本,部署过程简便易操作,尤其在同步数据环境复杂、需求较多的情况下,能够显著地降低部署和运维的工作量,提高了运维效率。

关于所述数据实时同步参数的生成装置50的工作原理、工作方式的更多内容,可以参照图1至图4中的相关描述,这里不再赘述。

本发明实施例还公开了一种同步装置,所述同步装置包括:调用模块,用以在指定路径调用最终参数文件和最终数据库执行脚本,所述指定路径存储有所述最终参数文件和所述最终数据库执行脚本;同步模块,用以将源数据库中的数据同步至目标数据库。

关于所述同步装置的工作原理、工作方式的更多内容,可以参照图1至图4中的相关描述,这里不再赘述。

本发明实施例还公开了一种存储介质,所述存储介质为计算机可读存储介质,其上存储有计算机程序,所述计算机程序运行时可以执行图1-图4中所示方法的步骤。所述存储介质可以包括ROM、RAM、磁盘或光盘等。所述存储介质还可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器等。

本发明实施例还公开了一种终端,所述终端可以包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序。所述处理器运行所述计算机程序时可以执行图1-图4中所示方法的步骤。所述用户设备包括但不限于手机、计算机、平板电脑等终端设备。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

相关技术
  • 数据实时同步参数的生成、同步方法及装置、存储介质、终端
  • 后关系型数据库的数据实时同步方法及装置、存储介质、终端
技术分类

06120112266421