DMI分类和过程流要点介绍
DMI的介绍
DMI指data migration,即数据移植。
它不同与简单的数据还原(只是数据库的操作),也不同于常说的数据ETL(涉及复杂的数据模型变换)。
通常来说,有以下两种主要的DMI类型。
一次性大量加载数据的DMI:当对一个现有系统进行升级,或更换别的产品时,常常需要将原系统的数据移植到新的系统中。
另外,当升级数据库版本时,也可以使用大量加载数据的数据移植。
这种DMI的一个特点是,强调数据合并,新系统所使用的目标数据库通常已经含有了大量支持新系统运行的原数据,此外,此类DMI常用于非24X7的系统,且原系统与新系统数据模型相近或完全一致。
持续分阶段移植:顾名思义,原系统数据不是一次加载到新系统中。
而是分阶段分步的导入。在这种情况下,移植常采用批处理调度,以一定的频率,按特定大小或特定模块来完成数据导入。
这样做有多种原因,比如源与目标之间的数据模型相差较大,有多个源,或者网络传输的速度问题等等。
DMI具体过程流的一些要点
这部分工作是DMI需求分析的一部分。
通常包括如下: 实体的移植顺序。比如,主表应该先于子表被移植。
具体的移植批任务的执行顺序和各任务之间的依赖关系。
如何处理任务的常规信息日志,错误日志以及专用追踪日志。
批任务的重运行能力。
比如,一旦任务失败,数据只导入一半,重运行任务能否使批次实现数据库的原子性,即必须完整导入或者完全未导入。
当采用分阶段移植时,对于登台区数据的清理策略。