使用带有TABLOCK的INSERT BULK防止事务日志增长

时间:2018-09-16 00:34:59

标签: sql-server apache-spark jdbc bulkinsert sqlbulkcopy

我正在编写一个将从Spark-Scala应用程序写入SQL Server的过程。它会为每个数据分区(按预期)生成多个INSERT BULK,批量大小为10万条记录。

当我监视事务日志时,可以看到它已满,并且我希望使用INSERT BULK不会。

您能建议我如何实现每批提交吗?

1 个答案:

答案 0 :(得分:1)

将数据库恢复模型设置为完全时,批量插入将写入事务日志,并且事务日志将继续增长。 您有两种选择:

  1. 在加载数据时将数据库恢复模型更改为批量记录,然后将其重置为完整

  2. 修改您的过程以在加载每批(或每几批)后备份事务日志