【专项测试】系统数据迁移

新旧系统数据迁移

       随着互联网这么多年的技术的发展,在现有发展的基础上,基本上2-3年的时间,业务的快速增长和技术的革新,原有的系统会不断被功能更强大的新系统所取代。在新旧系统切换过度的过程中,必然要面临一个数据迁移的问题。
       旧系统从启用到被新系统取代,在系统其使用期间长期以往的积累了大量珍贵的历史数器,其中许多历史数据都是新系统顺利启用所必须要的。另外,这些历史数据也是进行业务决策和分析的重要依据。数据迁移,就是将旧系统的这些历史数据进行清理、转换,并转移和加载到新系统中的过程。数据迁移主要一套旧系统切换到另一套新系统使用,或多套旧系统切换到同一套新系统时,需要将旧系统中的历史数据转换到新系统中的,切换到新系统或者新架构系统的情况。比如:由于系统工程建设的先后,或者类似业务发展,旧系统不再能承载更大的业务体系,造成有多个不同的系统同时运行,但互间不能做到有效数据共享,需要一套新系统能够解决几套旧系统间的数据共享问题。
       数据迁移对系统切换到新系统的运行有着十分重要的意义。数据迁移的工作完成不仅仅是新系统成功上线的重要前提,同时也是新系统今后稳定运行的有力保障。如果数据迁移失败,新系统将不能正常启动运行;如果数据迁移不完善,考虑不周到,没能屏蔽垃圾数据,垃圾数对新系统将会造成很大的隐患,新系统一旦访问这些垃圾数据,可能会由这些垃圾数产生新的错误数据,致使业务各种不正常,系统无法正常运行,严重时还将会导致系统异常。反过来说,成功的数据迁移可以有效地保障新系统的顺利运行,能够继承,和沿用历史数据。因为无论对于一个公司还是一个部门,历史数据无疑都是一种十分珍贵的资源,如,公司的客户信息、客户的订单信息、订单的历史记录和交易记录等。因此,对数据迁移说对数据迁移进行充分的测试非常有必要。

  • 新旧系统数据迁移的实践与测试

        公司业务发展庞大以后,系统交互错综复杂,而且系统部署千差万别,数据迁移具有一定的复杂性和很高的风险性,非常有必要在进行新旧系统数据迁移之前对数据迁移进行测试,才有可能的提高迁移成功的概率,降低风险。

       数据迁移的实践的工作可以分为三部分:数据迁移前的准备、数据迁移的实施、数据迁移后的校验。

       由于数据迁移的特点,大量的工作都需要在准备阶段完成,充分而又周到的准备工作是完成数据迁移的前提。要进行待迁移数据源的详细梳理和数据说明,包括数据的存放方式、数据量、数据的时间跨度等多个维度,建立新旧系统数据库的数据字典,对旧系统的数据进行数据质量分析,新旧系统数据结构的差异分析;新旧系统代码对数据处理的差异分析:检查新旧系统数据库表的映射关系是否健全,对无法映射字段的是否进行有效的处理,开发、部属数据转换与迁移工具等工作,编写数据转换的校验程序,制定数据转换的应急措施和预案,保障迁移实施过程梳理进行,避免失误。

       数据迁移的实施是实现数据迁移的中最重要的环节。它要求制定数据转的详细实施步骤和流程,准备数据迁移环境,结束未处理完的业务事项,对数据迁移涉及的系统功能和技术进行测试,最后实施数据迁移工作。

        数据迁移后的数据校验和系统功能校验是对迁移工作的检查,数据校验的结果是判断新系统能否正式自用的重要依据。可以通过数据校验工具或编写相应的脚本检查程序来进行迁移后的数据校验,通过切量,或者灰度的形式运行新系统的功能模块,特别是最基本的查询、报表功能数据的准确性和数据的完整性。

       为了保证数据的安全性,在测试实践时可以考虑以下措施:

  • 实际运行环境之外搭建模拟环境,导入部分或全部数据,在模拟环境中进行一次或数次模拟迁移尝试。测试不仅要包括旧系统向新系统的迁移,还需进行新系统到旧系统的反向迁移,以确保在迁移过程失败时,可以及时恢复旧系统迁移的迁移数据,并能做好详细日志记录,方便后续找到相应的解决方法,减少和解决迁移风险
  • 把现有数据进行备份,检查备份数据的正确性:作两套备份,保障两份备数据的完整可靠
  • 假如有备份系统,则先将备份系统升级到新系统,保持原有的主服务的旧系统不动,切量到到备份系统尝运行(具体切了策略根据系统和业务情况定),如果备份系统正常,然后再升级主服务系统,再对主服务进行切量

猜你喜欢

转载自blog.csdn.net/weixin_42343424/article/details/84310477