Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Instância Gerenciada de SQL do Azure
Este artigo descreve como configurar a opção cost threshold for parallelism de configuração do servidor no SQL Server usando o SQL Server Management Studio ou Transact-SQL.
Sobre o limite de custo para paralelismo
A cost threshold for parallelism opção especifica o limite no qual o SQL Server considera planos paralelos em computadores com mais de um processador lógico. A cost threshold for parallelism opção pode ser definida como qualquer valor de 0 a 32.767.
O custo é a soma dos custos estimados do operador em um plano de consulta (por exemplo, CPU e E/S). É uma medida relativa usada apenas para a seleção do plano; ele não mede o runtime real.
Determinados componentes Transact-SQL podem inibir um plano paralelo. Por exemplo, UDFs (funções escalares) escalares não embutidas, modificações de variáveis de tabela e determinadas chamadas do sistema. O SQL Server avalia alternativas paralelas somente quando o custo estimado do melhor plano serial excede o cost threshold for parallelism valor e, em seguida, pode escolher um plano paralelo mais barato.
Limitações
O SQL Server ignora o valor de cost threshold for parallelism nas seguintes condições:
Seu computador só tem um processador lógico.
Apenas um processador lógico está disponível para o SQL Server devido à configuração de
affinity mask.A
max degree of parallelismopção de configuração do servidor está definida como1.
Recomendações
Essa opção é uma opção avançada e deve ser alterada apenas por um profissional de banco de dados experiente.
O valor padrão é um ponto de 5 partida, não uma recomendação. Em sistemas modernos do SQL Server, elevá-lo pode ajudar a manter consultas OLTP menores em execução com planos serial. Use pequenos incrementos e observe um ciclo de negócios completo antes de novas alterações. Execute testes de aplicativos com valores superiores e inferiores, se necessário, para otimizar o desempenho do aplicativo.
Observação
No Banco de Dados SQL do Azure, você não pode definir cost threshold for parallelism. Use MAXDOP para controlar o paralelismo. Para obter mais informações, consulte Como alterar o MAXDOP padrão no Banco de Dados SQL do Azure e na Instância Gerenciada de SQL do Azure.
Em determinados casos, um plano paralelo pode ser escolhido mesmo que o custo do plano da consulta seja menor que o valor atual cost threshold for parallelism . A decisão de usar um plano paralelo ou serial baseia-se em uma estimativa de custo fornecida anteriormente no processo de otimização. Para obter mais informações, confira o Guia da Arquitetura de Processamento de Consultas.
Observações
Para ver se a opção de configuração do cost threshold for parallelism servidor está definida como muito alta ou muito baixa para sua carga de trabalho, procure os indicadores a seguir.
| Limite de custo para a configuração de paralelismo | Description |
|---|---|
| Muito baixo | - Muitas consultas de luz de CPU são paralelas. - No Repositório de Consultas, muitos planos foram is_parallel_plan definidos como 1.- CXPACKET e CXCONSUMER dominar as estatísticas de tipo de espera. Você também pode ver THREADPOOL e SOS_SCHEDULER_YIELD aguardar. |
| Muito alto | - Não basta as consultas pesadas de CPU da carga de trabalho forem paralelas e a utilização da CPU for maior do que a ideal como resultado. - SOS_SCHEDULER_YIELD domina as estatísticas de tipo de espera. |
Permissões
Permissões de execução sem parâmetros ou com apenas o primeiro parâmetro em sp_configure são concedidas a todos os usuários por padrão. Para executar sp_configure com ambos os parâmetros para alterar uma opção de configuração ou executar a instrução RECONFIGURE, o usuário deve ter a permissão ALTER SETTINGS no nível do servidor. A permissão ALTER SETTINGS é implicitamente mantida pelas funções de servidor fixas sysadmin e serveradmin.
Usar o SQL Server Management Studio
No Pesquisador de Objetos, clique com o botão direito do mouse em um servidor e selecione Propriedades.
Selecione o nó Avançado.
Em Paralelismo, altere a opção
cost threshold for parallelismpara o valor desejado. Digite ou selecione um valor de 0 a 32.767.
Usar o Transact-SQL
Este exemplo mostra como usar sp_configure para definir o valor como cost threshold for parallelism20.
USE master;
GO
EXECUTE sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXECUTE sp_configure 'cost threshold for parallelism', 20;
GO
RECONFIGURE;
GO
EXECUTE sp_configure 'show advanced options', 0;
GO
RECONFIGURE;
GO
Para obter mais informações, consulte Opções de configuração do servidor.
Acompanhamento: Após configurar a opção de limite de custo para paralelismo
A configuração entra em vigor imediatamente sem reiniciar o servidor.