首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解释和微调BATCHSIZE参数?

解释和微调BATCHSIZE参数?
EN

Stack Overflow用户
提问于 2011-10-12 12:29:45
回答 1查看 219关注 0票数 0

因此,我开始尝试使用BULK INSERT语句,并开始喜欢上它。使用BULK INSERT只需要1-3个小时就可以完成SQL Server Import/Export Wizard 7小时的工作。然而,我观察到的是,完成的时间在很大程度上取决于BATCHSIZE规范。

以下是我观察到的一个包含5000万条记录的5.7 GB文件的时间:

代码语言:javascript
复制
BATCHSIZE = 50000,  Time Taken: 17.30 mins
BATCHSIZE = 10000,  Time Taken: 14:00 mins
BATCHSIZE = 5000 ,  Time Taken: 15:00 mins

这只会让我感到好奇:有没有可能为BATCHSIZE确定一个好的数字?如果可能,它依赖于什么因素?可以在不运行同一查询数十次的情况下近似计算它吗?

我的下一次运行将是一个包含7.8亿条记录的70 GB文件。如有任何建议,我们将不胜感激。我会在完成后报告结果。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-12 13:10:00

有一些信息here,看起来批处理大小应该尽可能大;文档说明,通常批处理大小越大,性能越好,但您根本没有体验到这一点。从10k开始,似乎是一个很好的批处理大小,但我会从其他角度考虑优化批量插入,比如将数据库置于简单模式,或者在导入竞争期间指定tablock提示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7735274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档