4.4交付内容工具化
(1)测试迁移
迁移测试阶段主要是对阿里云新数据仓库平台的功能性验证和典型场景验证,测试新系统在业务对接上是否存在问题。
同时该阶段还会论证迁移步骤的合理性,评估迁移工具的功能完备性;通过本阶段的典型场景验证,期望找到更多迁移交付中的技术性问题(如 SQL 兼容性、SQL 复杂度、作业复杂度等),用于更为准确评估迁移工作量,以便后续进行合理的工作安排。
生产迁移主要工作包括数据迁移、模型迁移和调度迁移三大块,而每一块的迁移都会涉及数据核对。该阶段迁移的主要难度在于三块工作完成迁移后,新数据仓库平台的数据要和原有数据仓库平台的数据一致,包括历史数据一致和新增数据处理的一致,并能够经过一个稳定周期的验证,任何一个环节的错误都将导致整体返工重做。
(2)生产迁移
生产迁移主要工作包括数据迁移、模型迁移和调度迁移三大块,而每一块的迁移都会涉及数据核对。该阶段迁移的主要难度在于三块工作完成迁移后,新数据仓库平台的数据要和原有数据仓库平台的数据一致,包括历史数据一致和新增数据处理的一致,并能够经过一个稳定周期的验证,任何一个环节的错误都将导致整体返工重做。
在其中会用到一系列的交付工具,例如数据迁移工具 DTS,确保铺底数据的原始拷贝和数据自动导出导入,保证数据一致性,简化数据迁移流程;而数据模型迁移工具ADAM(亚当),则确保不同系统的语法转换,以促进迁移的平滑过度。
由于项目涉及的上下游系统较多,该阶段实施中具体的工作内容可以分为以下几个部分,这里同时总结了本项目中对应的工作量占比。
交付分工上,本阶段需要由交付技术架构师负责,解决方案架构师、客户和伙伴协助配合;交付技术架构师负责制定迁移方案设计和编写,并参与迁移及数据校验工作;解决方案架构师协助参与方案设计及评审工作;客户协助并确认迁移和校验结果;伙伴配合具体实施迁移工作。
(3)系统并行
本阶段为迁移投产前的数据稽核校验阶段,由于数据仓库平台涉及核心业务系统,稳定性要求极高,有必要在迁移期间保证数据仓库新旧双系统并行,待数据迁移完整性校验通过后,再正式进入生产割接前的最后准备阶段。
由于涉及的上下游系统较多(例如反洗钱,风控,CRM 等均与数据仓库做大量连接),因此在系统并行阶段,交付主要面临数据不一致、新旧平台特性差异以及系统配置不同这三方面的挑战。
数据不一致方面,统计数据迁移不仅涉及数据表及数据量。数据核对的工作更为繁琐,数据核对可分为对象级、记录级、指标级、全表级、每日批量几个级别的核对。每个级别都涉及大量的脚本编写和繁重的数据比对。基于此开发自动核对脚本生成工具,可根据元数据配置自动生成核对脚本,并可以对脚本进行批量调度,快速得出核对结果。
这样,核对的主要工作就是发现不一致的数据并解决对应的问题。平台特性差异以及系统配置方面的差异挑战,则主要通过系统调整、推送端适配修改、以及人工校对修改等方式进行完善。
这个阶段也会用到一些标准化交付工具,例如 GTS 研发的数据校验工具青天鉴等,这些工具主要完成数据比对等功能,便于更好的实现双系统并行。
在交付分工上,并行阶段需要由交付技术架构师负责,解决方案架构师、客户和伙伴协助配合;交付技术架构师负责数据比对策略指定及数据差异分析;解决方案架构师协助参与并行方案评审工作;客户协助确认数据比对结果的准确性、一致性;伙伴负责具体数据比对工作。