1

我们有许多内部 SQL Server 在运行,并且有一些日常工作正在传输数据。我们还有一些外部数据库,我们将使用 view 或 txt 来传输数据。

现在,我们正在使用 DTS & SSIS。但是由于某些原因,我们的经理不喜欢DTS/SSIS,所以我们从DTS/SSIS搬出来了,但是我们仍然需要传输数据。他们建议开发一些应用程序,用于加载数据/文件,然后插入目标。

这是一个好的解决方案吗?有什么建议吗?

我认为唯一合理的原因是:如果出现性能问题,在 DTS/SSIS 中很难找到原因

非常感谢!

4

1 回答 1

1

在服务器之间传输数据的方法有很多。您可以使用带有 OPENROWSET 查询的链接服务器,可以使用带有暂存文件的 BCP 实用程序,或者您可以使用 PowerShell 脚本等等。

最合适的方法取决于您的具体情况,但对我来说,SSIS 通常是最合适的技术,尤其是在涉及转换的情况下。SSIS 拥有 ETL 世界纪录(尽管这是一个使用大量硬件的人为实验),因此应该能够满足您的性能需求。

您可以做很多事情来提高 SSIS 数据移动的性能,并且您的问题中没有足够的信息来确定您需要做什么,但这里有一些关于 SSIS 性能的指针:

  • 确保数据流中的缓冲区大小设置得当,通常高于默认的 10000 行,但具体大小取决于您的内存容量。

  • 确保您使用的是具有快速加载功能的 OLEDB 目标

  • 下载 Balanced Data Distributor 组件并并行加载表。这还需要堆或按顺序数据上的 TABLOCK 和聚集索引上的 TF 610。

  • 避免同步转换,例如排序。

于 2012-10-15T13:51:13.710 回答