Eu li aqui que alguns dados extras serão armazenados por linha, para que possamos ver uma degradação no desempenho, mas que outros riscos existem?
por exemplo. Isso afetará a recuperação do banco de dados? Há mais alguma coisa que precisamos fazer para tirar proveito disso?
Eu pretendo executar estes comandos:
ALTER DATABASE DatabaseName SET READ_COMMITTED_SNAPSHOT ON
ALTER DATABASE DatabaseName SET ALLOW_SNAPSHOT_ISOLATION ON
Acredito que isso nos dará algo mais próximo do oracle, onde, se uma transação estiver atualizando outras, ainda será possível ler os dados antigos. Isso está correto?
Estou investigando isso porque estou cansado de problemas de bloqueio no SQL Server 2005. Espero que isso reduza os bloqueios ocasionais que nossos usuários veem, ajude o desempenho geral de nosso aplicativo e incentive nossos desenvolvedores a fazer mais de uma operação por transação sem medo.