> ## Content Index
> Fetch the complete content index at: https://www.azurebrasil.cloud/llms.txt
> Use this file to discover other available public pages before exploring further.

# Sql Server - Comparando Preços IaaS x PaaS da forma correta
- URL: https://www.azurebrasil.cloud/blog/sql-server-comparando-precos-iaas-x-paas-da-forma-correta/
- Published: 2023-08-02T18:31:13.000Z
- Updated: 2023-08-02T19:14:11.000Z
- Description: O post de hoje nasceu de uma discussão interna com o time da PowerTuning, onde comparamos o custo x beneficio de usarmos PaaS e IaaS no Azure.
- Author: Rafael dos Santos
- Tags: azure-sql-database, azure-managed-instance

O post de hoje nasceu de uma discussão interna com o time da PowerTuning, estamos migrando um cliente que possui estrutura on-premises com Sql Server 2008 para o Azure e nas discussões iniciais o ambiente proposto havia sido desenhado com o Sql Managed Instance (PaaS) pelo desejo de num futuro próximo poder usufruir da licença Enterprise e do banco de leitura.

O ambiente proposto estava em torno de R$10.000,00/mês com as otimizações e configurações necessárias, mas (sempre tem um mas) que surgiu uma dúvida, não seria mais barato subir o sql server me uma máquina Virtual?

A princípio a resposta seria sim, mas para sermos justos precisamos comparar maçãs com maçãs e esse é meu objetivo no post de hoje.

Para começarmos vou usar a seguinte especificação:

- 8 cores
- 4 TB de espaço em disco
- Região: Brazil South (apesar das regiões americanas serem mais baratas quero usar o mesmo exemplo que usei internamente com o time)

> Nota 1: Não é possível igualar o comparativo de memória, que no caso no Managed Instance temos 5GB de memória por core e na VM temos 64GB na configuração escolhida. Logo nos casos aonde Memória é super importante a VM tem 60% mais memória.

💡

Caso queira uma comparação mais específica para seu cenário, entre em contato conosco. Podemos auxiliar desde a estimativa do ambiente até a migração para a nuvem.

### Primeira comparação

![](https://storage.ghost.io/c/00/52/0052dced-0017-4d07-b190-1f5c48e0ab59/content/images/2023/08/image.png)

Azure SQL Managed Instance

![](https://storage.ghost.io/c/00/52/0052dced-0017-4d07-b190-1f5c48e0ab59/content/images/2023/08/image-1.png)

Virtual Machine com SQL Server

Antes de compararmos valores quero pontuar que quando estiverem considerando usar Máquinas Virtuais para banco de dados prefiram as máquinas da família E que possuem uma relação CPU x Memória maior que as outras, como no sql server pagamos o custo de licença por vCore utilizado a família E nos permite aumentar a memória sem aumentar consideravelmente o número de cores, diminuindo assim o custo com licenciamento.

A primeira coisa que aprendemos quando estamos lidando com bastante espaço em disco é que armazenamento na nuvem é infinito e barato, **armazenamento gerenciado não!**

- Dos $2,231.99 do Sql Managed Instance $887.98 é referente aos 4TB de armazenamento. \~40%
- Dos $1,961.76 da Máquina Virtual $856.11 é referente aos 4TB de armazenamento. \~44%

A desvantagem do armazenamento gerenciado é que pagamos pelo volume contratado e não pelo volume armazenado como no Azure Blob Storage, por exemplo.  
A maior vantagem é justamente não precisamos nos preocupar com backup e tarefas do dia a dia. (relacionadas ao disco e não ao conteúdo).

**Nessa comparação simples temos \~12% de redução usando máquina virtual,** o que ao longo de alguns anos pode ser uma diferença significativa⁣, mas toda vez que comparamos serviços não podemos comparar apenas preço, temos que comparar benefícios de um sobre o outro.

### Segunda Comparação

Para sermos justos precisamos no mínimo incluir o serviço de backup tanto para a VM quando para o Banco, uma vez que no Managed Instance não precisamos nos preocupar com Sistema Operacional e nem backup.

![](https://storage.ghost.io/c/00/52/0052dced-0017-4d07-b190-1f5c48e0ab59/content/images/2023/08/image-2.png)

Máquina Virtual + Sql Server + Backup

As coisas estão começando a ficar interessantes, agora com os ajustes de backup temos o seguinte cenário:

- Managed Instance: $3,010.04
- Máquina Virtual: $3,285.78

**O cenário com Máquina Virtual passou a ficar \~10% mais caro.**

### Terceira comparação

As coisas mudam de patamar mesmo quando falamos do Sql Server Enterprise, o desejo do cliente é usar alguns recursos do SQL Server Enterprise após a migração, especialmente rebuild online de índice.  
A justando os valores do Managed Instance para a camada Business Critical e do licenciamento da VM temos o seguinte cenário:

- Managed Instance: $4,959.42
- Máquina Virtual: $4,891.78

Aparentemente uma diferença insignificativa que poderíamos escolher um ou outro, MAS (aqui entra um GRANDE MAS) a camada Business Critical do Sql Managed Instance além da licença Enterprise ela conta com o Always ON configurado, isso nos garante 2 benefícios GIGANTES:

- Sempre 3 instâncias do servidor rodando em 3 nós diferentes, sendo assim temos alta disponibilidade de fato gerenciado direto pelo Azure.
- Acesso ao banco de leitura, mudando apenas a string de conexão, com isso ganhamos mais 8 cores para leitura em um nó secundário sem precisar alterar em nada arquitetura do ambiente e sistemas.

[High availability - Azure SQL Managed InstanceLearn about the Azure SQL Managed Instance service high availability capabilities and features.![](https://learn.microsoft.com/favicon.ico)Microsoft LearnStralle![](https://learn.microsoft.com/en-us/media/open-graph-image.png)](https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/high-availability-sla?view=azuresql-mi&ref=azurebrasil.cloud#business-critical-service-tier)

Para termos o mesmo cenário em VMs teríamos que ter mais 2 VMs rodando, o que praticamente triplicaria nossos custos.

### Quarta Comparação

Para não falarmos que o Managed Instance seria a melhor opção em todos os cenários, quero mostrar um cenário onde Máquina Virtual seria mais adequado.

Para casos onde a quantidade de memória disponível é mais importante temos que mudar o Tipo de Hardware na nossa configuração. (lembrando que os valores são com licença enterprise)

- Máquina Virtual - 64GB - $4,891.78
- MI Standard - 40GB - $4,959.42
- MI Premium Series - 56GB - $6,965.66
- MI Memory Optimized - 108GB - $8,610.35

Considerando o uso da VM sem alta disponibilidade temos uma redução de \~30% em relação à camada Premium Series.

Se colocarmos o recurso Always ON em consideração teríamos:

- Máquina Virtual - 64GB (x3) - $14,675.34
- MI Standard - 40GB - $4,959.42
- MI Premium Series - 56GB - $6,965.66
- MI Memory Optimized - 108GB - $8,610.35

**No cenário de Always ON o Sql Managed Instance Premium sairia \~53% mais barato em relação ao cenário com VM.**

[Resource limits - Azure SQL Managed InstanceThis article provides an overview of the resource limits for Azure SQL Managed Instance.![](https://learn.microsoft.com/favicon.ico)Microsoft Learnvladai78![](https://learn.microsoft.com/en-us/media/open-graph-image.png)](https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/resource-limits?view=azuresql-mi&ref=azurebrasil.cloud#hardware-configuration-characteristics)

### Bônus: Sql Database - Hyperscale

Se você chegou até aqui, eu queria compartilhar uma dica bônus com você.  
A comparação foi feita usando Sql Server Managed Instance x Máquina Virtual, pois é o cenário que atende o cliente que não é compatível com o Sql Azure Database.

Em casos aonde o banco é compatível temos preferido migrar para o Azure Sql Database na camada Hyperscale, que é o produto Cloud Native da Microsoft.

![](https://storage.ghost.io/c/00/52/0052dced-0017-4d07-b190-1f5c48e0ab59/content/images/2023/08/image-3.png)

Azure Sql Database Hyperscale

- Managed Instance: $4,959.42
- Hyperscale: $3,966.05

Com os mesmos benefícios em termos de plataforma e recursos **temos uma redução de \~20%** utilizando o Azure Sql Database Hyperscale.

[What is the Hyperscale service tier? - Azure SQL DatabaseThis article describes the Hyperscale service tier in the vCore-based purchasing model in Azure SQL Database and explains how it’s different from the General Purpose and Business Critical service tiers.![](https://learn.microsoft.com/favicon.ico)Microsoft Learndimitri-furman![](https://learn.microsoft.com/en-us/media/open-graph-image.png)](https://learn.microsoft.com/en-us/azure/azure-sql/database/service-tier-hyperscale?view=azuresql-db&ref=azurebrasil.cloud)

### Conclusão

Espero que tenham gostado dessa comparação e entendido um pouco mais sobre a diferença entre PaaS x IaaS na nuvem.  
Deixa aqui nos comentários qual cenário você escolheria.

💡

Caso queira uma comparação mais específica para seu cenário, entre em contato conosco. Podemos auxiliar desde a estimativa do ambiente até a migração para a nuvem.

\[\]s e até a próxima.