

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Selecionar a instância certa do EC2 para as workloads do SQL Server
<a name="right-ec2-instance"></a>

**Importante**  
Antes de ler esta seção, recomendamos que você leia primeiro as seções [Compreender o licenciamento do SQL Server](sql-server-licensing.md) e [Selecionar o tipo de instância certo para workloads do Windows](right-size-selection.md) deste guia.

## Visão geral do
<a name="right-ec2-instance-overview"></a>

O Microsoft SQL Server está sendo executado nas instâncias do Amazon Elastic Compute Cloud (Amazon EC2) há mais de 15 anos. AWS pegou essa experiência e a usou para ajudar a desenvolver instâncias do Amazon EC2 para se adequar às cargas de trabalho do SQL Server, executadas desde especificações mínimas até clusters multirregionais de alto desempenho.

A escolha da instância certa do EC2 para o SQL Server depende muito da sua workload. Entender como o SQL Server é licenciado, como ele usa a memória e como os recursos do SQL Server se alinham às ofertas do Amazon EC2 pode ajudar a orientar você até a melhor instância do EC2 para sua aplicação.

Esta seção aborda uma variedade de workloads do SQL Server e como elas podem ser combinadas com determinadas instâncias do EC2 para reduzir ao mínimo seus custos de licenciamento e computação.

## Comparação de custos
<a name="right-ec2-instance-cost-comparison"></a>

O Amazon EC2 permite que você traga a sua própria licença (BYOL) ou pague conforme o uso com o licenciamento do Windows Server e do SQL Server. Para pay-as-you-go licenciamento, os custos de licenciamento das licenças do Windows Server e do SQL Server são incorporados ao custo por hora da instância do EC2. Por exemplo, você pode ter preços diferentes AMIs com preços diferentes. O preço da AMI depende da edição do SQL Server em que a AMI é executada.

Os preços do Windows Server e do SQL Server não são discriminados. Você não encontrará preços discriminados em ferramentas como a [AWS Calculadora de Preços](https://calculator.aws/). Se você selecionar diferentes combinações de ofertas com licença incluída, os custos de licenciamento poderão ser deduzidos, conforme mostra a tabela a seguir.


****  

| Instância do EC2 | AMI | Preço de computação | Preço de licença do Windows | Preço da licença do SQL | Preço total | 
| --- | --- | --- | --- | --- | --- | 
| r5.xlarge | Linux (preços de computação) | $183,96 | - | - | $183,96 | 
| r5.xlarge | Linux \+ SQL Developer | $183,96 | $0 | $0 | $183,96 | 
| r5.xlarge | Windows Server (LI) | $183,96 | $134,32 | - | $318,28 | 
| r5.xlarge | Windows \+ SQL Developer | $183,96 | $134,32 | $0 | $318,28 | 
| r5.xlarge | Windows \+ SQL Web (LI) | $183,96 | $134,32 | $49,64 | $367,92 | 
| r5.xlarge | Windows \+ SQL Standard (LI) | $183,96 | $134,32 | $350,4 | $668,68 | 
| r5.xlarge | Windows \+ SQL Enterprise (LI) | $183,96 | $134,32 | $1095 | $1413,28 | 

**nota**  
Os preços na tabela anterior são baseados nos preços sob demanda na região `us-east-1`.

O método mais econômico para executar o SQL Server é permanecer em uma edição de nível inferior até que você precise de um recurso de uma edição de nível superior. Para obter mais informações, consulte a seção [Comparar edições do SQL Server](sql-server-editions.md) deste guia. A atualização da edição SQL Server Web para a edição SQL Server Standard é sete vezes o custo de licenciamento do SQL Server e mais de três vezes o custo da mudança da edição Standard para a edição Enterprise. A disparidade nos custos de licenciamento é um fator importante a ser considerado, e será analisada no restante desta seção.

## Cenário de otimização de custos
<a name="right-ec2-instance-opt-scenario"></a>

Considere um exemplo de cenário em que uma empresa de analytics que rastreia veículos de entrega está buscando melhorar a performance do SQL Server. Depois que um especialista em MACO analisa os gargalos de performance da empresa, ela faz a transição das instâncias x1e.2xlarge para as instâncias x2iedn.xlarge. Embora o tamanho da instância seja menor, os aprimoramentos nas instâncias x2 melhoram a performance e a otimização do SQL Server usando extensões do grupo de buffers. Isso permitiu que a empresa fizesse o downgrade da edição SQL Server Enterprise para a edição SQL Server Standard e reduzisse seu licenciamento do SQL Server de 8 v CPUs para 4 v. CPUs

Antes da otimização:


****  

| Servidor | Instância do EC2 | Edição do SQL Server | Custo mensal | 
| --- | --- | --- | --- | 
| Cutucar DB1 | x1e.2xlarge | Enterprise | $3.918,64 | 
| Cutucar DB2 | x1e.2xlarge | Enterprise | $3.918,64 | 
| Total |   |   | $7.837,28 | 

Após a otimização:


****  

| Servidor | Instância do EC2 | Edição do SQL Server | Custo mensal | 
| --- | --- | --- | --- | 
| Cutucar DB1 | x2iedn.xlarge | Standard | $1.215,00 | 
| Cutucar DB2 | x2iedn.xlarge | Standard | $1.215,00 | 
| Total |   |   | $2.430,00 | 

As mudanças combinadas de instâncias x1e.2xlarge para instâncias x2iedn.xlarge permitiram que o cliente do exemplo economizasse USD 5.407 por mês em seus servidores de banco de dados de produção. Isso reduziu o custo total da workload em 69%.

**nota**  
Os preços na tabela anterior são baseados nos preços sob demanda na região `us-east-1`.

## Recomendações de otimização de custos
<a name="right-ec2-instance-opt-rec"></a>

### Instâncias otimizadas para memória
<a name="right-ec2-instance-memory-opt"></a>

Um dos aspectos mais importantes do SQL Server é entender sua dependência da memória. O SQL Server tenta usar toda a RAM disponível que não está sendo usada pelo sistema operacional (até 2 TB para uma instalação padrão). Ele faz isso por motivos de performance. Trabalhar com dados na memória é muito mais eficiente do que ter que extrair dados constantemente do disco, fazer alterações e depois gravá-los de volta no disco. Em vez disso, o SQL Server tenta carregar o máximo possível de dados dos bancos de dados anexados e os mantém na RAM. As alterações feitas nos dados acontecem na memória e são posteriormente gravadas no disco.

**nota**  
Para obter uma explicação detalhada de como o SQL Server grava alterações, consulte [Writing Pages](https://learn.microsoft.com/en-us/sql/relational-databases/writing-pages?view=sql-server-ver16) na documentação da Microsoft.

Como o SQL Server funciona melhor com grandes quantidades de RAM, geralmente recomendamos começar com os tipos de instâncias [otimizadas para memória do Amazon EC2](https://aws.amazon.com/ec2/instance-types/#Memory_Optimized). As instâncias otimizadas para memória são versáteis e oferecem uma variedade de opções diferentes. A família R tem uma vCPU-to-RAM proporção de 1 para 8 e tem opções para processadores Intel, processadores AMD, redes aprimoradas, desempenho aprimorado do EBS, armazenamento de instâncias e velocidade aprimorada do processador. Para cargas de trabalho com muita memória, há também uma família X que combina muitas das mesmas opções e estende a vCPU-to-RAM proporção para 1 a 32. Devido à versatilidade das instâncias otimizadas para memória, você pode aplicá-las a workloads do SQL Server de todas as formas e tamanhos.

### Cargas de trabalho abaixo do mínimo de recursos (menos de 4 v) CPUs
<a name="min-resources-4"></a>

Embora alguns casos de uso funcionem bem com instâncias expansíveis (T3), recomendamos que você geralmente evite usá-las para workloads do SQL Server. O licenciamento do SQL Server é baseado no número de v CPUs atribuído a uma instância. Se o SQL Server ficar ocioso a maior parte do dia e estiver adquirindo créditos de expansão, você pagará pelas licenças do SQL que não está utilizando totalmente. Além disso, o SQL Server tem um requisito mínimo de licença de 4 núcleos por servidor. Isso significa que, se você tem uma carga de trabalho do SQL Server que não exige 4 V CPUs de potência computacional, você está pagando uma licença do SQL Server que não está usando. Nesses cenários, seria melhor [consolidar várias instâncias do SQL Server](consolidate-instances.md) em um servidor maior.

### Workloads usando recursos mínimos (menos de 64 GB de RAM)
<a name="min-resources-64"></a>

Muitas workloads do SQL Server com menos de 64 GB de RAM não priorizam a alta performance ou a alta disponibilidade. Para esses tipos de workloads, a edição SQL Server Web pode ser uma boa opção se a aplicação estiver coberta pelas restrições de licenciamento da Microsoft.

**Importante**  
A edição SQL Server Web tem um caso de uso restrito com base nos termos de licenciamento da Microsoft. A edição SQL Server Web pode ser usada apenas para fornecer suporte a páginas da Web, sites, aplicativos da Web e serviços da Web públicos e acessíveis pela Internet. Ele não pode ser usado para oferecer suporte a line-of-business aplicativos (por exemplo, gerenciamento de relacionamento com clientes, gerenciamento de recursos corporativos e outros aplicativos similares).

O SQL Server Web Edition pode ser expandido até 32 v CPUs e 64 GB de RAM e é 86% mais barato do que o SQL Server Standard Edition. Para workloads com poucos recursos, usar uma instância otimizada para memória AMD, como a r6a, que tem um preço de computação 10% mais barato do que sua equivalente da Intel, também é uma boa maneira de reduzir ao mínimo os custos de computação e licenciamento do SQL.

### Workloads com recursos médios (menos de 128 GB de RAM)
<a name="avg-resources-128"></a>

A edição SQL Server Standard é usada na maioria das workloads do SQL Server com até 128 GB de RAM. A edição SQL Server Standard é 65 a 75% mais barata do que a edição SQL Server Enterprise e pode ser expandida para até 48 v CPUs e 128 GB de RAM. Como a limitação de 128 GB de RAM geralmente é atingida antes da limitação de 48 vCPUs, este é o foco da maioria dos clientes que desejam evitar a atualização para a edição SQL Server Enterprise.

O SQL Server tem um recurso chamado [extensão do grupo de buffers](https://learn.microsoft.com/en-us/sql/database-engine/configure-windows/buffer-pool-extension?view=sql-server-ver16). Esse recurso permite que o SQL Server use uma parte de um disco para atuar como uma extensão da RAM. A extensão do buffer pool funciona bem quando combinada com armazenamento ultrarrápido, como o NVMe SSDs usado no armazenamento de instâncias do [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html). As instâncias do Amazon EC2 que contêm armazenamento de instâncias são indicadas com um “d” no nome da instância (por exemplo, r5d, r6id e x2iedn).

As extensões do grupo de buffers não substituem a RAM normal. No entanto, se você precisar de mais de 128 GB de RAM, poderá usar extensões de grupo de buffers com instâncias do EC2, como r6id.4xlarge e x2iedn.xlarge, para retardar a atualização para o licenciamento da edição Enterprise.

### Workloads de alta performance (mais de 128 GB de RAM)
<a name="high-per-workloads-128"></a>

As workloads do SQL Server que exigem alta performance são um desafio para a otimização de custos devido à sua dependência de muitos recursos. No entanto, entender as diferenças nas instâncias do EC2 pode impedir que você faça a escolha errada.

A tabela a seguir mostra uma variedade de instâncias do EC2 otimizadas para memória e seus limites de performance.


****  

|   | r5b | r6idn | r7iz | x2iedn | x2iezn | 
| --- | --- | --- | --- | --- | --- | 
| Processador | 3.1 GHz<br />Processador Intel Xeon de segunda geração | 3.5 GHz<br />Processador Intel Xeon de terceira geração | 3.9 GHz<br />Processador Intel Xeon escalável de quarta geração | 3.5 GHz<br />Processador Intel Xeon de terceira geração | 4.5 GHz<br />Processador Intel Xeon de segunda geração | 
| Proporção CPU:RAM | 1:8 | 1:8 | 1:8 | 1:32 | 1:32 | 
| Máximo de vCPU | 96 | 128 | 128 | 128 | 48 | 
| RAM máxima | 768 GB | 1.024 GB | 1.024 GB | 4.096 GB | 1.536 GB | 
| Armazenamento de instância | – | NVMe SSD<br />(4x 1.900 GB) | – | NVMe SSD<br />(2x 1.900 GB) | – | 
| io2 Block Express | Compatível | Compatível | Compatível | Compatível | – | 
| IOPS máxima do EBS | 260.000 | 350,000 | 160.000 | 260.000 | 80.000 | 
| Throughput máximo do EBS | 60 Gbps | 80 Gbps | 40 Gbps | 80 Gbps | 19 Gbps | 
| Largura de banda da rede máxima | 25 Gbps | 200 Gbps | 50 Gbps | 100 Gbps | 100 Gbps | 

Cada instância é usada para uma finalidade diferente. Compreender sua workload do SQL Server pode ajudar você a escolher o tipo de instância mais adequado para você.

Detalhes sobre atributos:
+ **r5b**: o atributo “b” em r5b significa que esse tipo de instância está focado na alta performance do EBS. Na quinta geração de instâncias otimizadas para memória, a r5b foi a escolha de preferência. Foi o primeiro tipo de instância a utilizar volumes io2 Block Express e a atingir a IOPS máxima de armazenamento de 260 mil. O tipo de instância r5b ainda é uma alternativa econômica para as necessidades de alta performance do EBS.
+ **r6idn**: a sexta geração de instâncias otimizadas para memória ofereceu melhorias consideráveis em relação à geração anterior. Os aprimoramentos de performance do EBS da r5b são levados um passo adiante com a r6idn, aumentando a IOPS máxima para 350 mil. A r6idn também tem um volume de armazenamento de instâncias para extensões de grupos de buffers e tempdb para aumentar ainda mais a performance do SQL Server.
+ **x2iedn**: a x2iedn é semelhante à r6idn. Ele oferece níveis semelhantes de EBS aprimorado, rede aprimorada e armazenamento de instâncias NVMe SSD, mas com uma vCPU-to-RAM proporção de 1:32 para altas cargas de trabalho de memória e baixa quantidade de CPU (menores custos de licenciamento do SQL Server).
+ **x2iezn**: o atributo “z” em x2iezn indica que esse tipo de instância está focado na alta performance do processador. O processador Cascade Lake tem uma frequência turbo para todos os núcleos de até 4,5 GHz. Recomendamos que você use essa instância do EC2, juntamente com uma vCPU-to-RAM proporção de 1:32, em um cenário em que você deseja manter a quantidade de vCPU baixa. Isso, por sua vez, pode manter baixos os custos de licenciamento do SQL Server.
+ **r7iz**: o atributo “z” em r7iz indica que esse tipo de instância está focado na alta performance do processador. O processador Sapphire Rapids tem uma frequência turbo de todos os núcleos de até 3,9. GHz Como as instâncias x2iezn, o r7iz prioriza o desempenho do processador de alta frequência, mas com uma proporção de 1:8. vCPU-to-RAM

## Recursos adicionais do
<a name="right-ec2-instance-resources"></a>
+ [Instâncias do Amazon EC2 de uso geral (documentação](https://aws.amazon.com/ec2/instance-types/))AWS 
+ [Comparison tool](https://instances.vantage.sh/) (Vantage)
+ [Licenciamento — SQL Server](https://aws.amazon.com/windows/faq/#licensing-sql) (AWS documentação)