方案设计
18
③时机成熟时,建设新系统,对旧数据库进行彻底数据库移植,淘汰旧数据库。这个过程在上一节中已有介绍,现在仅就新数据库设计完毕后,新旧数据库同步、移植相关问题进行探讨。4321数据共享同步联邦式数据库架构中,异构数据库之间共享和同步的并不是分离的概念,共享是由同步实现的,如何同步更新本地(旧)数据库和中央(新)扩展的数据库是必须要解决的问题。
图十带准备态的状态转移图7联邦式数据同步需要在两个层次上采取措施:①应用层:两阶段提交。对应用程序进行双向提交修改,在此过程中需要考虑事务阻塞等的情况下的处理方案,这方面比较成熟的方案是如图十所示的两阶段提交方案,详细资料请参考魏昕路在2005年做的研究报告。②数据库层:数据转换复制。两阶段提交解决了数据同步的实时性问题,但因其涉及到应用程序修改,实现困难较大,根据现存信息孤岛除了部分实时性要求较高的如财务相关部门,其他有很多同步共享对实时性要求并不高,半天同步一次或一天甚至一星期同步一次也可,向这类同步需求,对其也进行两阶段提交的应用层修改,复杂性和成本都过高,必须提出一种较经济的解决方案,数据库层数据复制勿庸置疑的成为了一种首选的方案。它有两个明显的优点:复杂性稍低、通用性高。不仅可以直接用来独立完成同步,而且可以为两阶段提交提供周期性同步,增加两阶段提交的可靠性。不过,由于异构数据库之间数据缺乏统一的规范,因此复制时必需要对数据进行转换。转换完毕才能将数据加载到新数据结构中去,基本上就是说,在数据转换复制过程中需要增加一个数据清洗式的步骤。4322数据一致性由于使用了不同的代码标准(旧数据库系统未必使用国标编码),对新旧数据库之间进行共享同步必须面对不同的编码标准带来的数据一致性问题。如:人事处性别代码,女为1、男为2,而新标准代码男为1、女为2;设计方案中必须考虑对这种情况的处理。4323数据库移植当旧数据库彻底报废时,移植遗留数据是一个主要问题,数据的移植首先需要的也是数据转换,他主要涉及到三个步骤:
f信息孤岛问题数据库层优化解决方案设计
19
①备份遗留数据②转换遗留数据到新格式③加载数据到新数据库
44
数据库转换移植工具的需求
上一节中提到了进行联邦式数据库整合必须面对的问题,显然要实现联邦式整合,我们必须设计一种方式来转换数据,进行数据库复制、移植,因为要联邦解决的信息孤岛不止一个,频繁的接口设计必r