[发明专利]一种异构数据库迁移方法、装置及存储介质有效
| 申请号: | 202010692087.9 | 申请日: | 2020-07-17 |
| 公开(公告)号: | CN111984621B | 公开(公告)日: | 2022-08-30 |
| 发明(设计)人: | 吕江博 | 申请(专利权)人: | 新华三大数据技术有限公司 |
| 主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/22;G06F16/25 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 450000 河南省郑州市郑州高*** | 国省代码: | 河南;41 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据库 迁移 方法 装置 存储 介质 | ||
1.一种异构数据库迁移方法,其特征在于,所述方法包括:
对源数据库中待迁移的源表进行分组,将具有依赖关系的源表分在同一分组中且将被依赖的源表放在依赖该被依赖的源表的前面;在基于依赖关系对源表进行分组的基础上,还根据每个源表的大小,均衡每个分组的数据量;
根据分组数量生成相同数量的迁移任务,所述迁移任务并行运行;
所述迁移任务将分组内的源表依顺序导出为SQL部分和表内数据部分,并根据预设的源数据库和目的数据库之间的SQL语法映射关系对SQL部分进行SQL语法转换;
迁移任务首先执行SQL部分,然后再将表内数据部分导入到目的数据库中;
在执行向目的数据库导入表内数据的操作中断的情况下,从目的数据库中获取目的表的最新写入位置信息,根据目的表的最新写入位置信息确定源表的表内数据中断位置,从中断位置继续执行导入操作。
2.根据权利要求1所述的方法,其特征在于,
所述SQL部分和表内数据部分缓存在内存中,迁移任务直接从内存中读取缓存的SQL部分和表内数据部分并进行导入操作。
3.根据权利要求1所述的方法,其特征在于,
通过预先编写的自动化执行脚本,自动执行所述源表分组、对SQL部分进行SQL语法转换以及导入步骤。
4.一种异构数据库迁移装置,其特征在于,该装置包括:
分组模块,用于对源数据库中待迁移的源表进行分组,将具有依赖关系的源表分在同一分组中且将被依赖的源表放在依赖该被依赖的源表的前面;还用于在基于依赖关系对源表进行分组的基础上,还根据每个源表的大小,均衡每个分组的数据量;
任务模块,用于根据分组数量生成相同数量的迁移任务,所述迁移任务并行运行;
导出模块,用于所述迁移任务将分组内的源表依顺序导出为SQL部分和表内数据部分,并根据预设的源数据库和目的数据库之间的SQL语法映射关系对SQL部分进行SQL语法转换;
导入模块,用于所述迁移任务执行SQL部分,然后再将表内数据部分导入到目的数据库中;
断点增量导入模块,用于在执行向目的数据库导入表内数据的操作中断的情况下,从目的数据库中获取目的表的最新写入位置信息,根据目的表的最新写入位置信息确定源表的表内数据中断位置,从中断位置继续执行导入操作。
5.根据权利要求4所述的装置,其特征在于,
所述导出模块生成的SQL部分和表内数据部分缓存在内存中,所述导入模块直接从内存中读取缓存的SQL部分和表内数据部分并进行导入操作。
6.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序当被处理器执行时实现如权利要求1至3中任一项的方法步骤功能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新华三大数据技术有限公司,未经新华三大数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010692087.9/1.html,转载请声明来源钻瓜专利网。





