我在 SSIS 中使用 bulk insert 来填充SQL Server中大约10M行的表 . 我已经搜索了很多关于它的内容,但仍然找不到答案 .
我应该选择多少 Rows per batch ?我应该选择多少 Maximum insert commit size ?
收到每个人的解释会很棒 .
我测试了它并更改了 Rows per batch . 到目前为止,我收到的最好成绩是5M .
感谢您的帮助!
应将ROWS_PER_BATCH设置为“源中总行数”的估计值,然后SQL服务器将其用于优化查询计划以在单个操作中加载此数据 .
因此,根据我的解释,建议的设置应如下:
如果指定了“最大插入提交大小”,则不要打扰设置“每批行数”,因为它无论如何都会被忽略
如果未指定“最大插入提交大小”,即保留为0,则将“每批行数”设置为最佳估计将加载的“总行数”,以便使SQL Server能够选择最有效的方法执行操作 .
对于 BatchSize 属性,我认为如果将其设置为0,则所有数据都将被推送到一个批处理
BatchSize
2 回答
应将ROWS_PER_BATCH设置为“源中总行数”的估计值,然后SQL服务器将其用于优化查询计划以在单个操作中加载此数据 .
因此,根据我的解释,建议的设置应如下:
如果指定了“最大插入提交大小”,则不要打扰设置“每批行数”,因为它无论如何都会被忽略
如果未指定“最大插入提交大小”,即保留为0,则将“每批行数”设置为最佳估计将加载的“总行数”,以便使SQL Server能够选择最有效的方法执行操作 .
对于
BatchSize
属性,我认为如果将其设置为0,则所有数据都将被推送到一个批处理