旧系统重构,数据迁移问题
目前的情况:
1、概况
现在公司的项目代码非常的混乱,数据库表的设计也是非常的糟糕,这样,系统的升级和维护变得非常
的困难。鉴于此,领导要求将旧系统升级重构。
最终英明的领导将这个重任交给了我( )
2、技术概况
旧系统是使用jdbc+struts1
新系统打算用struts2+hibernate+spring
将会遇到的问题:
第一,要改动表吗?
这里说的改动表包括,新增表,修改原来的表。
最开始我是这样跟领导说的:
在这次重构中,不改动表结构,只是代码级别的修改(需充分发挥hibernate的强大能力),以便尽量减少数据迁移的问题。
但是后来我发现,原系统数据库设计很不合理,而且代码也是很乱。如果不改动表的话,难以实现。
光是看代码就死人了。
目前的话,我打算这样做:
旧系统能够用的表尽量用,对于那些设计很差的表,我就打算用新的表来重新设计一下。但是这样,
数据迁移会是个很棘手的问题。
第二,数据迁移问题
如果不改动旧系统的任何表结构的话,数据迁移问题应该不大。
但是,如果我新增了一些表,就得把旧系统的中的数据存到新表中,而旧数据是分很多种类型的,如:
基础数据、历史数据、流程数据(最难搞).
关于数据迁移问题,我想问的是:
如果我新增了一些表,也修改了旧表的结构,请问数据迁移问题可以搞的定吗?一般来说。
总结提问:
目前的话,如果不改动表的话,重构(部分是重新设计)是很难完成的。
但是改动表之后,数据迁移也很难搞。请问我该如何做?