我有12个数据库,共计大约1.0TB,每个运行SQL 2005企业不同的物理服务器上 - 所有具有完全相同的架构。我需要这个数据卸载到一个单独的单一数据库,使我们可以用于其他用途(报告,Web服务,ECT),最大1小时延迟的使用。

还应当指出的是,这些服务器位于同一机架上,通过千兆连接,并且插入件的数据库是最小的(平均2500记录/小时)相连接。 当前的方法是非常薄片状:在数据正在被复制(SQL服务器事务复制)从各12个服务器的一个数据库中的另一个服务器(在肯定的,来自12层不同的服务器12个不同的雇员表到单个雇员表上的不同服务器)。

每个表具有主密钥和行是唯一的在所有的表(存在FacilityID在每个表中)。

什么是我的选择? 必须有一个简单的方法来做到这一点。

有帮助吗?

解决方案

什么是与SQL Server事务复制的问题,很多地方使用它呢?它看起来像它被设置很好,在每个数据库FacilityID?

其他提示

根据你有多少表处理它可能更容易设置一些从每个表中移动数据SSIS包ETL。如果设置了包配置和架构是你应该能够使用同一套软件包,对所有数据库相同。如果你有超过10-20桌我可能要么不做ETL包或我将肯定做出他们的创作在某种程度上自动化。

如你有企业版,并与数据大小,你提到相同的模式,一种方法可以是使用Partitoned表,各1个的目标服务器上的不同的来源,例如,你可以使用的分区键的[ FacilityID]列你提到假定这是unqiue对于每个源,那么就按正常数据动议areused到分区之间移动数据的操作,这将然后给你一个合并表(分区)听起来就像是后。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top