Operações minimamente logadas

Olá,

Um dia desses nos fóruns do MSDN um usuário estava com dúvidas sobre como otimizar um UPDATE. (http://social.msdn.microsoft.com/Forums/pt-BR/520/thread/3b4d6544-04ae-4766-ab55-932ece35201a)

Eu respondi para o usuário que, dependendo da necessidade dele, ele poderia alterar o modo de recovery do banco de dados para SIMPLE para que as operações fossem minimamente logadas. Entretanto, minha sugestão estava incompleta e de certa forma, incorreta.

A explicação detalhada foi dada pelo Gustavo Maia Aguiar (http://gustavomaiaaguiar.wordpress.com/) onde ele explica que o UPDATE não é uma operação minimamente logada e que o tamanho do log vai ser o mesmo após o UPDATE, com o banco de dados estando em modo de recovery FULL ou SIMPLE.

Bem, sendo assim, para entender melhor a resposta do Gustavo e não falar mais besteira, fui pesquisar sobre operações minimamente logadas.

As operações abaixo são completamente logadas num banco de dados em modo recovery FULL mas são minimamente logadas no modo recovery SIMPLE ou BULK-LOGGED:

* Operações de bulk import (BCP, BULK INSERT, INSERT…SELECT)
* SELECT INTO

Ainda, se o banco de dados já está no modo recovery SIMPLE ou BULK-LOGGED, as seguintes operações também são minimamente logadas:

* CREATE INDEX
* ALTER INDEX REBUILD ou DBCC REINDEX
* DROP INDEX

Tive como referência o Books On-Line para as explicações (http://msdn.microsoft.com/en-us/library/ms191244.aspx)

Abraços!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s