Page Verify – CheckSum
CheckSum é uma nova feature do SQL Server 2005 que permite que o SQL identifique uma possível corrupção nas páginas de dados. O CheckSum pode ser habilitado ou desabilitado a nível de banco de dados.
Ele funciona da seguinte maneira, sempre que o SQL Server escreve ou lê uma página ele calcula o CheckSum e grava esta informação no header da página depois ele usa este CheckSum para verificar possíveis problemas de IO, por exemplo, estou inserindo um registro em uma determinada tabela, ao gravar os dados do registro na página o SQL irá gerar um CheckSum e gravar esta informação no Header da página, quando eu efetuar um select para retornar este registro, o SQL gera novamente o CheckSum baseado nos dados da página e compara com o valor gravado no Header, caso os valores sejam diferentes então uma possível corrupção aconteceu.
O algorítimo para gerar o CheckSum é bem complexo e pode representar uma possível queda de desempenho de CPU, aja visto que sempre que o SQL ler ou escrever uma página ele irá fazer o calculo do CheckSum, não estou dizendo para que você desabilite esta opção, apenas informando que pode haver um possível overhead de CPU.
Estou preparando um vídeo sobre a nova feature de Automatic Page Repair no Database Mirroring do SQL Server 2008 para mostrar como o SQL Server identifica que uma página esta corrompida e então automaticamente lê os dados do Mirror e corrige o valor corrompido no servidor principal.
Keep eye…