AWS Bancos de Dados e Análise: Guia Completo
Os serviços de banco de dados da AWS aparecem frequentemente no exame CLF-C02 em forma de cenários do tipo "qual serviço você escolheria nesta situação?". Compreender as características principais e os casos de uso de cada serviço é essencial para o sucesso no exame.
---
Banco de Dados Relacional vs NoSQL — Conceitos Fundamentais
Bancos de Dados Relacionais (SQL)
Dados armazenados em um esquema fixo (estrutura de tabelas) Dados consultados e gerenciados via SQL Casos de uso: sistemas financeiros, processamento de transações Exemplos: MySQL, PostgreSQL, Oracle, SQL Server
Bancos de Dados NoSQL
Esquema flexível (sem necessidade de estrutura predefinida) Otimizados para escalabilidade horizontal (Scale-Out) Casos de uso: aplicativos em tempo real, IoT, mobile Exemplos: DynamoDB, DocumentDB
SQL é adequado para dados estruturados e processamento transacional, enquanto NoSQL é a escolha certa quando você precisa de um esquema flexível ou escalabilidade horizontal massiva.
---
Amazon RDS — O Padrão para Bancos de Dados Relacionais
O RDS (Relational Database Service) é um serviço de banco de dados relacional totalmente gerenciado, operado e mantido pela AWS. A AWS lida automaticamente com patches, backups e configuração de alta disponibilidade, permitindo que os desenvolvedores se concentrem na lógica da aplicação.
Mecanismos Suportados
MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Amazon Aurora
Instalação Direta no EC2 vs RDS
| Item | EC2 Direto | RDS | |------|------------|-----| | Patches do SO | Manual | Automático pela AWS | | Backups | Configuração manual | Automático + recuperação em ponto no tempo | | Alta Disponibilidade | Configuração manual | Multi-AZ integrado | | Read Replica | Configuração manual | Até 5, fácil de criar | | Acesso SSH | Disponível | Não disponível |
O RDS não permite acesso SSH porque a AWS gerencia diretamente a infraestrutura subjacente. Esse ponto é testado com frequência no exame.
Opções de Implantação do RDS
| Opção | Propósito | Características Principais | |-------|-----------|---------------------------| | Read Replicas | Desempenho de leitura | Replicação assíncrona, até 5, escritas vão apenas para o primário | | Multi-AZ | Alta disponibilidade | Replicação síncrona, failover automático, uma instância em espera | | Multi-Region | Recuperação de desastres + leituras globais | Protege contra falhas de região, custo adicional de replicação |
Essas três opções servem a propósitos distintos. Read Replicas melhoram o desempenho de leitura, Multi-AZ protege contra falhas de zona de disponibilidade, e Multi-Region fornece recuperação de desastres contra uma interrupção total de região.
---
Amazon Aurora — A Edição Premium do RDS
O Aurora é um banco de dados relacional de alto desempenho desenvolvido pela AWS. É compatível com MySQL e PostgreSQL enquanto oferece desempenho e disponibilidade significativamente superiores.
| Característica | Detalhes | |----------------|----------| | Compatibilidade | Compatível com MySQL e PostgreSQL | | Desempenho | 5x mais rápido que MySQL, 3x mais rápido que PostgreSQL | | Armazenamento | Escalabilidade automática (até 64TB) | | Read Replicas | Até 15 suportadas | | Custo | 20% mais caro que RDS, mas mais eficiente |
O Aurora é a escolha certa para cargas de trabalho empresariais que exigem alto desempenho e alta disponibilidade.
---
Amazon ElastiCache — Cache em Memória
O ElastiCache armazena em cache os resultados de consultas frequentes na memória, reduzindo a carga do banco de dados e melhorando os tempos de resposta. A AWS lida automaticamente com patches do SO e backups como um serviço totalmente gerenciado.
| Mecanismo | Características | |-----------|----------------| | Redis | Suporte a replicação e persistência, recursos avançados | | Memcached | Cache de memória simples, rápido e leve |
O ElastiCache fica na frente do banco de dados como um cache em memória de alto desempenho, reduzindo drasticamente os tempos de resposta para solicitações de leitura repetidas.
---
Amazon DynamoDB — NoSQL Serverless
O DynamoDB é o banco de dados NoSQL serverless totalmente gerenciado da AWS. Ele pode lidar com milhões de solicitações sem qualquer gerenciamento de infraestrutura e suporta trilhões de linhas e centenas de terabytes de dados.
| Característica | Detalhes | |----------------|----------| | Modelo de Dados | Chave-valor + documento | | Latência | Um único dígito de milissegundos | | Escalabilidade | Milhões de req/s, trilhões de linhas, centenas de TB | | Disponibilidade | Replicado automaticamente em 3 zonas de disponibilidade | | Gerenciamento | Serverless — sem necessidade de gerenciamento de infraestrutura |
DynamoDB Accelerator (DAX)
Um cache em memória criado especificamente para o DynamoDB que reduz os tempos de resposta de milissegundos para microssegundos (μs).
DynamoDB Global Tables
Replicação multirregião (multi-master) Leituras e escritas com baixa latência de qualquer lugar do mundo
As características definidoras do DynamoDB são: serverless + NoSQL + latência de um único dígito de milissegundos. Adicionar o DAX leva as respostas ao nível de microssegundos.
---
Serviços de Análise e Data Warehouse
Amazon Redshift — Data Warehouse
OLAP (Online Analytical Processing) — otimizado para consultas analíticas em grande escala Armazenamento colunar (Columnar Storage) → consultas de agregação rápidas Desempenho 10x mais rápido que outros data warehouses, escala de petabytes Interface SQL, integração com QuickSight e Tableau
Use RDS para processamento transacional (OLTP) e Redshift para análise em grande escala (OLAP).
Amazon Athena — Consultas SQL Serverless
Consulta direta de dados armazenados no S3 usando SQL serverless Sem infraestrutura para gerenciar, pague apenas pelos dados verificados ($5/TB) Suporta CSV, JSON, Parquet, ORC e outros formatos Casos de uso: VPC Flow Logs, logs do ELB, análise do CloudTrail
Sempre que um cenário perguntar sobre análise de dados do S3 com SQL, Athena é a resposta.
Amazon EMR — Processamento de Big Data
Clusters de big data gerenciados baseados em Hadoop, Spark e Hive Provisiona automaticamente clusters de centenas de instâncias EC2 Casos de uso: ETL em grande escala, aprendizado de máquina, indexação web
Amazon QuickSight — Painel de BI
Ferramenta de visualização de inteligência de negócios (BI) serverless Conecta-se ao RDS, Redshift, S3 e outras fontes de dados Modelo de preços por sessão, insights baseados em ML Casos de uso: painéis executivos, visualização de dados
AWS Glue — ETL Serverless
Serviço ETL (Extract, Transform, Load) totalmente gerenciado Serverless, prepara e transforma dados para análise Glue Data Catalog: um catálogo de dados que se integra com Athena, Redshift e EMR
---
Bancos de Dados de Propósito Específico
DocumentDB — Banco de Dados de Documentos Compatível com MongoDB
Banco de dados gerenciado compatível com MongoDB desenvolvido pela AWS, similar ao Aurora Otimizado para armazenamento de documentos JSON, Multi-AZ, armazenamento com escalabilidade automática (até 64TB) Casos de uso: gerenciamento de conteúdo, catálogos, backends mobile
Amazon Neptune — Banco de Dados de Grafos
Banco de dados de grafos totalmente gerenciado Consulta bilhões de relacionamentos com latência de milissegundos Casos de uso: redes sociais, detecção de fraude, mecanismos de recomendação, grafos de conhecimento (Wikipedia)
Amazon QLDB — Banco de Dados de Razão