一种基于数据库的异构型数据批量同步方法转让专利

申请号 : CN201510749519.4

文献号 : CN105426440B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张羿赵志宇孙北宁李姝义黄丁杨思坚赵毅涛张志生张莉娜颜丽渊郑研赵涓吴清华冯玉喜张浩任莹李申章

申请人 : 云南电网有限责任公司昆明能讯科技有限责任公司

摘要 :

种基于数据库的异构型数据批量同步方法,其特征在于,在系统计算资源有限的情况下,充分利用数据库管理软件的自身技术与接口,原子化实现异构类型数据同步单元,借助操作先来先服务调度算法(FCFS)执行批量并行同步,本发明的有益效果是:本发明是在信息系统计算资源有限的情况下,充分利用数据库管理软件的自身技术,利用操作系统先来先服务调度算法(FCFS),实现异构类型数据的批量并行同步方式。本发明是利用数据库自身的Database link机制,升级JOB作业管理机制,实现动态批量的管理元子级的异构类型的数据同步过程执行数据同步,保证整个异构数据类型系统的数据致性和完整性。

权利要求 :

1.一种基于数据库的异构型数据批量同步方法,其特征在于,在系统计算资源有限的情况下,充分利用数据库管理软件的自身技术与接口,原子化实现异构类型数据同步单元,借助操作先来先服务调度算法执行批量并行同步,采用以下步骤和技术、算法实现:(1)、建立子系统底层数据库之间的连接

建立网络链路,实现子系统数据库服务器之间的通信链路;利用数据库Database link技术,实现数据库之间相互访问连接;在此通过数据库权限的授予和限制,实现子系统内私有数据和公有数据的安全保护;

(2)、封装元子级的数据转换同步过程

结合子系统间异构数据同步的需求,按照数据转换同步的业务逻辑,封装出用于异构数据转换同步的最小元子级的同步存储过程;最小元子级同步过程需要充分的考虑异构数据对应的差异,利用数据库自身的临时表与缓存机制,降低内存的压力;按照数据库数据存储的原理,设计最小步骤的转换过程与转化的算法,提高数据同步过程中增、删、改、查操作的性能,从而达到整体提高同步性能的目的;

(3)、建立作业任务调度控制过程

基于数据库自身的JOB任务管理机制,和数据库运行状态监控技术,采用先进先出的作业调度算法,建立同步作业调度控制过程;实现调度过程能够实时的根据数据库运行的状态和资源利用率,动态的设置负责执行元子同步过程的JOB数量,从而保证系统前端应用的应用性能,亦保证异构数据批量高效的同步,达到重复利用数据库硬件资源的目的;异构数据批量同步的控制流程:步骤一:创建用于任务调度分配的主JOB,采用蚁群研究中“秩序即是高效”规律设计JOB的控制机制,通过分析系统的资源的利用率,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率;此步骤中为了能够在后面的执行过程中有限的监管数据同步过程,在此处还需加入数据同步监督管理逻辑,用于监控数据库软硬件负载情况,及元子的同步过程运行的详细信息;

步骤二:按照异构数据同步需求及数据规模设计元子同步过程,元子同步过程之间要消除前后的依赖,保证能够并发运行而不影响数据同步的目标,并将元子同步过程,注册进入调度列表中;

步骤三:主JOB按照设计好的调度机制,启动创建子JOB,执行最小元子同步过程,按照同步频率的需求,调整循环同步的周期,从而实现异构型数据的高效同步;

(4)注册元子同步过程进入调度控制过程

完成以上三个步骤,将元子同步过程注册进入调度控制过程,完成调度控制过程对元子同步过程的动态管理和执行,元子同步过程的执行,并不一定完全按照既定的逻辑执行,而是由主JOB根据当前的系统资源利用率相关信息动态分配,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率;

(5)监管异构数据同步过程

本阶段加入独立于同步过程的分析控制逻辑,通过分析“作业任务调度控制过程”记录系统运行数据、及元子的同步过程运行的详细数据,明确的指导调整数据库系统配置参数,结合系统服务应用的时间周期规律,及时的调整元子过程调度的频率、资源配额参数,实现同步过程最高效的同步,同时不影响系统前端服务运用的效率与并发量。

说明书 :

一种基于数据库的异构型数据批量同步方法

技术领域

[0001] 本发明属信息系统构建方法,尤其是一种基于数据库的异构型数据批量同步方法。技术背景
[0002] 随着信息化建设程度不断提升,各业务领域系统之间要求实现数据共享,消除信息孤单,以到达信息数据的最大化应用,统一构成分布式部署的综合系统,不同子系统之间数据结构各异,要保证子系统间数据的一致性和正确性,实现同构数据的批量同步成为了综合系统建设的技术。
[0003] 成熟的ETL工具,更多的关注与数据同步过程,能够快速有效的实现数据同步的图形定制化配置,多线程同步的管理机制,但是不能嵌入数据所在的平台本身,通过分析系统前后台任务执行所需的资源利用率,实现系统自身资源利用率的平衡,而本发明正好是这一缺陷的补充。
[0004] 在综合系统计算资源投入有限的情况下,充分的利用数据库管理软件自身技术机制,实现异构数据大批量的高效同步,满足综合系统应用的需求,能有效减少系统技术的复杂度,同时也具有非常良好的经济效益。

发明内容

[0005] 本发明的目的正是为了克服上述现有技术存在的缺陷而提供一种基于数据库的异构型数据批量同步方法,本发明方法是在信息系统计算资源有限的情况下,充分利用数据库管理软件的自身技术,利用操作系统先来先服务调度算法(FCFS),实现异构类型数据的批量并行同步方式。
[0006] 本发明方法是通过如下技术方案来实现的:
[0007] 一种基于数据库的异构型数据批量同步方法,其特征在于,在系统计算资源有限的情况下,充分利用数据库管理软件的自身技术与接口,原子化实现异构类型数据同步单元,借助操作先来先服务调度算法(FCFS)执行批量并行同步,主要采用以下步骤和技术、算法实现:
[0008] (1)、建立子系统底层数据库之间的连接
[0009] 建立网络链路,实现子系统数据库服务器之间的通信链路;利用数据库Databaselink技术,实现数据库之间相互访问连接;在此通过数据库权限的授予和限制,实现子系统内私有数据和公有数据的安全保护。
[0010] (2)、封装元子级的数据转换同步过程
[0011] 结合子系统间异构数据同步的需求,按照数据转换同步的业务逻辑,封装出用于异构数据转换同步的最小元子级(Metadata)的同步存储过程;最小元子级同步过程需要充分的考虑异构数据对应的差异,利用数据库自身的临时表与缓存机制,降低内存的压力;按照数据库数据存储的原理,设计最小步骤的转换过程与转化的算法,提高数据同步过程中增、删、改、查等操作的性能,从而达到整体提高同步性能的目的。
[0012] (3)、建立作业任务调度控制过程
[0013] 基于数据库自身的JOB任务管理机制,和数据库运行状态监控技术,采用先进先出的作业调度算法,建立同步作业调度控制过程;实现调度过程能够实时的根据数据库运行的状态和资源利用率,动态的设置负责执行元子同步过程的JOB数量,从而保证系统前端应用的应用性能,亦保证异构数据批量高效的同步,达到重复利用数据库硬件资源的目的;异构数据批量同步的控制流程:
[0014] 步骤一:创建用于任务调度分配的主JOB,采用蚁群研究中“秩序即是高效”规律设计JOB的控制机制,通过分析系统的资源的利用率,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率;此步骤中为了能够在后面的执行过程中有限的监管数据同步过程,在此处还需加入数据同步监督管理逻辑,用于监控数据库软硬件负载情况,及元子的同步过程运行的详细信息。
[0015] 步骤二:按照异构数据同步需求及数据规模设计元子同步过程,元子同步过程之间要消除前后的依赖,保证能够并发运行而不影响数据同步的目标。并将元子同步过程,注册进入调度列表中;
[0016] 步骤三:主JOB按照设计好的调度机制,启动创建子JOB,执行最小元子同步过程。按照同步频率的需求,调整循环同步的周期,从而实现异构型数据的高效同步;
[0017] (4)注册元子同步过程进入调度控制过程
[0018] 完成以上三个步骤,将元子同步过程注册进入调度控制过程,完成调度控制过程对元子同步过程的动态管理和执行。元子同步过程的执行,并不一定完全按照既定的逻辑执行,而是由主JOB根据当前的系统资源利用率相关信息动态分配,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率。
[0019] (5)监管异构数据同步过程
[0020] 本阶段加入独立于同步过程的分析控制逻辑,通过分析“作业任务调度控制过程”记录系统运行数据、及元子的同步过程运行的详细数据,明确的指导调整数据库系统配置参数,结合系统服务应用的时间周期规律,及时的调整子过程调度的频率、数量、资源配额等参数,实现同步过程最高效的同步,同时不影响系统前端服务运用的效率与并发量。
[0021] 本发明的有益效果是:本发明是在信息系统计算资源有限的情况下,充分利用数据库管理软件的自身技术,利用操作系统先来先服务调度算法(FCFS),实现异构类型数据的批量并行同步方式。本发明是利用数据库自身的Databaselink机制,升级JOB作业管理机制,实现动态批量的管理元子级的异构类型的数据同步过程执行数据同步,保证整个异构数据类型系统的数据一致性和完整性。

附图说明

[0022] 图1为本发明异构数据批量同步的控制流程图;
[0023] 图2为JOB控制调度作业执行效果图。

具体实施方式

[0024] 见图1,图2,一种基于数据库的异构型数据批量同步方法,本发明特征在于,通过采用以下技术和算法实现:
[0025] (1)、建立子系统底层数据库之间的连接
[0026] 建立网络链路,实现子系统数据库服务器之间的通信链路;利用数据库Databaselink技术,实现数据库之间相互访问连接;在此通过数据库权限的授予和限制,实现子系统内私有数据和公有数据的安全保护;
[0027] (2)、封装元子级的数据转换同步过程
[0028] 结合子系统间异构数据同步的需求,按照数据转换同步的业务逻辑,封装出用于异构数据转换同步的最小单元的存储过程;元子级同步过程需要充分的考虑异构数据对应的差异,和转化的算法优化,提高数据同步过程中增删改查等操作的性能;
[0029] (3)、建立作业任务调度控制过程
[0030] 基于数据库自身的JOB任务管理机制,和数据库运行状态监控技术,采用先进先出的作业调度算法,建立同步作业调度控制过程;实现调度过程能够实时的根据数据库运行的状态和资源利用率,动态的设置负责执行元子同步过程的JOB数量,从而保证系统前端应用的应用性能,亦保证异构数据批量高效的同步,达到重复利用数据库硬件资源的目的;异构数据批量同步的控制流程:
[0031] 步骤一:创建用于任务调度分配的主JOB,采用蚁群研究中“秩序即是高效”规律设计JOB的控制机制,通过分析系统的资源的利用率,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率;
[0032] 步骤二:按照异构数据同步需求及数据规模设计元子同步过程,元子同步过程之间要消除前后的依赖,保证能够并发运行而不影响数据同步的目标。并将元子同步过程,注册进入调度列表中;
[0033] 步骤三:主JOB按照设计好的调度机制,启动创建子job,执行元子同步过程。按照同步频率的需求,调整循环同步的周期,从而实现异构型数据的高效同步;
[0034] (4)注册元子同步过程进入调度控制过程
[0035] 完成以上三个步骤,将元子同步过程注册进入调度控制过程,完成调度控制过程对元子同步过程的动态管理和执行。元子同步过程的执行,并不一定完全按照既定的逻辑执行,而是由主JOB根据当前的系统资源利用率相关信息动态分配,达到控制子JOB数量和执行频率的目的,从而充分提高同步作业的整体效率。