Ao montar um cluster do Amazon Aurora, vários fatores entram em jogo, e um dos mais importantes é a configuração de armazenamento do cluster. A escolha entre os modos Standard e I/O-Optimized é decisiva, mas costuma passar batido.

Como escolher entre os modos Aurora Standard e I/O-Optimized
Mas por que essa escolha pesa tanto?
Essa configuração tem papel decisivo na forma como o seu cluster será cobrado. Escolhendo o modo certo, dá para economizar até 40%, especialmente em workloads com uso intensivo de I/O.
Neste post, vamos mostrar as principais diferenças entre os modos do Aurora, o impacto de cada um no custo e as estratégias para tirar o máximo do seu investimento no AWS Aurora.
Custos do Amazon Aurora: o básico que você precisa saber
Antes de escolher o melhor modo para o seu caso, é essencial entender como o Amazon Aurora é cobrado. Os principais componentes são:
- Compute: a cobrança depende do tipo e do tamanho da instância dentro do cluster.
- Storage: o custo é calculado com base no armazenamento alocado para o cluster.
- Operações de I/O: a cobrança considera o volume de operações de leitura e escrita em todas as instâncias.
Esses não são os únicos fatores; há também transferência de dados, backups e outros recursos que podem ser habilitados. Mas esses pontos adicionais não são determinantes na hora de definir qual modo do Aurora escolher.
Compute
O preço do Amazon Aurora muda conforme o modo escolhido. Em compute, o modo Aurora I/O-Optimized é cerca de 30% mais caro que o Standard — uma diferença significativa, mas que é só parte da equação.

Amazon Aurora. Preços por instância de banco de dados
Storage
Em armazenamento, o modo Aurora I/O-Optimized é 125% mais caro que o Standard. À primeira vista, isso pode fazer o Standard parecer a opção mais econômica, principalmente para grandes volumes de dados. Só que existem outros fatores em jogo.

Amazon Aurora. Preços por armazenamento e operações de I/O do banco de dados
Operações de I/O
De cara, o Aurora Standard pode parecer bem mais barato que o I/O-Optimized. Então, o que torna o I/O-Optimized tão atraente?
A grande sacada é que o modo I/O-Optimized já inclui as operações de I/O no preço. Isso pode fazer toda a diferença em aplicações com uso intensivo de I/O.
Como escolher o modo certo para o seu cluster Aurora
Segundo a AWS: se o seu gasto com I/O passa de 25% do gasto total com o banco de dados Aurora, dá para economizar até 40% em workloads com uso intensivo de I/O usando o Aurora I/O-Optimized.
Falar é fácil; calcular na hora, nem tanto. Primeiro, você precisa apurar os custos de I/O do seu cluster Aurora e depois somar o gasto total com o banco. E não esqueça: um cluster Aurora pode ter várias instâncias, sejam provisionadas ou Serverless. Ou seja, não é tão simples quanto parece.
Agora imagine gerenciar uma frota de 100 clusters Aurora espalhados por várias regiões da AWS e ter que fazer essas verificações na mão, com frequência. Seria um trabalho infinito.
Veja uma abordagem recomendada para lidar com isso:
Criando um novo cluster Aurora
Ao criar um novo cluster Aurora, o modo ideal vai depender do IOPS (operações de entrada/saída por segundo) que o seu banco precisará suportar. Dá para pensar em IOPS como o volume de queries.
Para ambientes de desenvolvimento ou workloads de uso esporádico, o recomendado é começar pelo modo Aurora Standard. Já em produção ou em workloads com volumes de queries consistentemente altos, o Aurora I/O-Optimized tende a sair mais em conta.
Depois de rodar o cluster por algumas semanas e coletar dados de métricas suficientes, vale a pena reavaliar se o Standard ou o I/O-Optimized é mais econômico.
Avaliando um cluster Aurora já existente
Para avaliar um cluster Aurora já existente, sugiro um script Python que faz o trabalho pesado. Ele compara automaticamente os custos dos modos Standard e I/O-Optimized, mostrando claramente o seu gasto atual e ajudando a escolher a opção mais econômica.
https://gist.github.com/polius/5760117924b55d73f11434143596fd10
Veja um exemplo do resultado:

rds-scan.py — Saída da execução
Lembre-se: você pode migrar para o Aurora I/O-Optimized uma vez a cada 30 dias e voltar para o Aurora Standard a qualquer momento. A transição é transparente e não gera nenhum downtime, indo do Standard para o I/O-Optimized ou vice-versa.
Um último ponto: o recurso Parallel query do Aurora não é compatível com a configuração de armazenamento do Aurora I/O-Optimized. Então, se o seu banco depende muito desse recurso, será preciso pesar bem qual opção compensa mais.
Nossa missão na DoiT
Este é só um exemplo das inúmeras verificações que fazemos na DoiT para garantir que as infraestruturas em nuvem dos nossos clientes sejam robustas, em conformidade e otimizadas para o sucesso.
Com mais de 180 especialistas sêniores em nuvem dedicados a soluções personalizadas, nosso time está pronto para ajudar a garantir que a sua infraestrutura atenda aos mais altos padrões de performance e compliance.