terça-feira, 26 de julho de 2016

Propriedade do Database - Delayed Durability

A propriedade "delayed durability" do database muda a forma de gravação do log em disco.


Por padrão, a mesma está desligada (DISABLED), e o log é gravado em disco assim que possível, conforme a fila.

Quando esta opção é alterada para ALLOWED ou FORCED, a transação é marcada como gravada e o processo de gravação em disco é feito em background.

Fazendo um paralelo com o Oracle, trata-se da opção COMMIT WRITE... NOWAIT.

Neste momento, o banco está abrindo mão do "D" da regra ACID, e o banco pode se comportar de maneira inesperada, ficando inconsistente.

Em ambientes onde percebe-se o wait tipo WRITELOG, algum DBA pode recomendar que esta opção seja alterada, para resolver o gargalo do log de transações.

Eu preciso dizer que a alteração desta propriedade é extremamente desaconselhável.

Principalmente, se o seu sistema não tolera perda de dados (algum tolera ?)

Não digam que não avisei...

Mais informações:
http://sqlperformance.com/2014/04/io-subsystem/delayed-durability-in-sql-server-2014

Nenhum comentário: