Amazon Aurora
Database Cloud Practitioner Solutions Architect Associate

Amazon Aurora

Amazon Aurora

Relacyjna baza danych klasy enterprise w chmurze AWS. Kompatybilna z MySQL i PostgreSQL, do 5x szybsza niz MySQL i 3x szybsza niz PostgreSQL - przy zlomku kosztow komercyjnych baz danych.

Amazon Aurora to w pelni zarzadzana relacyjna baza danych stworzona przez AWS, ktora laczy wydajnosc i dostepnosc komercyjnych baz danych z prostota i oplacalnoscia baz open source. Aurora jest kompatybilna z MySQL i PostgreSQL, co oznacza, ze mozesz uzywac istniejacych narzedzi, sterownikow i kodu aplikacji.

Aurora zostala zaprojektowana od zera z mysla o chmurze. Dzieki temu oferuje automatyczne skalowanie storage do 256 TiB, do 15 replik odczytu, Multi-AZ z automatycznym failoverem i Global Database dla aplikacji globalnych. Jesli potrzebujesz relacyjnej bazy danych w AWS - Aurora to najczesciej najlepszy wybor.

Czy wiesz, ze...

Aurora zostala zaprojektowana od zera przez AWS - to nie jest fork MySQL ani PostgreSQL. Oddziela warstwe obliczeniowa od storage, wykorzystujac rozproszona warstwe przechowywania danych w 3 strefach dostepnosci z 6 kopiami danych. Amazon.com zmigrowal 75 PB wewnetrznych baz danych do Aurora.

Pro Tip

Zacznij od Aurora Serverless v2 dla nieprzewidywalnych obciazen - skaluje sie od 0.5 do 128 ACU w kilka sekund. Dla stabilnej produkcji uzyj trybu provisioned z 1 writerem + 2 readerami w roznych AZ. Zawsze wlaczaj Enhanced Monitoring i Performance Insights (darmowe przy 7-dniowej retencji).

Uwaga

Aurora kosztuje okolo 2x wiecej niz standardowy RDS. Uzywaj jej, gdy faktycznie potrzebujesz tej wydajnosci, a nie do malych aplikacji, gdzie RDS MySQL w zupelnosci wystarczy.

Aurora to w pelni zarzadzana relacyjna baza danych kompatybilna z MySQL i PostgreSQL, zaprojektowana od podstaw dla chmury. Oferuje do 5x wieksza wydajnosc niz standardowy MySQL i 3x wieksza niz PostgreSQL, przy jednoczesnej kompatybilnosci z istniejacymi aplikacjami. Storage jest oddzielony od compute i automatycznie rosnie w krokach po 10 GB az do 128 TB.

1

Tworzenie klastra Aurora

Klaster Aurora sklada sie z jednej instancji writer i do 15 instancji reader. Przy tworzeniu wybierasz: klase instancji (np. db.r6g.xlarge), konfiguracje sieci (VPC, subnety w min. 2 AZ), Security Groups i ustawienia szyfrowania (KMS). Aurora automatycznie replikuje dane 6 razy w 3 Availability Zones - kazdy zapis wymaga potwierdzenia z 4 z 6 kopii.

2

Wybor silnika: MySQL vs PostgreSQL

Aurora MySQL (kompatybilny z MySQL 5.7/8.0) oferuje lepsze wsparcie dla parallel query i backtrack. Aurora PostgreSQL (kompatybilny z PG 13-16) daje bogatsze typy danych (JSONB, arrays), rozszerzenia (PostGIS, pgvector) i lepsze wsparcie dla Babelfish (kompatybilnosc z SQL Server). Wybor zalezy od istniejacego kodu i wymaganych funkcjonalnosci.

3

Endpointy: Writer i Reader

Klaster Aurora udostepnia osobne endpointy: Writer Endpoint zawsze wskazuje na aktywna instancje primary (automatyczny failover w ok. 30 sekund). Reader Endpoint rozdziela ruch miedzy wszystkie repliki read (round-robin). Mozesz tworzyc custom endpoints - np. dla raportowania kierujesz ruch na wieksza instancje db.r6g.4xlarge, a OLTP na mniejsze repliki.

4

Storage auto-scaling do 128 TB

Storage Aurora rosnie automatycznie w krokach po 10 GB az do 128 TB - nie musisz provisionowac dysku z gory jak w RDS. Dane sa zapisywane w Aurora Storage Engine - rozproszonym, samonaprawiajacym sie storage opartym na SSD. Kazdy blok danych jest replikowany 6 razy w 3 AZ. Aurora toleruje utrate do 2 kopii bez wplywu na zapis i do 3 kopii bez wplywu na odczyt.

5

Global Database - replikacja cross-region

Aurora Global Database replikuje dane do max 5 regionow wtornych z opoznieniem ponizej 1 sekundy (typowo 200-500 ms). Kazdy region wtorny moze miec do 16 read replik. W przypadku awarii calego regionu, promowanie regionu wtornego do primary zajmuje ponizej 1 minuty z RPO ponizej 1 sekundy. Idealny dla globalnych aplikacji wymagajacych niskiego latency i disaster recovery.

6

Backtrack - cofanie bazy w czasie

Backtrack (dostepny dla Aurora MySQL) pozwala cofnac baze danych do dowolnego punktu w ciagu ostatnich 72 godzin bez koniecznosci przywracania z backupu. Operacja trwa sekundy zamiast godzin. Idealne do szybkiego cofania blednych operacji DELETE/UPDATE na produkcji. Backtrack dziala na poziomie calego klastra - cofasz wszystkie dane jednoczesnie. Koszt to ok. $0.012 za milion zmian.

Sprawdzone praktyki z produkcyjnego uzycia Aurora - od optymalizacji kosztow po strategie disaster recovery dla krytycznych aplikacji.

Reader Endpoint dla skalowania odczytow

Kieruj zapytania SELECT (raporty, dashboardy, API read-only) na Reader Endpoint. Aurora automatycznie rozdziela ruch miedzy repliki. Kazda replika dzieli ten sam storage z writerem - nie ma opoznienia replikacji typowego dla MySQL (Aurora replica lag to typowo ponizej 20 ms). Przy 15 replikach mozesz obsluzyc setki tysiecy odczytow na sekunde.

Poczatkujacy

Backtrack zamiast PITR do szybkiego cofania

Point-in-Time Restore (PITR) tworzy nowy klaster z backupu - trwa minuty do godzin i wymaga zmiany connection stringa. Backtrack cofa istniejacy klaster w sekundach bez zmiany endpointow. Ustaw okno backtrack na 24-72h. Koszt jest minimalny ($0.012/milion zmian), a wartosc przy incydentach - bezcenna. Pamietaj: backtrack jest dostepny tylko dla Aurora MySQL.

Zaawansowany

Aurora Serverless v2 dla zmiennych obciazen

Serverless v2 skaluje sie w krokach po 0.5 ACU (2 GB RAM) od minimalnych 0.5 ACU do 256 ACU w sekundach. Idealny dla srodowisk dev/test (skaluje do minimum poza godzinami pracy), aplikacji z nieprzewidywalnymi spikami i multi-tenant SaaS. Konfiguruj min/max ACU - ustaw minimum na 1-2 ACU dla produkcji, aby uniknac cold startow. Koszt: $0.12/ACU/godzine.

Zaawansowany

Global Database dla disaster recovery

Skonfiguruj Aurora Global Database z regionem wtornym w odleglosci geograficznej (np. eu-west-1 primary, us-east-1 secondary). Testuj failover co kwartal - procedura managed planned failover trwa ok. 1-2 minuty z zerowym RPO. Dla nieplanowanych awarii (detach + promote) RPO wynosi ponizej 1 sekundy. Global Database to najtansza opcja multi-region DR dla relacyjnych baz danych.

Zaawansowany

Klonowanie bazy do testow

Aurora Clone tworzy kopie calej bazy danych w minuty, niezaleznie od rozmiaru (nawet 64 TB). Klon uzywa copy-on-write - nie kopiuje danych, wiec poczatkowo nie zajmuje dodatkowego storage. Uzywaj klonow do: testowania migracji, debugowania problemow produkcyjnych, szkolenia zespolu na realnych danych (po anonimizacji). Klon jest niezalezny - mozesz go usunac bez wplywu na zrodlo.

Poczatkujacy

Performance Insights do diagnostyki

Wlacz Performance Insights (darmowe 7 dni retencji, platne do 2 lat) na kazdym klastrze Aurora. Dashboard pokazuje top wait events (np. io/table/sql/handler, synch/mutex), top SQL queries wedlug obciazenia i aktywne sesje w czasie. Gdy baza zwalnia, Performance Insights natychmiast pokazuje, ktore zapytania i jakie waity sa przyczyna - bez potrzeby recznego analizowania slow query logow.

Poczatkujacy

Screenshoty z AWS Console

Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z Amazon Aurora bezposrednio w konsoli AWS.

Do czego sluzy Amazon Aurora?

01

Aplikacje webowe i SaaS

Backend dla aplikacji wymagajacych wysokiej dostepnosci i niskich opoznien. Aurora Serverless v2 automatycznie skaluje moc do ruchu.

02

Migracja z MySQL/PostgreSQL

Przenies istniejaca baze MySQL lub PostgreSQL do Aurora z minimalnymi zmianami w kodzie i zyskaj lepsza wydajnosc.

03

Aplikacje globalne

Aurora Global Database replikuje dane do 5 regionow z opoznieniem ponizej sekundy. Idealna dla aplikacji z uzytkownikami na calym swiecie.

04

Analityka i raportowanie

Do 15 replik odczytu pozwala odciazyc glowna baze od ciezkich zapytan analitycznych bez wplywu na wydajnosc produkcji.

Co musisz wiedziec?

Aurora Cluster

Klaster sklada sie z instancji primary (zapis/odczyt) i opcjonalnych replik (odczyt). Storage jest wspoldzielony i replikowany w 3 strefach dostepnosci.

Aurora Serverless v2

Tryb bezserwerowy, ktory automatycznie skaluje moc obliczeniowa w zakresie od 0.5 do 256 ACU. Placisz tylko za zuzycie - idealny dla zmiennego obciazenia.

Read Replica

Replika odczytu, ktora odciarza instancje primary. Aurora obsluguje do 15 replik z opoznieniem replikacji ponizej 10 ms.

Global Database

Replikacja danych do maksymalnie 5 regionow AWS z opoznieniem ponizej 1 sekundy. W razie awarii regionu - failover w ponizej minuty.

Multi-AZ

Dane sa automatycznie replikowane w 6 kopiach w 3 strefach dostepnosci (AZ). Aurora przetrwa utrate do 2 kopii bez wplywu na zapis.

Cluster Endpoint

Punkt dostepu do klastra. Writer endpoint kieruje do instancji primary, reader endpoint rozklada ruch miedzy repliki odczytu.

Architektura: Wysoko dostepny klaster Aurora Multi-AZ

Typowa architektura produkcyjna Aurora z rozdzieleniem ruchu write/read, automatycznym failoverem i ciaglym backupem do S3. Ten wzorzec zapewnia RTO ponizej 30 sekund i RPO bliskie zeru.

Aplikacja Uzywa oddzielnych connection poolow dla write i read
INSERT/UPDATE/DELETE
Aurora Writer Endpoint
Aurora Writer Endpoint Automatycznie wskazuje na aktywna instancje primary, failover w 30s
Replikacja storage
Aurora Cluster (Primary)
Aurora Cluster (Primary) Instancja writer w AZ-1, 6-krotna replikacja storage w 3 AZ, do 128 TB
Reader Endpoint (round-robin)
Aurora Replicas (Reader)
Aurora Replicas (Reader) Do 15 replik read w roznych AZ, wspoldzielony storage, lag ponizej 20 ms
Continuous backup
Amazon S3
Amazon S3 Ciagly backup storage Aurora, retencja 1-35 dni, PITR z dokladnoscia do 5 min
Monitoring + alarmy
CloudWatch
CloudWatch Metryki: CPUUtilization, DatabaseConnections, AuroraReplicaLag, FreeableMemory
Writer Endpoint automatycznie przekierowuje ruch po failover - aplikacja nie musi zmieniac connection stringa. Failover trwa ok. 30 sekund dzieki shared storage.
Kazdy blok danych jest replikowany 6 razy w 3 AZ. Aurora toleruje utrate calej AZ (2 kopie) bez wplywu na dostepnosc zapisu i odczytu.
Wlacz Enhanced Monitoring (1s granularity) i Performance Insights na instancjach produkcyjnych - koszt jest minimalny, a wartosc diagnostyczna przy incydentach nieoceniona.

Porownanie Aurora vs RDS vs DynamoDB

Cecha Aurora RDS (MySQL/PostgreSQL) DynamoDB
Typ Relacyjna (SQL) Relacyjna (SQL) NoSQL (key-value/document)
Wydajnosc 5x MySQL, 3x PostgreSQL Standardowa Milisekundowa, dowolna skala
Max storage 128 TB (auto) 64 TB (reczne) Nieograniczony
Read Replicas Do 15 Do 5 (15 dla MySQL) Global Tables
Serverless Aurora Serverless v2 Nie On-Demand/Provisioned
Koszt ~2x RDS Bazowy Pay-per-request lub provisioned

Ile kosztuje Amazon Aurora?

On-Demand

Placisz za godzine dzialania instancji. Cena zalezy od klasy instancji i silnika (MySQL/PostgreSQL).

db.r6g.large: ~$0.26/godz. (~$190/mies.)

Aurora Serverless v2

Placisz za zuzycie w ACU (Aurora Capacity Units) na sekunde. Minimum 0.5 ACU.

1 ACU: ~$0.12/godz. Przy niskim ruchu moze kosztowac kilka dolarow miesiecznie.

Storage i I/O

Automatyczne skalowanie storage. Placisz za zuzyty storage i operacje I/O.

Storage: $0.10/GB/mies. I/O: $0.20 za milion requestow

Free Tier

Aurora nie jest objeta Free Tier, ale mozesz korzystac z RDS Free Tier z MySQL/PostgreSQL na db.t3.micro.

Alternatywa: RDS Free Tier - 750 godz. db.t3.micro/mies.

Przyklady AWS CLI

Utworz klaster Aurora MySQL

Tworzy nowy klaster Aurora kompatybilny z MySQL 8.0

aws rds create-db-cluster \
 --db-cluster-identifier moj-klaster \
 --engine aurora-mysql \
 --engine-version 8.0.mysql_aurora.3.04.0 \
 --master-username admin \
 --master-user-password MojeSilneHaslo123! \
 --db-subnet-group-name moja-subnet-grupa \
 --vpc-security-group-ids sg-0123456789abcdef0

Dodaj instancje do klastra

Tworzy instancje primary w klastrze Aurora

aws rds create-db-instance \
 --db-instance-identifier moj-klaster-instancja-1 \
 --db-cluster-identifier moj-klaster \
 --engine aurora-mysql \
 --db-instance-class db.r6g.large

Sprawdz status klastra

Wyswietla informacje o klastrach Aurora

aws rds describe-db-clusters \
 --query "DBClusters[].{Klaster:DBClusterIdentifier,Status:Status,Engine:Engine,Endpoint:Endpoint}" \
 --output table

Utworz replike odczytu

Dodaje replike odczytu do istniejacego klastra

aws rds create-db-instance \
 --db-instance-identifier moj-klaster-reader-1 \
 --db-cluster-identifier moj-klaster \
 --engine aurora-mysql \
 --db-instance-class db.r6g.large

Quiz: Amazon Aurora

Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.

Twoj wynik: 0 / 4

1. Ile replik odczytu moze miec klaster Amazon Aurora?

2. Aurora jest kompatybilna z jakimi silnikami baz danych?

3. Do jakiego rozmiaru moze automatycznie rosnac storage Aurora?

4. Czym jest Aurora Serverless v2?

Chcesz poznac Amazon Aurora w praktyce?

Darmowy kurs "AWS od podstaw" pokazuje jak uzywac Amazon Aurora krok po kroku. Teoria + praktyka od zera.

Zacznij darmowy kurs Wszystkie serwisy