Entre els motors que ofereix RDS n'hi ha un d'especial, creat per la pròpia AWS: Aurora. No és un motor «de fàbrica» com MySQL o PostgreSQL, sinó una versió millorada i reinventada per AWS per al núvol. En aquest subcapítol veurem què el fa diferent i quan escollir-lo davant del RDS «clàssic» (el que se sol anomenar RDS vanilla).

Què és Aurora

Amazon Aurora és una base de dades relacional creada per AWS que és compatible amb MySQL i PostgreSQL, però redissenyada per dins per aprofitar al màxim el núvol.

  • «Compatible amb MySQL/PostgreSQL» vol dir que la teva aplicació parla amb Aurora igual que parlaria amb MySQL o PostgreSQL. No has de reescriure el teu codi ni aprendre un llenguatge nou. Per sota, Aurora és molt diferent i molt més eficient.

Analogia: Imagina que MySQL és un bon cotxe de carrer. Aurora és com agafar aquest mateix cotxe, conservar el volant i els pedals (perquè sàpigues conduir-lo sense aprendre res nou) però canviar-li el motor per un de competició. Condueixes igual, però rendeix moltíssim més.

Els avantatges d’Aurora sobre RDS vanilla

  1. Molta més rendiment

AWS afirma que Aurora pot ser fins a 5 vegades més ràpida que MySQL i fins a 3 vegades més ràpida que PostgreSQL en RDS estàndard, gràcies a la seva arquitectura d’emmagatzematge redissenyada. Per a aplicacions exigents, això és una gran diferència.

  1. Emmagatzematge que creix sol

En RDS clàssic, has de decidir per endavant quanta espai de disc reservar (i ampliar-lo a mà si et quedes curt). En Aurora, l’emmagatzematge creix automàticament a mesura que les teves dades augmenten, sense que hagis de fer res. Pagues pel que utilitzes.

Avantatge pràctica: t’oblides de l’ensurt clàssic de «s’ha omplert el disc de la base de dades». Aurora s’expandeix sola.

  1. Alta disponibilitat superior

Aurora guarda sis còpies de les teves dades repartides en tres zones de disponibilitat automàticament. Això la fa extremadament resistent a fallades: pot perdre còpies senceres i continuar funcionant sense perdre dades. La recuperació davant de fallades és més ràpida que en RDS clàssic.

  1. Rèpliques de lectura més ràpides i nombroses

Aurora permet fins a 15 rèpliques de lectura (davant de les 5 de RDS clàssic) i amb un retard de sincronització mínim. Ideal per a aplicacions amb moltíssima lectura.

  1. Aurora Serverless: que escali sol

Existeix una variant anomenada Aurora Serverless que ajusta automàticament la seva capacitat segons la demanda, i fins i tot pot reduir-se a gairebé zero quan no hi ha activitat. Pagues per l’ús real.

Quan és genial: per a aplicacions amb ús intermitent o impredictible (per exemple, un entorn de desenvolupament que només s’utilitza en horari d’oficina, o una app amb pics esporàdics). En lloc de pagar una base de dades encesa 24/7, pagues només quan s’utilitza. Recorda l’esperit d’elasticitat del Capítol 1.

Aurora vs RDS vanilla: taula comparativa

Característica RDS vanilla (MySQL/PostgreSQL) Aurora
Rendiment Bo Molt superior (fins a 3-5×)
Emmagatzematge El reserves tu, l’amplies a mà Creix automàticament
Còpies de dades Segons Multi-AZ 6 còpies en 3 AZ, automàtic
Màx. rèpliques de lectura 5 15
Opció serverless No Sí (Aurora Serverless)
Cost Més econòmic Una mica més car
Compatibilitat MySQL, PostgreSQL i altres Compatible amb MySQL/PostgreSQL

Aleshores faig servir sempre Aurora?

No necessàriament. Aurora és més potent però també una mica més cara que RDS vanilla. L’elecció depèn del teu cas:

Escull Aurora quan:

  • Necessites alt rendiment o esperes créixer molt.
  • Vols la màxima disponibilitat sense complicar-te.
  • Tens molta càrrega de lectura (aprofites les seves rèpliques).
  • El teu ús és intermitent i t’interessa Aurora Serverless.

Escull RDS vanilla quan:

  • La teva aplicació és petita o mitjana i no necessita el rendiment extra.
  • Vols minimitzar el cost.
  • Necessites un motor que Aurora no ofereix (Oracle, SQL Server, MariaDB…).
  • Vols exactament el mateix MySQL/PostgreSQL «de fàbrica» per algun requisit concret.

Exemple real: Una startup comença el seu producte amb RDS PostgreSQL estàndard perquè és barat i suficient. Quan la seva base d’usuaris creix i la base de dades comença a anar justa de rendiment, migren a Aurora PostgreSQL (sense tocar el seu codi, gràcies a la compatibilitat) i guanyen velocitat i capacitat de créixer. Aurora «acompanya» el seu èxit.

El que has de recordar

  • Aurora és la base de dades relacional pròpia d’AWS, compatible amb MySQL i PostgreSQL (el teu codi funciona igual) però redissenyada per al núvol.
  • Els seus avantatges: molt més rendiment, emmagatzematge que creix sol, alta disponibilitat superior (6 còpies en 3 AZ), més rèpliques de lectura i l’opció Aurora Serverless (escala sol, ideal per a ús intermitent).
  • És més potent però una mica més cara que RDS vanilla.
  • Escull Aurora per alt rendiment/creixement; RDS vanilla per a projectes més petits, menor cost o motors que Aurora no ofereix.

En el següent subcapítol canviem de món: veurem DynamoDB, una base de dades NoSQL molt diferent de les relacionals, i quan convé utilitzar-la.

Cloud, AWS & Terraform — De zero a expert

Capítol 1 · Què és el cloud computing

Capítol 2 · El mercat cloud i els grans proveïdors

Capítol 3 · Regions, zones de disponibilitat i edge

Capítol 4 · Càlcul: EC2

Capítol 5 · Emmagatzematge: S3

Capítol 6 · Xarxes: VPC

Capítol 7 · Identitat i accés: IAM

Capítol 8 · Bases de dades gestionades

Capítol 9 · Per què Infraestructura com a Codi

Capítol 10 · HCL: el llenguatge de Terraform

Capítol 11 · Providers i estat

Capítol 12 · La teva primera infraestructura real amb Terraform

Capítol 13 · Balanceig de càrrega i autoescalat

Capítol 14 · Serverless amb Lambda

Capítol 15 · Missatgeria i esdeveniments

Capítol 16 · Lliurament de contingut i DNS

Capítol 17 · Contenidors a AWS

Capítol 18 · Mòduls: reutilització i composició

Capítol 19 · Workspaces i gestió d'entorns

Capítol 20 · Backends remots i locking

Capítol 21 · Testing d'infraestructura

Capítol 22 · Terraform en CI/CD

Capítol 23 · Seguretat en profunditat

Capítol 24 · Observabilitat: logs, mètriques i traces

Capítol 25 · Optimització de costos

Capítol 26 · Alta disponibilitat i disaster recovery

Capítol 27 · Well-Architected Framework d'AWS

Capítol 28 · Arquitectures serverless a escala

Capítol 29 · Plataformes de dades a AWS

Capítol 30 · Multi-compte i landing zones

Capítol 31 · Platform Engineering i Internal Developer Platform

Capítol 32 · Certificacions AWS rellevants

Capítol 33 · Projectes per consolidar el que s'ha après

Capítol 34 · Recursos i comunitat

© Copyright 2024. Tots els drets reservats