Qual é o significado do DOP no contexto do SQL Server?

10

Qual é o significado do DOP no contexto do servidor sql?

olle
fonte

Respostas:

15

DOPno SQL Server significa Degrees of Parallelism.

De acordo com o artigo do MSDN aqui , se o SQL Server tiver vários processadores disponíveis e a consulta atender a certos limites, o SQL Server tentará dividir a consulta em vários processadores para aumentar seu desempenho.

Nas versões anteriores do SQL Server, vi o paralelismo na verdade fazer com que as consultas fossem mais lentas; isto é, o tempo gasto para descobrir o paralelismo leva mais tempo do que a consulta real levaria sem ele.

Nas consultas, você pode especificar o número máximo de processadores a serem usados ​​usando a OPTION (MAXDOP X)dica de consulta, em que X é o número máximo de processadores disponíveis. Você pode desativar o paralelismo usando OPTION (MAXDOP 1).

Há também um problema conhecido com paralelismo e SCOPE_IDENTITY()no SQL Server 2005/2008.

LittleBobbyTables - Au Revoir
fonte
11

D egree O F P arallelism

Quando o SQL Server é executado em um computador com mais de um microprocessador ou CPU, ele detecta o melhor grau de paralelismo, ou seja, o número de processadores empregados para executar uma única instrução, para cada execução do plano paralelo. Você pode usar a opção de grau máximo de paralelismo para limitar o número de processadores a serem usados ​​na execução do plano paralelo.

Para permitir que o servidor determine o grau máximo de paralelismo, defina esta opção como 0, o valor padrão. Definir o grau máximo de paralelismo como 0 permite que o SQL Server use todos os processadores disponíveis até 64 processadores. Para suprimir a geração do plano paralelo, defina o grau máximo de paralelismo como 1. Defina o valor como um número maior que 1 (até um máximo de 64) para restringir o número máximo de processadores usados ​​por uma única execução de consulta. Se um valor maior que o número de processadores disponíveis for especificado, o número real de processadores disponíveis será usado. Se o computador tiver apenas um processador, o valor máximo do grau de paralelismo será ignorado.

Alex Bolotov
fonte