[发明专利]一种数据迁移测试方法和系统有效
申请号: | 201410015027.8 | 申请日: | 2014-01-14 |
公开(公告)号: | CN104778179B | 公开(公告)日: | 2019-05-28 |
发明(设计)人: | 江进朋 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F11/36 |
代理公司: | 北京鸿德海业知识产权代理事务所(普通合伙) 11412 | 代理人: | 倪志华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 迁移 测试 方法 系统 | ||
本发明提供了一种数据迁移测试方法和系统,其中方法包括:分别将原始文件与目标文件中的每一条数据封装成键‑值(key‑data)对,其中同一条数据分别在原始文件和目标文件封装成的key‑data对中具有相同的key;对各key‑data对中具有相同key的数据进行收集;将key相同的data进行比较从而得到测试结果。另外,可以由诸如datax工具将原始文件与目标文件拉到分布式系统,由分布式系统执行上述封装、收集和比较的处理。通过本发明能够提高数据迁移测试的效率。
【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种数据迁移测试方法和系统。
【背景技术】
随着大数据时代的到来,很多公司或者企业都会在自己的数据库中存储海量的数据,而随着业务的发展,市场面临着系统的升级或者重构,就可能会涉及到数据的迁移和表的拆分或合并,这么大数据量的迁移给数据的验证带来挑战,如何更加高效地测试并保证质量亟待解决。
现有的测试方式主要存在以下两种:
第一种、通过编写java类,将原始文件的数据和目标文件的数据分别一条一条的取出,然后进行循环比对。
第二种、在数据库层面编写存储程序,将原始文件的数据和目标文件的数据一条一条的取出,然后进行循环比对。
上述原始文件指的是数据迁移之前的数据文件,目标文件指的是数据迁移之后的数据文件,正常情况之下数据迁移后,原始文件和目标文件中的各条数据应该相同,如果发生不同,则说明存在错误(Bug)。
然而,现有技术中的两种方式都需要从原始文件中取出一条数据后,循环遍历目标表中的数据,取出对应同一条数据的内容进行比对,然后再从原始文件中取出下一条数据,以此循环执行。也就是说,需要执行两层循环,对于大数量来说,耗时长,可能要达到几个小时或者十几个小时,而且写存储过程,对数据库端的压力也是相当大。
【发明内容】
有鉴于此,本发明提供了一种数据迁移测试方法和系统,以便于提高测试效率。
具体技术方案如下:
本发明首先提供了一种数据迁移测试方法,该方法包括:
分别将原始文件与目标文件中的每一条数据封装成键key-值data对,其中同一条数据分别在原始文件和目标文件封装成的key-data对中具有相同的key;
对各key-data对中具有相同key的数据进行收集;
将key相同的data进行比较从而得到测试结果。
根据本发明一优选实施方式,所述key能够分别在所述原始文件和目标文件中唯一标识一条数据;
所述data为所述原始文件和目标文件中预设字段的数据。
根据本发明一优选实施方式,所述将key相同的data进行比较从而得到测试结果包括:
将key相同的两个data进行比较,如果两个data不同,则确定该key对应的data出现异常;或者,如果key仅存在一个对应的data,则确定该key对应的data出现异常;
将出现异常的data形成测试结果文件。
根据本发明一优选实施方式,该方法还包括:
利用在不同类型数据库文件系统之间交换数据的工具读取原始文件和目标文件,并将所述原始文件和目标文件进行格式转换,得到分布式系统能够处理的数据格式;
利用所述工具将原始文件和目标文件拉到所述分布式系统;
由所述分布式系统执行所述封装、收集和比较的处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410015027.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置