什么更有效,SQL或平面文件访问?

时间:2010-07-22 07:32:37

标签: c# asp.net sql

我正在考虑升级实时程序ASP.NET C#,它需要非常频繁更新的数据并将其从一个数据库移动到另一个数据库。

目前正在使用一个中间人app,它使用SqlBulkCopy从一个应用程序中插入并插入另一个应用程序。

让源数据库服务器写一个平面文件并且中间人从该平面文件中收集是否更好?

还是sql触发器? 还是DTS?

任何建议都会很棒!

由于

5 个答案:

答案 0 :(得分:2)

这实际上取决于您传递的数据量以及您正在进行的转换量(如果有)。 DTS / SSIS是您列出的最具扩展性和功能丰富的选项。

您期望什么样的负荷?你在进行复杂的转换吗?如果你有资源使用SSIS,我会建议它,因为它会扩展到你想要的高度。

答案 1 :(得分:2)

读取和写入平面文件更有效。但是如果你想使用索引搜索和其他SQL功能,最好使用SQL。

答案 2 :(得分:2)

据我所知,使用SQL服务器有三种不同的“标准”方法:

  • Replication。通常用于使数据库与发布者和订阅者保持同步。
  • SSIS(原DTS)。可以通过预定的工作自动完成。
  • Service Broker。块上的新孩子。

很有可能这些都比写出平面文件并阅读它更好,但是唯一可以确定(在您的环境中)测试和计时不同方法的方法。

答案 3 :(得分:1)

您是否考虑过SQL Server ReplicationSSIS

答案 4 :(得分:0)

如果你喜欢写C#而不喜欢SSIS。您可以将Rhino ETL视为替代方案。 我发现它的表现很快。

当您不需要写入磁盘时,平面文件似乎没必要。