![]() |
1
10
SQL Server使用 TDS protocol . 和 MSDN 坦白说,我不会担心的。数据的GBS将花费时间,无论 怎样 不幸的是,它完成了。 |
![]() |
3
4
正如彼得M所说,测试一下。 没有一个真正足够的计算可以为您提供足够的信息。 事实是,有太多的变量需要考虑。例如: NIC的实际传输速率是多少?请注意,此速率将根据安装的网卡以及这些网卡使用的驱动程序而有所不同。你可以很容易地得到一张1GB卡,因为司机的问题,它只能以300MB的速度传输。我甚至看到过同一个制造商的两张卡具有相同的驱动程序,由于其中一张卡的配置稍有不同,传输速度也不同。 这两台机器之间还有什么其他设备?同样,根据硬件、操作系统等的不同,您可能会看到非常不同的数字。一台TrendNet提供的价值100美元的8端口1GB非网管交换机的吞吐量将与价值5000美元的1GB Cisco网管交换机完全不同。 您还必须考虑传输时的现有网络“天气”,这将共享同一线路上其他网络流量的吞吐量是多少。这将是一个瞬变因素,因为现有的网络负载会随着不同的需求而变化。 另外,有些网卡支持TCP卸载,有些则不支持。如果您的网卡不支持,那么这些机箱上的CPU所做的任何其他操作都会妨碍有效传输速率。 接下来,必须考虑硬盘。考虑到这是大量数据,那么各种硬盘驱动器的读写速度将产生影响。当然,网络可能实际上能够以90%的效率运行,但是如果您谈论的是大量的数据,硬盘驱动器本身可能无法跟上,因此导致效率下降到25%或更低。 关键是,您必须对其进行测试,到最后,SQL Server使用的协议对您的发现将无关紧要。不要只运行一个测试,运行一个 许多 真实世界的测试。只有这样,你才能得出一个平均值;这个平均值可能会根据当时的情况而有所下降,但你应该能够在10%以内。 |
![]() |
4
0
根据我的观察,标准的SQL命令会导致很多往返。因此,对于传输大量数据,如果您可以将其重述为上载一个表,那么这将有所帮助。然后您可以使用大容量复制操作,这样效率更高。见: Bulk Copy Operations in SQL Server (ADO.NET) 和 bcp Utility . |
![]() |
5
0
实际上,TDS协议是一种外部缓慢的协议。SQL Server是为处理数据而优化的,而不是为前后整理成吨的数据而优化的。尽管表示开销并不很大,但事实上,请求-响应协议和缺少BoxCare使得它与专用的高吞吐量协议相比非常缓慢,甚至在SQL Server内部(如数据库镜像或Service Broker协议)。但即便如此,由于TDS的速度和实际速度一样慢,通过TDS管道全速拍摄的SQL Server将覆盖您的.NET客户端,这是有保证的。 总的来说,如果你来问一个像你问的问题,这意味着你做错了。 |
![]() |
Duvan · 将逗号(,)替换为点(.)[副本] 2 年前 |
![]() |
Mateen Bagheri · 选择表的计数并选择其自身 2 年前 |
![]() |
SoT · SQL Server中求和函数的工作方式 2 年前 |
![]() |
NKAT · 将列值聚合到列表中会产生错误 3 年前 |
![]() |
deanpillow · 返回两列中有一个匹配值的记录 3 年前 |
![]() |
snowflakes74 · 在Dapper中异步查询多个结果 3 年前 |