启用 read_committed_snapshot 时的 Sql server 快照隔离开销

Eam*_*nne 6 performance sql-server snapshot

当 SQL Server 的读提交快照开启时(因此需要一定数量的行版本控制),是否有任何额外的开销仅由启用快照隔离引起?

快照隔离通过使行稍大一些并需要一些 tempdb 来存储以前的版本直到提交,即使对于非快照事务也是如此,从而导致一些开销。据我了解,这个基础设施对于 read-committed-snapshot 也是必要的。因此,我是否可以假设,只要读取提交的快照已经打开,启用快照隔离对非快照事务没有额外的开销?

Seb*_*ine 7

底层机制几乎相同。但是,在快照隔离中,版本可能会保持更长的时间,从而对整体资源造成更高的压力。