数据复制与服务总线与App Fabric对比?

时间:2012-09-07 22:11:39

标签: sql-server architecture soa

我构建了一个需要使用源数据库中的数据的应用程序。源数据库有几个问题,包括:

  • 效果问题
  • 具有可怕键,命名约定等的遗留结构
  • 我的应用程序不关心的大量数据

我想设置一个特定于应用程序的SQL Server数据库。新数据库将填充来自源数据库(以及其他一些源系统)的数据子集。数据将始终从源数据库单向移动到特定于应用程序的数据库(即 - 数据不会同步回源)。它将具有与源数据库不同的DDL模型。 数据不需要绝对实时同步,但任何超过几分钟的延迟都可能导致问题。 如何将数据从源数据库移动到应用程序数据库中?我应该使用

  • 复制
  • 编写自定义SSIS包
  • 深入了解更高级别的SOA 解决方案如nServiceBus,AppFabric等?
  • 其他一些想法?

每个人的利弊?

1 个答案:

答案 0 :(得分:0)

听起来像你不需要像NServiceBus这样的消息服务 - 这将涉及修改遗留系统,以便在数据发生变化时发布事件,我希望你不想进入。因为在您的情况下您的本地数据存储稍微过时是可以接受的,所以可以接受SSIS包。

但是,如果源数据库非常大,这可能是一个问题,因为您将每隔几分钟执行一次。此外,如果旧系统的用户已经遇到性能问题,则每隔几分钟运行一次的SSIS包将无济于事。也许您可以引入源数据的时间戳,以便它只复制新的/修改过的数据?

如果源数据非常大并且性能严重问题,那么NServiceBus可能是个好主意。您还可以考虑使用Mass Transit或您自己的基于MSMQ的简单解决方案。但是,这意味着让您亲手处理遗留代码。