数据仓库迁移及初始花思路
背景:在当前数据仓库基础上做新一代数据仓库。这里涉及2个数据仓库,当前数据仓库和新一代数据仓库。
新一代数据仓库迁移指就是把当前数据仓库数据迁移到新一代数据仓库,涉及以下3个点,1迁移范围、2迁移数据源、3迁移规则。
关于迁移范围,迁移范围指新一代数据仓库那些数据需要做迁移。首先来说下新一代数据仓库架构,新一代数据仓库分为4层,第一层 缓冲层(LDS),第二层 模型层(PDM)\貼源层(ODS)\大数据平台,第三层 共性加工层(GDM),第四层 仓内集市层(费用集市、债券统计集市、业务监控集市、连续性集市),关于第二层的大数据平台我说明下缓冲层数据剔除入模型和貼源其它均入大数据平台,同时缓冲层数据均进入大数据平台。回到正题迁移范围,从4个层级来说,迁移范围主要指第二层、第三层、第四层的数据迁移,其中第二层是重中之重,只要第二层迁移完成,第三层、第四层数据就有源了。关于第二层包含了3部分,模型层和貼源层是重点,当然这2部分也涉及上千张表,工作量和复杂度仍然很大。于是我们从应用需求角度出发,对这些表进行分类,第一类新建集市使用,第二类连续性集市用到,第三类无集市用到。新建集市没有历史数据是迁移重点,连续性集市有历史数据为次重点,无集市用到可以通过初始化积累历史数据。
关于迁移数据源,得先说下当前数据仓库架构,共分为4层,第一层 LDDS\OPDS\ARDS,第二层 ODS,第三层 ADS(ADB\HTIS),第四层 报表层。迁移数据源主要来源ODS和HTIS,其它层补充。
关于迁移规则,新一代数据仓库和当前数据仓库架构和设计都会有差异,这个差异解决办法就是迁移规则。关于这个迁移规则可以参考业务系统迁移规则,反推数据仓库迁移规则。迁移规则获取涉及到业务项目组输入,这就需要界定业务规则交付物及如何获取增量变化。
关于初始化,就是业务系统全量数据插入数据仓库,如有迁移数据,需在此基础上进行覆盖操作。这得先说明下目标存储方式:拉链、终态、切片。无数据迁移拉链表处理方式自拉链操作,有数据迁移拉链表处理方式先把迁移数据进行闭链操作,再获取最新数据进行开链;终态和切片表在迁移基础上进行覆盖操作,合并表个别源系统数据有重复问题可以进行增量覆盖。
关于迁移难点,1业务迁移规则作为输入的持续变化,并无完备的变更记录。2根据业务规则反推迁移源,迁移源选取是否合理,涉及回看当前数据仓库逻辑。
以上就是迁移和初始花方法和流程。当然数据迁移完成要进行测试,测试分为单元测试、系统测试、集成测试及用户测试。单元测试和系统测试重点就是业务初始化主键与迁移主键比对,如果主键一致,说明迁移在大方向上是成功的。再在集成测试和用户测试发现问题的基础上进行迁移和初始化修正,以保证准确性。