Google Cloud SQL & AlloyDB
O Google Cloud oferece o Cloud SQL para PostgreSQL para instâncias gerenciadas padrão e o AlloyDB para PostgreSQL para OLTP de maior desempenho com computação e armazenamento separados. Ambos suportam HA, backups automatizados e pools de leitura, com diferentes modelos de failover e perfis de precificação.
Receita
# gcloud: criar instância Cloud SQL Postgres HA (conceitual)
gcloud sql instances create orders-prod \
--database-version=POSTGRES_18 \
--tier=db-custom-4-16384 \
--region=us-central1 \
--availability-type=REGIONAL \
--storage-auto-increase-- Após conectar via Cloud SQL Auth Proxy ou IP privado
SELECT version();
CREATE EXTENSION IF NOT EXISTS pg_stat_statements;Quando usar isso:
- Aplicativos nativos do GCP no GKE ou Cloud Run que precisam de SQL com IP privado
- Escolhendo AlloyDB vs Cloud SQL para OLTP sensível à latência
- Projetando pool de leitura para tráfego analítico
Exemplo de Trabalho
Cloud SQL HA regional com réplica de leitura e sidecar Auth Proxy no GKE.
# trecho de implantação do kubernetes - Cloud SQL Auth Proxy 2.x
containers:
- name: cloud-sql-proxy
image: gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.14.0
args:
- "--structured-logs"
- "--private-ip"
- "my-project:us-central1:orders-prod"
- name: api
env:
- name: DATABASE_URL
value: "postgresql://app@127.0.0.1:5432/orders?sslmode=disable"# Instância de réplica de leitura para BI (assíncrono)
gcloud sql instances create orders-replica \
--master-instance-name=orders-prod \
--tier=db-custom-2-8192 \
--region=us-central1-- Na réplica
SELECT pg_is_in_recovery();
-- Roteie a conexão somente leitura do ORM para o IP da réplica via DSN separadoO que isso demonstra:
- HA Regional = primária + standby na região (failover automático)
- Auth Proxy lida com IAM e TLS para Cloud SQL sem lista de IP estática no laptop
- DSN de réplica de leitura isola a carga de relatórios
Mergulho Profundo
Cloud SQL vs AlloyDB
| Aspecto | Cloud SQL PostgreSQL | AlloyDB |
|---|---|---|
| Posicionamento | Postgres gerenciado geral | Compatível com PostgreSQL de alto desempenho |
| Armazenamento | PD/SSD padrão | Armazenamento inteligente AlloyDB |
| Escala de leitura | Réplicas de leitura | Nós de pool de leitura (baixa latência) |
| Melhor para | OLTP web típico | Latência/taxa de transferência exigentes |
| Extensões | Lista de permissões do Google | Lista de permissões (verificar matriz) |
Modelos de HA
- Zonal: zona única, sem failover de HA automático
- Regional: primária + standby na zona, failover automático (padrão de produção)
- Janelas de manutenção: declarar; testar failover trimestralmente
Rede
- IP Privado via peering VPC (recomendado)
- IP Público desabilitado, a menos que seja um requisito legado
- Auth Proxy para autenticação de banco de dados IAM e túnel seguro de CI/GKE
Armadilhas
- IP Público com redes autorizadas 0.0.0.0/0 - exposição à internet. Correção: apenas IP privado + proxy.
- Instância de produção de zona única - interrupção da AZ é tempo de inatividade. Correção:
availability-type=REGIONAL. - Latência de réplica de leitura ignorada - dashboards de BI desatualizados. Correção: monitorar métrica de latência de replicação; limitar a staleness aceitável.
- Surpresa no custo do AlloyDB - CPU + armazenamento + nós de leitura somam. Correção: POC com carga de trabalho realista antes do compromisso.
- Paridade de extensões - versões de
postgis,vectordiferem entre Cloud SQL e AlloyDB. Correção: verificar antes da aprovação da arquitetura. - Conexão do Cloud Run sem proxy - conector VPC necessário para IP privado. Correção: acesso VPC sem servidor ou padrão de sidecar proxy.
Alternativas
| Alternativa | Usar Quando | Não Usar Quando |
|---|---|---|
| AlloyDB | Precisa de pool de leitura escalável do Google | Banco de dados pequeno e simples, sensível ao custo |
| Cloud SQL zonal dev | Sandbox GCP mais barato | SLA de produção |
| Spanner | Consistência forte global | Precisa de SQL/extensões Postgres puras |
| Auto-hospedado no GCE | Controle total de extensões | Deseja patches gerenciados |
FAQs
Postgres 18 no Cloud SQL?
Verifique gcloud sql database-versions list - o Google lança versões principais em seu próprio cronograma.
Autenticação de banco de dados IAM?
Suportado com Auth Proxy e bibliotecas conectoras - tokens de curta duração semelhantes ao AWS IAM.
Recuperação point-in-time?
Retenção de log de transações configurável - alinhar com a política de RPO.
DR entre regiões?
Réplica de leitura em uma segunda região; promover manualmente ou automatizar via runbook.
pgvector?
Verifique a lista de extensões por versão; teste os parâmetros HNSW no AlloyDB de staging.
Notificações de manutenção?
Ativar no console; testar failover após a manutenção em staging primeiro.
Cloud SQL Insights?
A interface do usuário de insights de consulta complementa pg_stat_statements para SQL de ponta.
Motor colunar do AlloyDB?
Para aceleração analítica - não substitui um data warehouse; avalie os padrões de varredura.
Limites de cota?
Instâncias por projeto, limites de conexão por tier - planeje PgBouncer antecipadamente.
Exportar para GCS?
Backup automatizado para bucket para retenção de longo prazo além da janela padrão.
Relacionados
- Noções Básicas de Postgres Gerenciado - responsabilidade compartilhada
- AWS RDS & Aurora Postgres - comparação AWS
- Neon & Supabase - alternativas serverless
- ADR de Seleção de Nuvem - matriz de decisão
- Réplicas de Leitura para Relatórios - roteamento de leitura
Versões de Stack: Esta página foi escrita para PostgreSQL 18.4 (estável 18, manutenção 17), pgvector 0.8+, PgBouncer 1.x, Patroni 3.x e PostGIS 3.5+.