Compartilhar via


Recomendações do Assistente do Azure para o pool de SQL dedicado no Azure Synapse Analytics

Este artigo descreve as recomendações do pool de SQL dedicado disponíveis no Assistente do Azure.

O pool de SQL dedicado fornece recomendações para garantir que a carga de trabalho do data warehouse seja consistentemente otimizada para o desempenho. As recomendações são totalmente integradas ao Assistente do Azure para fornecer as melhores práticas diretamente no portal do Azure. O pool de SQL dedicado coleta recomendações de telemetria e de superfície para a carga de trabalho ativa em um ritmo diário. Os cenários de recomendação compatíveis são descritos abaixo, juntamente com a forma de aplicar as ações recomendadas.

Você pode verificar suas recomendações hoje mesmo!

Distorção de dados

A distorção de dados pode causar movimentação adicional de dados ou afunilamentos de recursos ao executar sua carga de trabalho. A seguinte documentação descreve mostrar para identificar distorção de dados e impedir que isso aconteça selecionando uma chave de distribuição ideal.

Sem estatísticas ou estatísticas desatualizadas

Ter estatísticas abaixo do ideal pode impactar gravemente o desempenho da consulta, pois pode fazer com que o otimizador de consulta do SQL gere planos de consulta abaixo do ideal. A documentação a seguir descreve as melhores práticas de criação e atualização de estatísticas:

Para ver a lista de tabelas afetadas por essas recomendações, execute o seguinte script T-SQL. O Assistente executa continuamente o mesmo script T-SQL para gerar essas recomendações.

Replicar tabelas

Para obter recomendações de tabela replicada, o Assistente detecta possíveis tabelas com base nas seguintes características físicas:

  • Tamanho da tabela replicada
  • Número de Colunas
  • Tipo de distribuição de tabelas
  • Número of partições

O Assistente continuamente utiliza heurística com base em carga de trabalho, como, por exemplo, frequência de acesso de tabela, linhas retornadas em média e limites de tamanho e atividade do data warehouse, para garantir que recomendações de alta qualidade sejam geradas.

A seção a seguir descreve a heurística com base em carga de trabalho que pode ser encontrada no portal do Azure para cada recomendação de tabela replicada:

  • Examinar o percentual médio avg- de linhas que foram retornadas da tabela para cada acesso de tabela nos últimos sete dias
  • Leitura frequente, nenhuma atualização - indica que a tabela não foi atualizada nos últimos sete dias e mostra a atividade de acesso
  • Taxa de leitura/atualização - a frequência em que a tabela foi acessada em relação a quando foi atualizada nos últimos sete dias
  • Atividade - mede o uso com base na atividade de acesso. Essa atividade se compara à atividade de acesso de tabela em relação à atividade média de acesso de tabela no data warehouse nos últimos sete dias.

Atualmente, o Assistente mostrará apenas no máximo quatro tabelas replicadas possíveis por vez, com índices columnstore clusterizados priorizando a atividade mais alta.

Importante

A recomendação de tabela replicada não é infalível e não leva em consideração as operações de movimentação de dados da conta. Estamos trabalhando para adicionar isso como uma heurística, mas por enquanto você deverá sempre validar sua carga de trabalho após a aplicação da recomendação. Para saber mais sobre as tabelas replicadas, visite a seguinte documentação.

Utilização de cache adaptável (Gen2)

Quando você tem um grande conjunto de trabalho, pode experimentar um percentual baixo de falha de cache e uma alta utilização de cache. Nesse cenário, você deve escalar verticalmente para aumentar a capacidade do cache e executar novamente a carga de trabalho. Visite a seguinte documentação para saber mais.

Contenção de Tempdb

O desempenho da consulta pode diminuir quando há uma contenção de tempdb alta. A contenção de tempdb pode ocorrer por meio de tabelas temporárias definidas pelo usuário ou quando há uma grande quantidade de movimentação de dados. Neste cenário, você pode aumentar a alocação de tempdb e configurar o gerenciamento de carga de trabalho e classes de recursos para fornecer mais memória às consultas.

Configuração incorreta do carregamento de dados

Você sempre deve carregar dados de uma conta de armazenamento na mesma região que o pool de SQL dedicado para minimizar a latência. Use a instrução COPY para a ingestão de dados de alta taxa de transferência e divida os arquivos de preparo em sua conta de armazenamento para maximizar a taxa de transferência. Se você não puder usar a instrução COPY, poderá usar a API SqlBulkCopy ou o bcp com um tamanho de lote alto para obter uma melhor taxa de transferência. Confira Melhores práticas de carregamento de dados para obter diretrizes adicionais sobre o carregamento de dados.