我想知道将大量旧数据迁移到新系统数据库的方法是什么(表名和列与旧系统不同 - 需要映射表和列)?
1)是否应该是数据库到数据库(意味着编写脚本从旧数据库中提取数据并仔细映射并将其放入新数据库)?在上面写单元测试来检查完整性。
(或者)
2)我应该使用新的系统模型(使用Java Persistence API)程序从旧数据库中提取数据,然后将其放入对象(Hibernate 或JPA Entity 对象)并持久化它们吗?
和第一个一起去。这就是 ETL 工具的诞生。
我不建议编写 Java 程序。开发和测试一次性使用需要付出很大的努力。为工作使用正确的工具。
我目前正在进行从 MySQL 到 Oracle 的数据迁移,我发现最好遵循这个过程。
这将最大限度地减少您可能遇到的任何数据完整性问题和数据映射问题。