Partilhar via


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

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

O Conjunto de SQL dedicado fornece recomendações para garantir que a carga de trabalho do armazém de dados está consistentemente otimizada para desempenho. As recomendações estão totalmente integradas com o Assistente do Azure para lhe fornecer as melhores práticas diretamente no portal do Azure. O conjunto de SQL dedicado recolhe recomendações de telemetria e de superfície para a carga de trabalho ativa numa cadência diária. Os cenários de recomendação suportados estão descritos abaixo, juntamente com como aplicar as ações recomendadas.

Pode verificar as suas recomendações hoje mesmo!

Distorção de dados

A distorção de dados pode causar estrangulamentos de recursos ou movimentos de dados adicionais ao executar a carga de trabalho. A seguinte documentação descreve como identificar a distorção de dados e impedir que aconteça ao selecionar uma chave de distribuição ideal.

Estatísticas não ou desatualizadas

Ter estatísticas pouco otimizais pode afetar seriamente o desempenho das consultas, pois pode fazer com que o otimizador de consultas SQL gere planos de consulta subóptimas. A seguinte documentação descreve as melhores práticas em torno da criação e atualização de estatísticas:

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

Replicar tabelas

Para recomendações de tabela replicadas, o Assistente deteta candidatos à tabela com base nas seguintes características físicas:

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

O Assistente tira partido continuamente da heurística baseada em cargas de trabalho, como a frequência de acesso a tabelas, as linhas devolvidas em média e os limiares em torno do tamanho e da atividade do armazém de dados para garantir que são geradas recomendações de alta qualidade.

A secção seguinte descreve a heurística baseada em cargas de trabalho que pode encontrar na portal do Azure para cada recomendação de tabela replicada:

  • Média de análise– a percentagem média de linhas devolvidas da tabela para cada acesso à tabela nos últimos sete dias
  • Leitura frequente, sem atualização – indica que a tabela não foi atualizada nos últimos sete dias enquanto mostra a atividade de acesso
  • Taxa de leitura/atualização – a proporção da frequência com que a tabela foi acedida relativamente ao momento em que é atualizada nos últimos sete dias
  • Atividade – mede a utilização com base na atividade de acesso. Esta atividade compara a atividade de acesso à tabela em relação à atividade média de acesso a tabelas no armazém de dados nos últimos sete dias.

Atualmente, o Assistente só mostrará, no máximo, quatro candidatos de tabela replicados ao mesmo tempo, com índices columnstore em cluster a priorizar a atividade mais elevada.

Importante

A recomendação da tabela replicada não é uma prova infalida e não tem em conta as operações de movimento de dados. Estamos a trabalhar para adicionar isto como uma heurística, mas, entretanto, deve validar sempre a carga de trabalho depois de aplicar a recomendação. Para saber mais sobre tabelas replicadas, visite a seguinte documentação.

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

Quando tem um conjunto de trabalho grande, pode deparar-se com uma percentagem de acerto de cache baixa e uma utilização elevada da cache. Neste cenário, deve aumentar verticalmente para aumentar a capacidade da cache e voltar a executar a carga de trabalho. Para obter mais informações, veja a seguinte documentação.

Disputa da tempdb

O desempenho das consultas pode degradar-se quando existe uma contenção elevada da tempdb. A contenção da tempdb pode ocorrer através de tabelas temporárias definidas pelo utilizador ou quando existe uma grande quantidade de movimento de dados. Para este cenário, pode dimensionar para uma alocação de mais tempdb e configurar classes de recursos e gestão de cargas de trabalho para fornecer mais memória às suas consultas.

Configuração incorreta do carregamento de dados

Deve sempre carregar dados de uma conta de armazenamento na mesma região que o conjunto de SQL dedicado para minimizar a latência. Utilize a instrução COPY para ingestão de dados de débito elevado e divida os ficheiros faseados na sua conta de armazenamento para maximizar o débito. Se não conseguir utilizar a instrução COPY, pode utilizar a API SqlBulkCopy ou o bcp com um tamanho de lote elevado para um melhor débito. Veja Melhores práticas para o carregamento de dados para obter orientações adicionais sobre o carregamento de dados.