【发布时间】:2016-09-08 09:42:04
【问题描述】:
我正在将数据从 ssis 插入到 Table1 中。数据每分钟加载速度非常慢(5-10k 记录)正在插入我在目标任务中选择了快速加载选项,该选项也没有帮助我。
在同一服务器中,另一个表(表 2)的数据加载速度非常快,与表 1 相比,它具有更多的数据和更多的索引。
为什么Table1数据插入慢?
请帮帮我。
【问题讨论】:
-
表定义、索引、触发器等?
我正在将数据从 ssis 插入到 Table1 中。数据每分钟加载速度非常慢(5-10k 记录)正在插入我在目标任务中选择了快速加载选项,该选项也没有帮助我。
在同一服务器中,另一个表(表 2)的数据加载速度非常快,与表 1 相比,它具有更多的数据和更多的索引。
为什么Table1数据插入慢?
请帮帮我。
【问题讨论】:
加载包速度变慢的原因可能多种多样。通常,它们与内存、目的地、索引、日志等有关。您是否尝试过等效查询的性能?如果这样更好,您可以使用Execute SQL Task 而不是data flow task。
在您的包中,您是否有 OLE DB Command 转换或其他完全阻塞的转换,例如 fuzzy lookup 或 fuzzy grouping?因为 OLE DB 命令转换是逐行进行的,所有完全阻塞的转换都会产生大量开销。
您似乎正在使用 OLE DB 目标,因此您可以相应地更改 MICS(最大插入提交大小)和 RPB(每批行数)。因为如果你在目标表上有聚集索引,那么大批量会对内存产生负面影响。
【讨论】: