迁移脚本构建方法、装置、计算机设备及可读存储介质制造方法及图纸

技术编号:32646560 阅读:16 留言:0更新日期:2022-03-12 18:29
本发明专利技术涉及云存储技术领域,公开了一种迁移脚本构建方法、装置、计算机设备及可读存储介质,包括:获取第一集群中保存集群数据的迁出地址,及获取第二集群中用于接收集群数据的迁入地址,构建迁出地址和迁入地址之间的映射关系;提取第一集群中的管理脚本文件,根据映射关系将管理脚本文件中的迁出地址修改为迁入地址,并将迁出地址作为迁入地址的映射标注,使管理脚本文件转为迁移脚本文件;将迁移脚本文件部署到第二集群中,以作为第二集群的迁移脚本。本发明专利技术避免了当前因人工迁移数据,导致迁移效率低下,数据迁移错误率较高的情况发生。发生。发生。

【技术实现步骤摘要】
迁移脚本构建方法、装置、计算机设备及可读存储介质


[0001]本专利技术涉及云存储
,尤其涉及一种迁移脚本构建方法、装置、计算机设备及可读存储介质。

技术介绍

[0002]跨集群迁移数据,操作其中涉及到数据迁移,metastore迁移,hive版本升级等问题。目前集群数据迁移主要是对原始数据原封不动地进行迁移,方案大多数采用的是Hive Export等将数据文本导出到指定的HDFS目录,再使用诸如hadoop distcp命令将数据文本传输到新的集群,最后使用Hive Import将数据文本导入到hive表中,修改对应数据库在hdfs上的存储路径。专利技术人意识到,现有技术因需要人工修改存储路径且数据量庞大,将会导致数据迁移效率低下,错误率高的问题发生。

技术实现思路

[0003]本专利技术的目的是提供一种迁移脚本构建方法、装置、计算机设备及可读存储介质,用于解决现有技术存在的因需要人工修改存储路径且数据量庞大,导致数据迁移效率低下,错误率高发生的问题。
[0004]为实现上述目的,本专利技术提供一种迁移脚本构建方法,所述迁移脚本用于将第一集群的数据迁移至第二集群,包括:
[0005]获取所述第一集群中保存集群数据的迁出地址,及获取所述第二集群中用于接收所述集群数据的迁入地址,构建所述迁出地址和所述迁入地址之间的映射关系;
[0006]提取所述第一集群中的管理脚本文件,根据所述映射关系将所述管理脚本文件中的迁出地址修改为迁入地址,并将所述迁出地址作为所述迁入地址的映射标注,使所述管理脚本文件转为迁移脚本文件;
[0007]将所述迁移脚本文件部署到所述第二集群中,以作为所述第二集群的所述迁移脚本。
[0008]上述方案中,所述获取所述第一集群中保存集群数据的迁出地址,及获取所述第二集群中用于接收所述集群数据的迁入地址,构建所述迁出地址和所述迁入地址之间的映射关系,包括:
[0009]从所述第一集群中导出所有第一数据库的第一库名,以及所述第一数据库下所有第一数据表的第一表名,根据所述第一库名和所述第一表名构建第一库表信息;
[0010]从所述第二集群中导出所有第二数据库的第二库名,以及所述第二数据库下所有第二数据表的第二表名,根据所述第二库名和所述第二表名构建第二库表信息;
[0011]接收控制端发送的迁移信息,所述迁移信息中包括起点位置信息和终点位置信息;识别所述第一库表信息中与所述起点位置信息对应的第一库名及第一表名,并将所述第一库名及第一表名设为迁出地址;识别所述第二库表信息中与所述终点位置信息对应的第二库名及第二表名,并将所述第二库名及第二表名设为所述迁入地址;
[0012]将所述迁出地址和所述迁入地址录入预置的映射表中,并在所述映射表中将所述迁出地址和所述迁入地址关联,用以构建所述迁出地址和所述迁入地址之间的映射关系。
[0013]上述方案中,所述根据所述映射关系将所述管理脚本文件中的迁出地址修改为迁入地址,并将所述迁出地址作为所述迁入地址的映射标注,使所述管理脚本文件转为迁移脚本文件,包括:
[0014]提取并复制所述第一集群中的管理脚本文件得到中间脚本文件,识别所述中间脚本文件中的位置字段,并获取与所述位置字段对应的迁出地址;
[0015]从所述映射关系中获得与所述迁出地址对应的迁入地址;
[0016]删除所述中间脚本文件中的所述迁出地址,并将所述迁入地址写入所述中间脚本文件中并与所述位置字段对应;
[0017]将所述迁出地址作为映射标注,写入所述中间脚本文件中并与所述位置字段对应,以作为所述中间脚本执行所述迁入地址所在代码块的触发条件,并使所述中间脚本文件转为迁移脚本文件。
[0018]上述方案中,所述将所述迁移脚本文件部署到所述第二集群中,包括:
[0019]在所述第二集群中创建脚本文本,将所述迁移脚本文件写入所述脚本文本中;
[0020]在所述第二集群中构建脚本库,将所述迁移脚本文件载入所述脚本库中,使所述第二集群能够调用通过所述脚本库调用所述迁移脚本文件。
[0021]上述方案中,所述将所述迁移脚本文件部署到所述第二集群中,以作为所述第二集群的所述迁移脚本之后,所述方法还包括:
[0022]接收控制端发送的迁移请求,提取所述迁移请求中的迁出编码和迁入编码,将与所述迁出编码对应的集群设为迁出集群,将与所述迁入编码对应的集群设为迁入集群;其中,所述迁出编码是迁出数据的集群的唯一性标识,所述迁入编码是迁入数据的集群的唯一性标识。
[0023]上述方案中,所述将与所述迁出编码对应的集群设为迁出集群,将与所述迁入编码对应的集群设为迁入集群之后,所述方法还包括:
[0024]提取所述迁移请求中的迁移对象,将所述迁移对象录入所述迁出集群中的管理脚本文件,并运行所述管理脚本文件以提取所述迁出集群中的待迁移数据,运行所述迁入集群中的迁移脚本文件以将所述待迁移数据保存至所述迁入集群中;其中,所述迁移对象记载了从所述迁出集群中提取待迁移数据的属性特征。
[0025]上述方案中,所述将所述迁移对象录入所述迁出集群中的管理脚本文件,并运行所述管理脚本文件以提取所述迁出集群中的待迁移数据,运行所述迁入集群中的迁移脚本文件以将所述待迁移数据保存至所述迁入集群中,包括:
[0026]查询迁出集群中保存有管理脚本文件的脚本库,并提取所述管理脚本文件,将所述迁移对象录入所述管理脚本文件的查询变量中;
[0027]运行所述管理脚本文件以通过所述管理脚本文件中的查询方法,识别所述迁出集群中与所述属性特征一致的数据,并将所述数据设为待迁移数据,及获取所述待迁移数据在所述迁出集群中的迁出地址;其中,所述迁出地址是所述待迁移数据在所述迁出集群中的保存位置;
[0028]查询迁入集群中保存有迁移脚本文件的脚本库,并提取迁移脚本文件;根据所述
迁出地址运行所述迁移脚本文件中的迁入代码块,用以将所述待迁移数据保存至所述迁入集群中与所述迁出地址对应的迁入地址中;其中,所述迁入代码块是记载有所述迁入集群的迁入地址,且以所述迁出地址为触发条件的代码块。
[0029]为实现上述目的,本专利技术还提供一种迁移脚本构建装置,包括:
[0030]映射构建模块,用于获取所述第一集群中保存集群数据的迁出地址,及获取所述第二集群中用于接收所述集群数据的迁入地址,构建所述迁出地址和所述迁入地址之间的映射关系;
[0031]脚本生成模块,用于提取所述第一集群中的管理脚本文件,根据所述映射关系将所述管理脚本文件中的迁出地址修改为迁入地址,并将所述迁出地址作为所述迁入地址的映射标注,使所述管理脚本文件转为迁移脚本文件;
[0032]脚本部署模块,用于将所述迁移脚本文件部署到所述第二集群中,以作为所述第二集群的所述迁移脚本。
[0033]为实现上述目的,本专利技术还提供一种计算机设备,其包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述计算机设备的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种迁移脚本构建方法,所述迁移脚本用于将第一集群的数据迁移至第二集群,其特征在于,包括:获取所述第一集群中保存集群数据的迁出地址,及获取所述第二集群中用于接收所述集群数据的迁入地址,构建所述迁出地址和所述迁入地址之间的映射关系;提取所述第一集群中的管理脚本文件,根据所述映射关系将所述管理脚本文件中的迁出地址修改为迁入地址,并将所述迁出地址作为所述迁入地址的映射标注,使所述管理脚本文件转为迁移脚本文件;将所述迁移脚本文件部署到所述第二集群中,以作为所述第二集群的所述迁移脚本。2.根据权利要求1所述的迁移脚本构建方法,其特征在于,所述获取所述第一集群中保存集群数据的迁出地址,及获取所述第二集群中用于接收所述集群数据的迁入地址,构建所述迁出地址和所述迁入地址之间的映射关系,包括:从所述第一集群中导出所有第一数据库的第一库名,以及所述第一数据库下所有第一数据表的第一表名,根据所述第一库名和所述第一表名构建第一库表信息;从所述第二集群中导出所有第二数据库的第二库名,以及所述第二数据库下所有第二数据表的第二表名,根据所述第二库名和所述第二表名构建第二库表信息;接收控制端发送的迁移信息,所述迁移信息中包括起点位置信息和终点位置信息;识别所述第一库表信息中与所述起点位置信息对应的第一库名及第一表名,并将所述第一库名及第一表名设为迁出地址;识别所述第二库表信息中与所述终点位置信息对应的第二库名及第二表名,并将所述第二库名及第二表名设为所述迁入地址;将所述迁出地址和所述迁入地址录入预置的映射表中,并在所述映射表中将所述迁出地址和所述迁入地址关联,用以构建所述迁出地址和所述迁入地址之间的映射关系。3.根据权利要求1所述的迁移脚本构建方法,其特征在于,所述根据所述映射关系将所述管理脚本文件中的迁出地址修改为迁入地址,并将所述迁出地址作为所述迁入地址的映射标注,使所述管理脚本文件转为迁移脚本文件,包括:提取并复制所述第一集群中的管理脚本文件得到中间脚本文件,识别所述中间脚本文件中的位置字段,并获取与所述位置字段对应的迁出地址;从所述映射关系中获得与所述迁出地址对应的迁入地址;删除所述中间脚本文件中的所述迁出地址,并将所述迁入地址写入所述中间脚本文件中并与所述位置字段对应;将所述迁出地址作为映射标注,写入所述中间脚本文件中并与所述位置字段对应,以作为所述中间脚本执行所述迁入地址所在代码块的触发条件,并使所述中间脚本文件转为迁移脚本文件。4.根据权利要求1所述的迁移脚本构建方法,其特征在于,所述将所述迁移脚本文件部署到所述第二集群中,包括:在所述第二集群中创建脚本文本,将所述迁移脚本文件写入所述脚本文本中;在所述第二集群中构建脚本库,将所述迁移脚本文件载入所述脚本库中,使所述第二集群能够调用通过所述脚本库调用所述迁移脚本文件。5.根据权利要求1所述的迁移脚本构建方法,其特征在于,所述将所述迁移脚本文件部署到所述第二集群中,以作为所述第二集群...

【专利技术属性】
技术研发人员:韩晓翠
申请(专利权)人:平安养老保险股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1