Existe uma razão pela qual um DBCC CHECKDB deve ser executado a cada 15 minutos

2

Estou ajudando um cliente com um aplicativo da web de mercado vertical escrito em ASP.NET. Ele usa o SQL Server 2005 para o back end. O cliente está tendo problemas de desempenho com o aplicativo e o suporte do fornecedor não foi muito útil para resolver o problema. Então o cliente me levou a ter um novo olhar para o problema. Ao fazer uma revisão básica do sistema e do hardware, observei que um trabalho de "Manutenção" estava agendado no SQL Server para ser executado a cada 15 minutos que executa um DBCC CHECKDB e, em seguida, um Backup do log de transações. Esse trabalho levava aproximadamente 6 minutos para ser executado durante o horário comercial.

Quando questionei a equipe de suporte do fornecedor sobre isso era necessário e poderíamos reagendar o DBCC CHECKDB uma vez por noite, a resposta era "que era informação proprietária e não tocasse em nada".

O que eu estou basicamente procurando entender é. Existe uma razão pela qual o DBCC CHECKDB deve ser executado a cada 15 minutos? Além disso, o óbvio afeta enquanto o trabalho está em execução. De que outra forma a execução desse comando afeta o desempenho do sistema? Por exemplo, isso faz com que o SQL Server perca o que tem na memória?

    
por Frank Perez 04.03.2010 / 12:23

2 respostas

2

O DBCC CHECKDB pode, de fato, afetar o desempenho do sistema - CPU, E / S de disco e memória podem ser todos afetados por ele. Aqui estão alguns documentos da Microsoft que descrevem como o DBCC CHECKDB pode afetar o desempenho do seu sistema:

link
link

A recomendação geral da Microsoft é que ele deve ser executado durante os tempos de baixo uso - por isso, uma vez durante a noite ou algo parecido - não a cada 15 minutos todos os dias.

    
por 04.03.2010 / 16:13
0

DBCC CHECKDB é para mostrar quaisquer problemas de corrupção em seu banco de dados. A menos que haja hardware subjacente ou outros problemas que dêem a acreditar que isso acontecerá sob a operação normal do aplicativo, não sei ao certo por que isso pode acontecer.

A resposta do problema de desempenho é por meio de apresentação? Como é o modelo de dados subjacente? Você já sentiu alguma coisa pelos tipos de consultas que são comuns? Índices apropriados no local (colunas na cláusula WHERE em que não há índice)?

    
por 04.03.2010 / 16:12