【发布时间】:2012-06-30 22:38:24
【问题描述】:
我正在寻找这方面的知识,因为我知道有一种方法可以获得我想要的东西,但我想知道这是否是最好的方法。由于项目蔓延,曾经非常简单的应用程序的数据库变成了一个过于复杂的怪物,而且在它工作时管理并不容易。
我现在有机会从根本上重新开始,但只是逐步将功能从旧应用程序迁移到新应用程序。这要求我使新数据库与旧数据库保持同步,幸运的是,这只是一种方式,因为不会在需要迁移回的新数据库上创建任何数据。
目前考虑的选项是 SSIS 和使用普通旧 C# ADO.Net 的 Quartz 触发的 Windows 服务。我认为 SSIS 可能是一个坏主意,因为它可能是 upsert 的噩梦,需要创建临时表,然后进行合并,并且架构差异非常广泛,因此 SSIS 逻辑会令人头疼。 ADO.Net 方法是我倾向于的方向,因为数据读取器、批量插入和 LINQ 应该可以很好地完成这项工作。然而,考虑到这在我之前必须有多少人受到影响,我认为必须有更好的方法。你们都用什么方法?
为了得到更具体的细节是:
- SQL Server 2008 R2
- ~200 万行,大约 30 个表 ->~20 表格
- 每个数据库将位于完全独立的数据库服务器上 使用不同的凭据
非常感谢
【问题讨论】:
标签: sql-server-2008