Answers:
因为它必须先写入缓存,然后再写入TempDb(行版本),然后才能返回到调用方。
不,这是不正确的。它某种程度上意味着存在版本控制的写入具有更高的延迟,因为每次写入都必须接触磁盘(对于tempdb),这是不正确的。写入tempdb也是写入“缓存”。唯一的“等待”发生在必须加固日志的COMMIT时间。确实,必须对数据库日志和tempdb日志进行版本控制,但这并不一定意味着更高的延迟(IO应该在不同的存储路径上并行运行,tempdb与经常使用的LDF存储在单独的驱动器上,对?)。有关完整的解释,请阅读工作原理:Bob Dorr的SQL Server I / O演示文稿我真的希望您的DBA对此理解要比您在此处传达的要好。
正如我在您的另一篇文章中提到的那样:快照对于INSERTS来说没有任何成本,并且可以轻松地减少更新和删除的成本。行版本控制资源使用说明了权衡。此时,您可能应该在实际的工作负载下进行测试,这是正确评估您将遭受的影响的唯一方法。
sys.dm_db_file_space_usage
在生产服务器上检查该怎么办。如果version_store_reserved_page_count
非零,则您已经在使用versionstore。