Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 保持相同的连接_Sql Server 2008_Ssis - Fatal编程技术网

Sql server 2008 保持相同的连接

Sql server 2008 保持相同的连接,sql-server-2008,ssis,Sql Server 2008,Ssis,所以我继承了一个dtsx包,它基本上只是移动一堆文件。它做的好事是记录每一步,而坏的是记录每一步。目前,这一软件包在每次运行时对日志进行10000多个插入/更新,并且大约每两小时运行一次 我注意到在DB连接上,Retain same连接被设置为false。现在,我不是SSIS专家,但在其他语言中,不共享DB连接会导致大量的消耗(因为连接和断开DB的连接在时间上相当昂贵),但在我的搜索中,这似乎只是允许跨SSIS项进行事务的解决方案 我应该看到这么多连接到DB的速度会提高吗?如果我把它设置为真的,

所以我继承了一个dtsx包,它基本上只是移动一堆文件。它做的好事是记录每一步,而坏的是记录每一步。目前,这一软件包在每次运行时对日志进行10000多个插入/更新,并且大约每两小时运行一次

我注意到在DB连接上,Retain same连接被设置为false。现在,我不是SSIS专家,但在其他语言中,不共享DB连接会导致大量的消耗(因为连接和断开DB的连接在时间上相当昂贵),但在我的搜索中,这似乎只是允许跨SSIS项进行事务的解决方案

我应该看到这么多连接到DB的速度会提高吗?如果我把它设置为真的,是否还有其他问题可能会悄悄出现?我还没有试过,因为测试环境目前需要很长时间才能重建到可用状态


感谢

在现代硬件上,网络连接速度很快,增加并行性通常会提高性能。这就是为什么SSIS中的默认设置是不保留相同的连接


我已经构建了类似的包,在逻辑复杂和/或脆弱时“过度共享”日志记录。假设它正在记录到数据库,我会在最后添加一个cleanup SQL脚本,如果一切都成功完成,该脚本将删除大部分记录数据,例如所有信息和进度消息。

整个软件包唯一做的数据库事情就是记录?没有加载这些文件或类似的东西?没有文件到数据库。DB的唯一用途是日志记录。他们在包级别的执行前/执行后事件中是否有执行SQL任务,或者包中是否充满了所有这些日志记录调用?默认情况下,每个组件都应该有自己的连接副本,以便在完成连接后将其返回到池中。如果事件处理程序中只有记录器,那么它的行为就像您将RetainSameConnection设置为true一样。不过我猜,事实并非如此,所以是的,您应该通过更改属性来获得更好的性能。由于您没有任何其他数据库工作,因此不应该有任何需要注意的事情4您的假设是正确的,这不是通过事件处理程序完成的,而是通过包中的许多执行SQL任务对象完成的。只是做了一个快速计数,有16个不同的独特的SQL任务只是为了记录!