【技术实现步骤摘要】
一种基于自制序列化算法的数据库同步方法
本专利技术涉及数据库同步
,具体涉及一种基于自制序列化算法的数据库同步方法。
技术介绍
在集中管控模式的生产环境中,数据部署在中心机构的机房,而下属机构仅部署应急系统;正常情况下,下属机构的业务处理依赖于中心机构的系统,而在网络、中心数据库瘫痪的情况下,下属机构将启用应急系统进行日常业务处理。该业务要求在正常情况下,需要周期性的将中心数据库的业务数据同步到下属机构,以保证应急情况下的业务数据保证一定程度的新鲜度。目前的数据同步手段可定制化较差,针对业务规则相关的关联数据的验证缺乏手段,在数据库主键等方面的处理不完善,同步过程中经常会出现主键冲突、关联数据不一致的情况发生,从而导致数据同步失败,或者同步的关联数据不一致,最终导致应急状况发生时,应急系统无法正常启用。
技术实现思路
本专利技术的目的在于克服现有技术存在的问题,提供一种基于自制序列化算法的数据库同步方法,保证源数据库与目标数据库的数据在规定周期内保持数据一致。为实现上述技术目的,达到上述技术效果,本专利技术通过以下技术方案实现:一种基于自制序列化算法的数据库同步方法,包括管理工具、发布服务模块和订阅服务模块,建立自定义的数据视图元数据结构,将源数据库按照该结构生成元数据,所述发布服务模块按照元数据的定义抽取数据,建立自制的序列化存储算法,对数据进行序列化存储并进行数据发布,所述订阅服务模块按照元数据的定义接收发布服务模块发布的数据,并对数据进行逆向处理,最终更新到目标 ...
【技术保护点】
1.一种基于自制序列化算法的数据库同步方法,包括管理工具、发布服务模块和订阅服务模块,其特征在于,建立自定义的数据视图元数据结构,将源数据库按照该结构生成元数据,所述发布服务模块按照元数据的定义抽取数据,建立自制的序列化存储算法,对数据进行序列化存储并进行数据发布,所述订阅服务模块按照元数据的定义接收发布服务模块发布的数据,并对数据进行逆向处理,最终更新到目标数据中。/n
【技术特征摘要】
1.一种基于自制序列化算法的数据库同步方法,包括管理工具、发布服务模块和订阅服务模块,其特征在于,建立自定义的数据视图元数据结构,将源数据库按照该结构生成元数据,所述发布服务模块按照元数据的定义抽取数据,建立自制的序列化存储算法,对数据进行序列化存储并进行数据发布,所述订阅服务模块按照元数据的定义接收发布服务模块发布的数据,并对数据进行逆向处理,最终更新到目标数据中。
2.根据权利要求1所述的基于自制序列化算法的数据库同步方法,其特征在于,将源数据库按照自定义的数据视图元数据结构生成元数据包括以下步骤:
步骤1.1)手动生成数据表的结构信息元数据,包括数据表名称、数据表类型、数据表分批条件、字段的名称、数据类型和长度;
步骤1.2)建立数据表的外部数据关系元数据,获取该数据表依赖的其他数据表清单,并记录依赖字段;
步骤1.3)结合步骤1.1)和步骤1.2),建立数据发布配置模型:
步骤1.31)配置源数据库连接字符串、数据序列化文件存储位置和数据订阅端服务地址信息;
步骤1.32)针对所有数据视图,配置数据同步时机,同步时机定义为以分号分割的多个数值,其中,第一个数值代表同步周期,周期最小单位为分钟,其余数值代表强制同步的时间点;
步骤1.4)结合步骤1.1)和步骤1.2),建立数据订阅配置模型:
步骤1.41)配置数据验证插件,若未配置,系统采取默认处理;
步骤1.42)配置数据表更新前和更新后插件,若未配置,系统采取默认处理;
步骤1.43)针对所有数据视图,配置目标数据库连接字符串、数据序文件和FTP服务器相关配置。
3.根据权利要求2所述的基于自制序列化算法的数据库同步方法,其特征在于,所述自制的序列化存储算法包括以下步骤:
步骤2.1)针对数据视图元数据的定义,依次对各个数据项进行数据获取处理,对于单个数据定义项,进行步骤2.2)处理;
步骤2.2)对获取的数据项数据,按照记录条数依次处理每一条数据记录,对于单条数据记录,进行步骤2.3)处理;
步骤2.3)对每一条数据记录,依次按照字段元数据定义进行二进制处理;
步骤2.4)对单个数据定义项的二进制处理的结构,进行压缩处理,进一步减小数据存储和最后传输的尺寸,并对压缩后的数据进行文件存储。
4.根据权利要求3所述的基于自制序列化算法的...
【专利技术属性】
技术研发人员:奚勇勤,王福胜,江新乐,胡志坚,陈晨辉,初志强,
申请(专利权)人:中国铁路上海局集团有限公司,苏州博远容天信息科技股份有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。