我正在将130GB文本文件BCP到Azure SQL数据库中。在最后800条记录中,BCP停滞。我将其保留了8个小时,Azure数据库从150GB减少到30GB(已回滚),该表为空,并且DTU的使用率保持为0。错误地,我在表上留下了一个聚集索引,所以我发现可能与回滚有关。因此,我删除了索引,然后重新运行它,它的上传速度更快,但似乎又停滞了。
是什么原因导致它停止/回滚?任何日志或我可以检查的东西吗?
答案 0 :(得分:1)
在不使用BCP
参数指定批处理大小的情况下执行-b
时,整个文件将在单个事务中处理。在这种情况下,发送的行消息仅指示仅进度。在单个事务中对大型文件执行BCP操作将需要大量事务日志空间,并且由于存在大量脏页,因此常常还会降低性能。
使用-b
参数,指定的批处理大小控制每个事务的大小。每个批次都是单独提交的,进度消息也将反映批次的大小。