我有跨地理位置的数据库,需要近乎实时地同步数据库。
根据我的信息,SSIS ETL 仅适用于批量更新。实时更新可以通过 Web 服务或服务总线实现。
此外,只有 SSIS ETL 可以处理更大的卷。
我正在寻找数据速度或数量的限制,超出我无法想到的 Web 服务或服务总线和权衡分析。
如果要求是更大的卷和近乎实时的更新,那么适合什么方法。
我建议你看看SqlBulkCopy类。它允许你从 .Net 代码执行快速大批量插入(只是插入,而不是更新)。 因此,您的代码可以从总线上抓取一堆消息,然后非常快速地插入它们。
我们正在为与您类似的问题提供解决方案原型。SqlBulkCopy 似乎比普通插入语句快至少 10 倍,很可能更快。这是将我们的流程从 8 小时缩短到仅 15 分钟的主要因素,但不是唯一因素。