Estou tentando entender o uso do DBCC CHECKDB com as configurações do MAXDOP-
Se eu executar DBCC CHECKDB com MAXDOP = 0 em uma instância SQL em que minhas configurações de MAXDOP são 8, o que está acontecendo na verdade? Todos os meus agendadores disponíveis, digamos, 98 seriam usados? ou ainda apenas 8? ou apenas alguns?
se eu executar DBCC CHECKDB sem MAXDOP diga um padrão com nível de servidor MAXDOP 8 , devo ver todos os 8 agendadores usados? ou pode ser inferior a 8
Por que estou levantando as perguntas acima é para as mesmas execuções de CHECKDB para alguns servidores, parece usar menos agendadores e alguns servidores com a mesma execução de todos os agendadores, causando 100% de picos de CPU
obrigada
De acordo com a documentação , neste caso "Se MAXDOP for definido como zero, o SQL Server escolherá o grau máximo de paralelismo a ser usado", assim como em qualquer outra consulta em que você substitui as configurações padrão de MAXDOP. O SQL Server pode usar no máximo 64 processadores quando MAXDOP é efetivamente definido como 0.
Em seguida, o SQL Server escolhe um grau máximo de paralelismo de até 8 , assim como faz com uma consulta normal com uma substituição MAXDOP especificada.
Você deve verificar se os servidores são os mesmos, têm as mesmas configurações de CPU no nível de instância, o mesmo MAXDOP (verifique o nível de banco de dados MAXDOP também) e certifique-se de que o banco de dados que está sendo verificado seja o mesmo. Tudo isso pode afetar o desempenho e o paralelismo escolhido.