Recomendações e directrizes para a opção de configuração "máximo grau de paralelismo" no SQL Server

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 2806535
Sumário
A opção de configuração de grau máximo de paralelismo (MAXDOP) do Microsoft SQL Server controla o número de processadores que são utilizados para a execução de uma consulta num plano paralelo. Esta opção determina os recursos de computação e o thread que são utilizados para os operadores de plano de consulta que executam o trabalho em paralelo. Dependendo se o SQL Server tiver sido configurado num computador de multiprocessamento simétrico (SMP), um computador de acesso (in) de memória não uniforme ou processadores hyperthreading activado, tem de configurar a opção de grau máximo de paralelismo adequadamente. Este artigo descreve as orientações gerais que pode utilizar para configurar a opção de grau máximo de paralelismo para SQL Server quando utiliza o procedimento armazenado do sistema sp_configure .

As sugestões de consulta de Transact-SQL Opção (MAXDOP) podem substituir a opção de grau máximo de paralelismono valor desp_configure , se a consulta especificar esta opção. No SQL Server 2000, a substituição só tem efeito se o valor especificado na sugestão é inferior ou igual ao valor de sp_configure . No SQL Server 2005 e versões posteriores, a substituição tem sempre efeito. No SQL Server 2008 e versões posteriores, se o valor MAXDOP exceder o valor que foi configurado utilizando o Resource Governor, o motor de base de dados utiliza o valor de MAXDOP Resource Governor. Todas as regras de semântica que são utilizadas com a opção de grau máximo de paralelismosão aplicáveis quando utiliza a dica de consulta MAXDOP. As outras duas opções que podem substituir ou afectar a definição de MAXDOP são os seguintes:
  • IN suave
  • Índice paralela
Mais Informação
Nota A opção de configuração de grau máximo de paralelismonão limita o número de processadores que o SQL Server utiliza. Para configurar o número de processadores que utiliza o SQL Server, utilize a opção de configuração de máscara de afinidade .

Utilize as seguintes directrizes quando configura o MAXDOPvalue.

SQL Server 2005 e versões posteriores

Servidor com o único nó NUMAMenos de oito processadores lógicosManter MAXDOP ou abaixo n. º de processadores lógicos
Servidor com o único nó NUMASuperior a 8 processadores lógicosManter MAXDOP 8
Servidor com vários nós inMenos de oito processadores lógicos por nó NUMAManter MAXDOP ou abaixo n. º de processadores lógicos por nó NUMA
Servidor com vários nós inSuperior a 8 processadores lógicos por nó NUMAManter MAXDOP 8



Nota
utilizar estas linhas de orientação quando definir a opção de grau máximo de paralelismopara Resource Governor grupos de carga de trabalho.

Além disso, o valor máximo de 8 mencionada no presente enquadramento é aplicável para actividade normal do SQL Server e o overhead dos operadores do exchange que são utilizados em planos de consulta paralela. Este valor, pode variar consoante os seus padrões de aplicação específica e a actividade em simultâneo na instância do SQL Server. Por exemplo, considere as seguintes situações:
  • Se tiver muito pequeno número de consultas que estão a executar em simultâneo em comparação com o número de processadores, pode definir o valor MAXDOP para um valor maior. Por exemplo, pode definir o valor MAXDOP a 16.
  • Se é um têm grande número de consultas que estão a executar em simultâneo em comparação com o número de processadores, pode definir o valor MAXDOP para um valor mais pequeno. Por exemplo, pode definir o valor MAXDOP para 4.
Nota Qualquer valor que considere a utilização deve ser cuidadosamente testado com o padrão de consultas ou actividade de aplicação específica antes de implementar a esse valor num servidor de produção.

SQL Server 2000 e versões anteriores

Se o SQL Server utiliza um plano de série, irá utilizar apenas um processador. No entanto, se o SQL Server utiliza o paralelismo, terá de utilizar todos os processadores configurados (conforme determinado pela configuração de sugestão de consulta MAXDOP) para a execução de um plano paralelo. Por exemplo, se utilizar MAXDOP = 0 num servidor 32 vias, tentativas do SQL Server para utilizar todos os 32 processadores mesmo 7 processadores podem executar a tarefa mais eficiente em comparação com um plano de série que utiliza apenas um processador. Devido a este comportamento tipo tudo ou nada, se o SQL Server utiliza o plano paralelo e se de que não restrinja a dica de consulta MAXDOP para um valor máximo de 8. o, o tempo que é necessário pelo SQL Server para coordenar todos os processadores num servidor de topo de gama superam as vantagens da utilização de um plano paralelo.

A definição de MAXDOP aplica-se a cada passo do plano. Cada passo irá utilizar uma CPU ou o número de CPUs que é especificado por MAXDOP e nunca nada entre elas. Se os passos a executar em paralelo, o número de threads que são utilizados pela consulta pode exceder a definição de MAXDOP.

Para a definição de MAXDOP, consulte o tópico "Máximo grau de paralelismo opção" ou o tópico "Grau de paralelismo" no SQL Server.

Para compreender como funciona o paralelismo, consulte a secção "Paralela consulta transformação" sob o tópico "Arquitectura de processador de consulta" no SQL Server Books Online.

AdditionalInformation

Para mais informações sobre consultas paralelas, vá para o seguinte Web site da Microsoft Developer Network (MSDN):Para informações sobre as melhores práticas quando estiver a executar uma instância do SQL Server em computadores que tenham mais do que 64 CPUs, consulte o seguinte tópico de SQL Server Books Online:Para instâncias do SQL Server em execução no processadores hyperthreading activados, siga as recomendações no seguinte artigo na Microsoft Knowledge Base:
322385 Suporte do SQL Server num ambiente de hyper-threaded
Nota Esta recomendação não pode aplicar a mais recentes chips de processador, tais como as da família Intel Nehalem.

Para obter informações sobre o número de processadores que são utilizados pelo SQL Server e o número de nós in que são reconhecidos pelo SQL Server, utilize a gestão dinâmica vistas sys.dm_os_sys_info e sys.dm_os_nodes. Para mais informações sobre a definição MAXDOP é implementada utilizando Resource Governor, reveja as informações do sys.dm_resource_governor_workload_groups de vista de gestão dinâmica e a seguinte mensagem no blogue da equipa de suporte de servidor de SQL:

Utilizam definição de "Máximo grau de paralelismo" do servidor, Resource Governor MAX_DOP e a dica de consulta MAXDOP – qual deve SQL Server?

Para mais informações sobre os produtos ou ferramentas que verificam automaticamente para esta condição à sua instância do SQL Server e sobre as versões do produto SQL Server, consulte a tabela seguinte:
Software de regraTítulo de regraDescrição da regraVersões de produtos contra os quais a regra é avaliada
Analisador de prática SQL Server 2008 R2 melhores (SQL Server 2008 R2 BPA)Grau de paralelismo não está definido para o valor recomendadoO SQL Server 2008 R2 prática analisador de melhores (SQL Server 2008 R2 BPA) fornece uma regra para detectar estas condições em que o valor apropriado para a opção de grau máximo de paralelismonão está configurado em conjunto com o número de CPUs num nó NUMA e também a configuração de carga de trabalho Resource Governor para MAXDOP. O SQL Server 2008 R2 BPA suporta o SQL Server 2008 e o SQL Server 2008 R2.

Se executar a ferramenta BPA e encontrar um aviso de "Motor de base de dados - grau de paralelismo não está definido para o valor recomendado", compare o valor de opção degrau máximo de paralelismoe o valor MAXDOP de carga de trabalho Resource Governor com os valores recomendados que são especificados nas secções "Sumário" e "Mais informação".
SQL Server 2008, SQL Server 2008 R2
Com o formato de analisador de melhor práticas do SQL Server 2012 (BPA de 2012 do SQL Server)Grau de paralelismo não está definido para o valor recomendadoO SQL Server 2012 prática analisador de melhores (BPA de 2012 do SQL Server) fornece uma regra para detectar estas condições em que o valor apropriado para o máximo grau de paralelismoopção não está configurado em conjunto com o número de CPUs num nó NUMA e também a configuração de carga de trabalho Resource Governor para MAXDOP.

Se executar a ferramenta BPA e encontrar um aviso de "Motor de base de dados - grau de paralelismo não está definido para o valor recomendado", compare o valor de opção degrau máximo de paralelismoe o valor MAXDOP de carga de trabalho Resource Governor com os valores recomendados que são especificados nas secções "Sumário" e "Mais informação".
SQL Server 2012

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 2806535 - Última Revisão: 05/02/2015 10:59:00 - Revisão: 3.0

Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Express with Advanced Services, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Enterprise Evaluation, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 Express with Advanced Services, Microsoft SQL 2005 Server Enterprise, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Express Edition with Advanced Services, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Enterprise Evaluation Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2014 Business Intelligence, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbinfo kbmt KB2806535 KbMtpt
Comentários