Otimizar o armazenamento para o SQL Server - Recomendações da AWS

Otimizar o armazenamento para o SQL Server

Visão geral

Esta seção se concentra nas otimizações de custos do armazenamento SSD do Amazon Elastic Block Store (Amazon EBS) para SQL Server em workloads do EC2.

Você tem uma grande variedade de opções de armazenamento para implantar e executar workloads do SQL Server na AWS. A seleção do armazenamento certo deve ser baseada na finalidade, na arquitetura, na durabilidade, na performance, na capacidade e no custo. Os clientes da AWS que executam workloads do SQL Server geralmente utilizam uma combinação de armazenamento Amazon EBS, NVMe, Amazon FSx e Amazon Simple Storage Service (Amazon S3).

O Amazon EBS é um armazenamento anexado à rede conectado a instâncias computacionais do EC2, e é utilizado para armazenar e processar arquivos gerais do sistema operacional, da aplicação, do banco de dados e de backup. O armazenamento em unidade de estado sólido (SSD) do Amazon EBS inclui SSD de uso geral (gp2 e gp3) e SSD de IOPS provisionadas (io1, io2 e io2BX). Considere o seguinte:

  • Algumas instâncias do EC2, como r5d, têm SSDs NVMe locais fisicamente anexados à instância host. Esses volumes fornecem armazenamento ao nível do bloco que é comumente usado para a extensão de grupo de buffers ou tempdb do SQL Server.

  • O Amazon FSx para Windows File Server é um serviço de armazenamento de arquivos totalmente gerenciado, enquanto o Amazon FSx para NetApp ONTAP é um armazenamento compartilhado totalmente gerenciado, criado com base no conhecido sistema de arquivos ONTAP da NetApp. O Amazon FSx é frequentemente usado para executar workloads do SQL Server em uma configuração de instância clusterizada de failover (FCI) do SQL Server de alta disponibilidade. Essa solução hospeda arquivos de dados e logs do SQL Server, o que reduz os requisitos de performance do EBS nas instâncias do EC2.

  • O Amazon S3 é um serviço de armazenamento de objetos que oferece escalabilidade, disponibilidade de dados, segurança e performance líderes do setor. Você pode armazenar arquivos de backup nativos do SQL Server, AMIs, snapshots do EBS, logs de aplicações e muito mais no Amazon S3.

Tipos, performance e custo de armazenamento SSD para o Amazon EBS

Os custos de armazenamento SSD do Amazon EBS geralmente aumentam à medida que a durabilidade e a performance aumentam. Atualmente, o armazenamento vem em cinco tipos de volume, cada um com suas próprias métricas de performance exclusivas. Para obter um resumo dos casos de uso e das características dos volumes baseados em SSD, consulte a tabela na seção Volumes de unidades de estado sólido (SSD) da documentação do Amazon EBS.

Você pode usar o Amazon CloudWatch para monitorar a performance do SSD, capturar dados de tendências e definir alarmes quando determinados limites forem atingidos. Se você estiver executando workloads do SQL Server na AWS, considere habilitar o monitoramento detalhado e implantar métricas personalizadas do CloudWatch para capturar métricas detalhadas de performance de volume, como latência de disco, IOPS, throughput, tamanho da fila de disco, capacidade usada versus capacidade livre e muito mais. Você pode usar essas métricas de performance do CloudWatch para identificar armazenamento subprovisionado e superprovisionado e fornecer pontos de dados históricos para definir com precisão os requisitos de armazenamento.

Os custos de armazenamento SSD para o Amazon EBS também variam com base na capacidade alocada. A tabela abaixo mostra uma comparação dos diferentes tipos de volume. Todos os tipos de volume têm 1 TB de capacidade e configurações de performance semelhantes.

Tipo de volume IOPS máxima (16 KiB de E/S) Throughput máximo (E/S de 128 KiB) Preço por 1 TB Percentual de economia de custos
gp2 3.000 250 USD 102,40  
gp3 3.000 250 USD 86,92 15%
io1 16.000 500 USD 1.168  
io2 16.000 500 USD 1.168  
gp3 16.000 500 USD 146,92 87%
io2bx 16.000 4.000 USD 1.168  
gp3 16.000 1.000 USD 181,92 84%
nota

As métricas de performance e custo na tabela anterior são por volume, com base em uma estimativa da AWS Calculadora de Preços. É necessária uma Conta da AWS para acessar a estimativa na AWS Calculadora de Preços.

Os volumes gp3 SSD do Amazon EBS oferecem excelente performance a um baixo custo. Você pode economizar até 87% se escolher um volume gp3 em vez de volumes io1 ou io2 para workloads que exigem menos de 16.000 IOPS e 500 MiBps de throughput.

Os volumes io2 Block Express (io2BX) oferecem maior performance em relação aos volumes io2 regulares. Com 16.000 IOPS, os volumes io1 ou io2 só são capazes de obter um throughput de 500 MiBps, enquanto os volumes io2BX podem ser configurados com throughput de até 4 mil MiBps. Em comparação com os volumes io1 e io2, os volumes io2BX fornecem mais de quatro vezes o throughput entre 16.000 e 64.000 IOPS, exatamente pelo mesmo preço. Volumes io2 regulares podem ser convertidos em volumes io2BX anexando-os a instâncias do EC2 compatíveis com io2BX. Para obter uma lista de instâncias do EC2 compatíveis com io2BX, consulte Provisioned IOPS SSD volumes na documentação do Amazon EBS. Antes de implantar um novo armazenamento, você pode usar a AWS Calculadora de Preços para estimar seu custo mensal e entender o impacto no custo com base nas compensações entre durabilidade, performance e capacidade.

Otimização geral de custos de SSDs para o Amazon EBS

Recomendamos que você avalie o que está armazenando e certifique-se de que está usando o tipo e a classe de armazenamento corretos. Por exemplo, o Amazon S3 oferece um ótimo preço, políticas de ciclo de vida integradas e opções de replicação ideais para backups do SQL Server. O SQL Server 2022 tem a capacidade de fazer backup diretamente no Amazon S3, enquanto as versões anteriores do SQL Server dependem de backups locais nativos. Se você estiver executando versões mais antigas do SQL Server, considere fazer backup nos volumes HDD do Amazon EBS e depois copiar o backup para o Amazon S3. Essa solução pode economizar 53% em vez de usar volumes gp3 para backups.

A tabela a seguir mostra a diferença de preços de 1 TB de armazenamento no Amazon EBS gp3, Amazon EBS HDD st1 e Amazon S3.

Tipo de armazenamento Capacidade Preço por mês
EBS gp3 500 MiBps 1 TB USD 96,92
EBS st1 500 MiBps de expansão USD 46,08
S3 Standard USD 23,55
S3 Standard (acesso infrequente) USD 12,80
S3 Glacier Deep Archive USD 1,03
nota

As métricas de custo na tabela anterior são baseadas em uma estimativa na AWS Calculadora de Preços. É necessária uma Conta da AWS para acessar a estimativa na AWS Calculadora de Preços.

Recomendamos que você considere o seguinte:

  • Habilite o monitoramento detalhado e implante métricas personalizadas do CloudWatch para capturar com precisão seus requisitos de performance de armazenamento.

  • Atualize o armazenamento do Amazon EBS de gp2 para gp3 para reduzir custos, aumentar a flexibilidade e melhorar a performance.

  • Atualize o armazenamento do Amazon EBS de io1 para io2 para maior durabilidade e flexibilidade de performance.

  • Use io2BX em vez de io1 ou io2 quando possível para aumentar a durabilidade e a performance.

  • Considere uma abordagem de combinar e misturar ao escolher o armazenamento para ajudar a reduzir os requisitos de capacidade e o custo de volumes de alta performance. Por exemplo, você pode usar volumes gp3 de baixo custo para seu volume raiz (sistema operacional), instalação do SQL Server, bancos de dados do sistema (excluindo o tempdb) e bancos de dados de usuários de baixa performance. Isso pode ajudar a reduzir a capacidade e o custo de um volume io2, que pode ser dedicado a bancos de dados de usuários de alta performance.

  • Se você estiver hospedando bancos de dados do SQL Server na AWS, recomendamos que você use vários arquivos de dados do SQL Server por banco de dados. Isso possibilita distribuir workloads de leitura/gravação em vários volumes, reduzindo os requisitos de performance e capacidade por volume e, consequentemente, reduzindo os custos.

  • Mesmo que as workloads de produção exijam armazenamento de alta performance, como io1 ou io2/io2BX, considere os volumes gp3 para workloads que não sejam de produção para ajudar a reduzir custos.

  • Acompanhe e defina a tendência da utilização do armazenamento ao longo do tempo para identificar facilmente picos de uso e custos inesperados.

  • Use o AWS Compute Optimizer para obter recomendações sobre como aumentar ou reduzir a escala verticalmente dos volumes do EBS com base na utilização real.

  • Use a elasticidade da AWS para ajustar as necessidades de performance e capacidade de seus volumes SSD para o Amazon EBS. Ao contrário dos ambientes on-premises, você não precisa superprovisionar a performance e a capacidade de armazenamento para futuras workloads. Você pode migrar suas workloads existentes do SQL Server para a AWS e ajustar a performance ou a capacidade conforme necessário, mantendo seus bancos de dados on-line.

Recursos adicionais