Exportar (0) Imprimir
Expandir Tudo

Práticas recomentadas para o desempeinho do SQL Server em máquinas virtuais do Azure

Atualizado: junho de 2014

Ao executar o SQL Server em Máquinas Virtuais do Azure, recomendamos que você continue usando as mesmas opções de ajuste de desempenho do banco de dados que são aplicáveis ao SQL Server no ambiente de servidor local. Entretanto, o desempenho de um banco de dados relacional na nuvem pública depende de muitos fatores como o tamanho de uma máquina virtual e a configuração dos discos de dados.

Este tópico apresenta práticas recomendadas para a otimização do desempenho do SQL Server em máquinas virtuais do Azure (WMs).

Observação importante: Para obter informações mais abrangentes, leia o white paper Orientação sobre desempenho para o SQL Server em máquinas virtuais do Azure.

Apresentamos abaixo uma lista de verificação rápida que você pode seguir:

  • Use a Camada padrão A2 mínima para SQL Server VMs.

  • Mantenha a conta de armazenamento e do SQL Server VM na mesma região.

  • Desative a replicação geográfica do Azure na conta de armazenamento.

  • Evite o uso do sistema operacional ou discos temporários para o armazenamento de banco de dados ou de registro.

  • Evite o uso de opções de cache de disco de dados do Azure (política de caching = None).

  • Marque vários discos de dados Azure para obter maior rendimento de IO.

  • Formate com tamanhos de alocação documentados.

  • Dados e Arquivo de log E/S separados para obter IOPs dedicados para dados e log.

  • Habilitar a compressão da página de base de dados.

  • Ativar a inicialização instantânea do arquivo para arquivos de dados.

  • Limitar ou desabilitar o auto preenchimento na base de dados.

  • Desabilitar o auto encolhimento na base de dados.

  • Mover todos os bancos de dados para discos de dados, incluindo bancos de dados do sistema.

  • Mover o erro de registro do Servidor SQL e pesquisar diretórios de arquivos em discos de dados.

  • Aplicar correções de desempenho de SQL Server

  • Locais padrão de configuração.

  • Ativar páginas bloqueadas.

  • Backup diretamente para armazenamento de blob.

Para mais informações, favor seguir as orientações fornecidas nas sub seções a seguir.

Para aplicações com sensibilidade de desempenho, é recomendável usar os seguintes tamanhos de máquinas virtuais:

  • SQL Server Enterprise Edition:Camada padrão A3 ou superior

  • SQL Server Standard Edition:Camada padrão A2 ou superior

Para informações atualizadas sobre tamanhos de máquinas virtuais, consulte Tamanhos de Máquinas Virtuais e Serviços nas Nuvens para o Azure.

Além disso, recomendamos a criação de uma conta de armazenamento do Azure no mesmo centro de dados que a máquina virtual do SQL Server para reduzir os atrasos de transferência. Ao criar uma conta de armazenamento, desative a replicação geográfica com ordem de escrita consistente em vários discos não é garantido. Em vez disso, considere a configuração de uma tecnologia de recuperação de desastre do SQL Server entre dois centros de dados Azure. Para obter mais informações, consulte Alta disponibilidade e recuperação de desastres para o SQL Server em máquinas virtuais do Azure.

Quando você criar uma máquina virtual do Azure, a plataforma anexará pelo menos um disco à VM para o seu disco do sistema operacional. Esse é um disco VHD armazenado como um blob de página no armazenamento. Você também pode anexar discos adicionais à máquina virtual como discos de dados e esses serão incluídos no armazenamento como blobs de página. Há outro disco presente em máquinas virtuais do Azure denominado disco temporário. Esse é um disco no nó que pode ser usado para o espaço transitório.

Um disco do sistema operacional é um VHD que pode ser inicializado e instalado como uma versão em execução de um sistema operacional e denominado como unidade C.

A política de cache padrão no disco do sistema operacional é a Leitura/Gravação. Para aplicativos sensíveis ao desempenho, recomendamos que você use o disco de dados em vez do disco do sistema operacional. Anexe um ou mais discos de dados para a máquina virtual sem alterar a política de cache padrão, que é Nenhum para discos de dados.

A unidade de armazenamento temporário, denominada unidade D: , não é persistida no armazenamento de blob do Azure. Não armazene seus dados ou arquivos de log na unidade D: .

Apenas armazene tempdb e/ou as Extensões do Pool de Buffer na unidade D ao usar as Máquinas Virtuais (VMs) da Série D. Ao contrário das outras séries de VMs, a unidade D nas VMs da Série D é baseada em SSD. Isso pode melhorar o desempenho das cargas de trabalho que fazem uso intenso de objetos temporários ou que têm conjuntos de trabalho que não cabem na memória. Para obter mais informações, consulte Usando SSDs nas VMs do Azure para armazenar TempDB do SQL Server e as Extensões do Pool de Buffer.

  • Número de disco de dados: Para aplicativos sensíveis à taxa de transmissão, recomendamos que anexar o número máximo de discos permitido de acordo com o tamanho da VM. Observe que a latência não melhorará ao acrescentar mais discos de dados se sua carga de trabalho estiver dentro do limite máximo de IOPs.

    Para informações atualizadas sobre o máximo de IOPs por disco, consulte Tamanhos de Máquina Virtual e Serviços de Nuvem para Azure.

  • Política de cache: no disco de dados, os caches de leitura e gravação são desabilitados por padrão. Use este padrão e não habilite nenhum caching no disco de dados. Para obter mais informações sobre o cache em disco, consulte Gerenciar discos e imagens.

    Para obter instruções sobre como configurar o cache de disco, consulte os seguintes tópicos: Set-AzureOSDisk, Set-AzureDataDisk e Gerenciando máquinas virtuais com os cmdlets do Azure PowerShell.

  • Alocação de Tamanho de Unidade NTFS: Ao formatar o disco de dados, é recomendável que você use um tamanho de unidade de alocação de 64 KB para dados e arquivos de log, bem como tempdb.

  • Distribuição de disco: Recomendamos que você siga estas orientações:

    • Para Windows 8/Windows Server 2012 ou subsequente, use espaços de armazenamento. Use o tamanho de marcação de 64 KB para cargas de trabalho OLTP e 256 KB para cargas de trabalho de data warehousing para evitar o impacto de desempenho devido ao desalinhamento da partição. Além disso, defina column count = number of physical disks. Para obter mais informações sobre como configurar Espaços de Armazenamento, consulte os Cmdlets de Armazenamento de Espaço no Windows PowerShell.

    • Para Windows 2008 R2 ou versões anteriores, você poderá usar discos dinâmicos (volumes com marcação OS) o tamanho da faixa é sempre 64 KB. Observe que está opção está obsoleta no Windows 8/Windows Server 2012. Para obter mais informações, consulte a declaração de suporte em Virtual Disk Service em transição para o Gerenciamento de Armazenamento do Windows API.

  • Colocação de Dados e Arquivos de Registro:Se a sua carga de trabalho não for de gravação intensiva de registro e não necessitar um IPS dedicado, você poderá configurar somente um pool de armazenamento. Caso contrário, para VMs que permitem a indexação de mais de 4 discos, coloque os arquivos de dados e de registro em discos individuais ou pools de armazenamento. Para a Camada padrão A2, recomendamos a configuração de três discos de dados para arquivos de dados e tempdb, e um disco de dados para arquivos de registro. Se sua carga de trabalho for de dados ou sensível ao registro, você pode ajustar o número de discos dedicados a dados ou o registro do conjunto de armazenamento de acordo.

  • Considere usar a compactação de página de banco de dados, pois isso pode ajudar a melhorar o desempenho de cargas de trabalho intensivas de E/S. No entanto, a compactação de dados pode aumentar o consumo da CPU no servidor de banco de dados.

  • Considere compactar qualquer arquivo de dados ao transferir para dentro e para fora do Azure.

  • Considere habilitar a inicialização de arquivo instantânea para reduzir o tempo necessário para a alocação de arquivo inicial. Para tirar proveito da inicialização imediata de arquivo, conceda SE_MANAGE_VOLUME_NAME à conta de serviço do SQL Server (MSSQLSERVER) e adicione-a à política de segurança Executar tarefas de manutenção de volume. Se você estiver usando uma imagem da plataforma do SQL Server para Azure, a conta de serviço padrão (NT Service\MSSQLSERVER) não será adicionada à política de segurança Executar tarefas de manutenção de volume. Em outras palavras, a inicialização imediata de arquivo não é habilitada em uma imagem da plataforma SQL Server para Azure. Depois de adicionar a conta de serviço do SQL Server à política de segurança Executar tarefas de manutenção de volume reinicie o serviço do SQL Server. Para obter mais informações, consulte Inicialização de arquivos de bancos de dados.

  • autogrow é considerado meramente uma contingência de crescimento inesperado. Não gerencie o crescimento de seus dados e registros diariamente com crescimento automático. Se o crescimento automático for usado, faça o pré-preenchimento do arquivo usando a exibição de tamanho.

  • Assegure-se que o autoshrink esteja desabilitado para evitar sobrecarga desnecessária que pode afetar negativamente o desempenho.

  • Se você estiver usando o SQL Server 2012, instale o Service Pack 1 com a atualização cumulativa 10. Esta atualização contém a correção para o mau desempenho do E/S, ao executar a seleção da declaração de tabelas temporárias no SQL Server 2012. Para obter mais informações consulte este artigo da base de conhecimento.

  • Desloque base de dados de sistemas (como msdb e tempdb), backups e os dados padrão e diretórios de registros do SQL Server para discos de dados não armazenados em cache para melhorar o desempenho. Em seguida, execute as seguintes ações:

    • Ajuste o caminho do arquivo XEvent e Trace.

    • Ajuste o caminho do SQL Error Log.

    • Ajuste o caminho padrão do backup.

    • Ajuste o caminho padrão do local do banco de dados.

  • Estabelecer páginas bloqueadas para reduzir o IO e qualquer atividade de paginação.

Algumas implementações podem obter benefícios adicionais de desempenho, utilizando técnicas de configuração mais avançadas. A lista a seguir destaca alguns recursos do SQL Server que podem ajudar você a atingir melhor desempenho:

Consulte também

Mostrar:
© 2014 Microsoft