Amazon RDS
Amazon Relational Database Service
Zarządzane relacyjne bazy danych w chmurze AWS. Automatyczne backupy, patching, replikacja - Ty zajmujesz się danymi, AWS zajmuje się infrastrukturą.
Amazon RDS (Relational Database Service) to w pełni zarządzany serwis bazodanowy, który umożliwia uruchomienie relacyjnej bazy danych w chmurze bez konieczności samodzielnego zarządzania infrastrukturą. Obsługuje sześć popularnych silników: MySQL, PostgreSQL, MariaDB, Oracle, Microsoft SQL Server oraz Amazon Aurora. RDS automatycznie zajmuje się czasochłonnymi zadaniami administracyjnymi - instalacją poprawek, tworzeniem kopii zapasowych, wykrywaniem awarii i odtwarzaniem danych - dzięki czemu możesz skupić się na projektowaniu schematu i optymalizacji zapytań zamiast na utrzymaniu serwera.
Kluczową zaletą RDS jest Multi-AZ deployment - automatyczna replikacja bazy do innej strefy dostępności, zapewniająca wysoką dostępność i automatyczny failover w przypadku awarii. Dodatkowo mechanizm Read Replicas pozwala odciążyć bazę główną, kierując zapytania odczytowe do replik. Dla wielu zespołów migracja z samodzielnie zarządzanego MySQL/PostgreSQL na EC2 do RDS oznacza drastyczne zmniejszenie nakładu pracy operacyjnej przy jednoczesnym zwiększeniu niezawodności.
Amazon Aurora automatycznie replikuje dane 6 razy w 3 strefach dostępności i potrafi kontynuować operacje zapisu nawet po utracie 2 kopii danych. To dlatego Aurora oferuje dostępność na poziomie 99.99%.
Zawsze używaj Multi-AZ dla baz produkcyjnych - kosztuje 2x więcej, ale automatyczny failover może uratować Twój biznes. Dla środowisk dev/test wystarczy Single-AZ. A do zapytań analitycznych zawsze twórz Read Replica, zamiast obciążać bazę produkcyjną.
Multi-AZ failover powoduje krotka przerwe (60-120s), wiec aplikacja musi obslugiwac reconnect. Storage w RDS mozna tylko ZWIEKSZAC, nigdy zmniejszac. Wylaczenie automated backups (retention = 0) TRWALE USUWA wszystkie snapshoty. Przy skalowaniu w gore (zmiana typu instancji) wystapi restart i krotki downtime.
Amazon RDS automatyzuje zarzadzanie relacyjna baza danych - od provisioningu po patching. Ty skupiasz sie na schemacie i zapytaniach, AWS dba o infrastrukture. Oto kluczowe etapy uruchomienia i zarzadzania baza RDS.
Wybor silnika bazy danych
RDS wspiera 6 silnikow: MySQL, PostgreSQL, MariaDB, Oracle, SQL Server i Amazon Aurora. Aurora to silnik natywny dla chmury - 5x szybszy niz MySQL i 3x szybszy niz PostgreSQL przy tej samej cenie. Wybor silnika determinuje dostepne funkcje: np. Aurora oferuje wspoldzielony storage i do 15 replik odczytu, a PostgreSQL bogaty ekosystem rozszerzen (PostGIS, pg_vector).
Klasa instancji i storage
Klasa instancji (db.t3, db.m5, db.r5) determinuje CPU i RAM. Klasy burstable (db.t3) sa tanie, ale throttluja przy stałym obciazeniu. Dla produkcji uzyj db.m5 (general purpose) lub db.r5 (memory-optimized dla duzych baz). Storage: gp3 daje 3000 IOPS baseline (mozna zwiekszyc do 16000), io1/io2 daje do 64000 IOPS dla wymagajacych workloadow. Storage Auto Scaling automatycznie powiekszy dysk.
Multi-AZ - wysoka dostepnosc
Multi-AZ deployment tworzy synchroniczna replike w innej strefie dostepnosci. W razie awarii primary, RDS automatycznie przelacza DNS na standby w ciagu 60-120 sekund. Nie musisz zmieniac connection stringa - endpoint DNS pozostaje ten sam. Multi-AZ nie sluzy do read scalingu - standby nie przyjmuje zapytan. Dla Aurora Multi-AZ to standard - repliki Aurora moga byc rownoczesnie Read Replicas.
Parameter Groups - konfiguracja silnika
Parameter Groups to odpowiednik pliku konfiguracyjnego bazy danych (np. my.cnf dla MySQL). Mozesz dostroic parametry: max_connections, innodb_buffer_pool_size, shared_buffers (PostgreSQL). Zmiana parametrow dynamicznych aplikuje sie natychmiast, statycznych wymaga rebootu. Twórz wlasne Parameter Groups - domyslne nie sa edytowalne.
Backupy i przywracanie
Automated backups to codzienne snapshoty calej instancji + logi transakcji co 5 minut. Pozwalaja na Point-in-Time Recovery (PITR) z dokladnoscia do sekundy. Retencja: 1-35 dni (domyslnie 7). Manualne snapshoty nie wygasaja i mozesz je kopiowac miedzy regionami. Przywracanie zawsze tworzy nowa instancje - nie nadpisuje istniejacej. Czas przywracania zalezy od rozmiaru bazy.
Monitoring i utrzymanie
RDS automatycznie stosuje patche bezpieczenstwa w zdefiniowanym maintenance window (30 min okno, np. niedziela 03:00-03:30). Enhanced Monitoring daje metryki systemu operacyjnego co 1 sekunde (CPU per proces, pamiec, I/O). Performance Insights to darmowe narzedzie do analizy obciazenia bazy - pokazuje Top SQL, waits, sesje. Ustaw CloudWatch Alarmy na FreeStorageSpace i CPUUtilization.
RDS to managed service, ale nadal wymaga doswiadczenia, zeby dzialal optymalnie. Oto wskazowki z produkcyjnych wdrozen - od skalowania po oszczednosci.
Read Replicas - skaluj odczyty, nie instancje
Read Replica to asynchroniczna kopia bazy, ktora obsluguje zapytania SELECT. Mozesz miec do 15 replik (tyle samo dla Aurora). Typowy wzorzec: aplikacja pisze do primary, czyta z replik. Pamietaj o replication lag - dane na replice moga byc opoznione o sekundy. Dla Aurora lag to zazwyczaj ponizej 100ms dzieki wspoldzielonemu storage. Read Replicas mozna promowac na standalone instancje - to tez sposob na migracje miedzy regionami.
PoczatkujacyPerformance Insights - diagnozuj wolne zapytania
Performance Insights (darmowe z 7-dniowa retencja) pokazuje: ktore zapytania obciazaja baze (Top SQL), na co baza czeka (wait events), ile sesji jest aktywnych. Szukaj wait events typu IO:DataFileRead (za maly buffer pool lub brak indeksow), CPU (zle zoptymalizowane zapytania), Lock:Tuple (contention). To pierwsze narzedzie, ktore otwierasz gdy baza zwalnia.
PoczatkujacyRDS Proxy - connection pooling bez kodu
RDS Proxy siedzi miedzy aplikacja a baza i zarzadza pula polaczen. Kluczowe dla Lambda - kazde wywolanie Lambda otwiera nowe polaczenie, co szybko wyczerpuje max_connections. RDS Proxy utrzymuje stala pule polaczen i multipleksuje zapytania. Dodatkowy bonus: failover Multi-AZ przez Proxy trwa 50% krocej (ok. 30 sekund). Koszt: ~15% ceny instancji RDS.
ZaawansowanyAutomated backups vs manualne snapshoty
Automated backups daja PITR, ale wygasaja po max 35 dniach. Manualne snapshoty nie wygasaja - uzywaj ich przed wiekszymi zmianami (migracje schemy, upgrade silnika). Pro tip: przed upgradeem silnika zrob manualny snapshot i przetestuj upgrade na kopii (Restore from Snapshot). Koszt snapshotow: platisz za storage powyzej rozmiaru przydzielonego storage instancji.
PoczatkujacyMaintenance window - planuj z glowa
AWS stosuje patche w maintenance window - instancja moze byc niedostepna na kilka minut. Dla Multi-AZ: patch idzie najpierw na standby, potem failover, potem patch primary (krotka niedostepnosc). Ustaw window na godziny najmniejszego ruchu. Monitoruj pending maintenance w konsoli - mozesz zaaplikowac patche wczesniej w kontrolowany sposob zamiast czekac na automatyczne okno.
PoczatkujacyAurora vs standardowy RDS - kiedy upgrade
Aurora kosztuje ~20% wiecej niz standardowy RDS, ale daje: storage auto-scaling do 128 TB bez downtime, replikacje z lagiem ponizej 100ms, szybszy failover (ok. 30 sekund vs 60-120 w RDS), backtrack (cofanie bazy w czasie bez restore). Przejdz na Aurora gdy: potrzebujesz wiecej niz 2 Read Replicas, Twoja baza rosnie ponad 1 TB, SLA wymaga szybszego failover.
ZaawansowanyScreenshoty z AWS Console
Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z Amazon RDS bezposrednio w konsoli AWS.
Do czego sluzy Amazon RDS?
Backend aplikacji webowych
Klasyczne zastosowanie - baza danych dla aplikacji napisanej w Django, Rails, Laravel czy Spring Boot. RDS zapewnia automatyczne backupy i skalowalność bez zarządzania serwerem bazodanowym.
Systemy e-commerce
Przechowywanie katalogów produktów, zamówień, danych klientów i transakcji w relacyjnej bazie z gwarancją ACID i automatycznym failoverem Multi-AZ.
Systemy raportowe i analityczne
Wykorzystanie Read Replicas do uruchamiania ciężkich zapytań analitycznych bez obciążania produkcyjnej bazy danych. Idealne do generowania raportów biznesowych.
Migracja baz on-premises do chmury
Przeniesienie istniejącej bazy MySQL lub PostgreSQL z własnego serwera do RDS przy użyciu AWS Database Migration Service (DMS) z minimalnym przestojem.
Co musisz wiedziec?
Instancja DB
Izolowane środowisko bazodanowe w chmurze. Wybierasz klasę instancji (CPU, RAM) i silnik bazy danych. Odpowiednik serwera bazy danych.
Multi-AZ
Tryb wysokiej dostępności. RDS automatycznie tworzy replikę synchroniczną w innej strefie dostępności. W razie awarii failover następuje automatycznie w ciągu 60-120 sekund.
Read Replica
Asynchroniczna kopia bazy do obsługi zapytań odczytowych. Odciąża bazę główną. Można mieć do 15 replik zarówno dla MySQL/PostgreSQL, jak i dla Aurora.
Automatyczne backupy
RDS automatycznie tworzy snapshot bazy raz dziennie i przechowuje transaction logi. Umożliwia Point-in-Time Recovery do dowolnej sekundy w oknie retencji (do 35 dni).
Parameter Group
Zbiór parametrów konfiguracyjnych silnika bazy danych (np. max_connections, innodb_buffer_pool_size). Pozwala tuningować bazę bez edycji plików konfiguracyjnych.
Subnet Group
Grupa subnetów VPC, w których RDS może uruchomić instancję bazy. Definiuje w jakich strefach dostępności baza może działać.
Architektura: Wysoko dostepna baza danych na RDS
Architektura produkcyjna z RDS Multi-AZ, Read Replicas i connection poolingiem przez RDS Proxy. Wzorzec zapewnia automatyczny failover, skalowanie odczytow i bezpieczne polaczenia z Lambda.
Porównanie silników bazodanowych w RDS
| Cecha | MySQL | PostgreSQL | Aurora | MariaDB |
|---|---|---|---|---|
| Wydajność | Dobra | Bardzo dobra | Do 5x lepsza od MySQL | Dobra |
| Max Read Replicas | 15 | 15 | 15 | 15 |
| Replikacja storage | Standardowa | Standardowa | Automatyczna w 3 AZ | Standardowa |
| Max rozmiar storage | 64 TB | 64 TB | 128 TB | 64 TB |
| Automatyczny failover | Multi-AZ | Multi-AZ | Wbudowany (~30s) | Multi-AZ |
| Serverless | Nie | Nie | Aurora Serverless v2 | Nie |
| Koszt | Najniższy | Niski | Wyższy (~20%) | Najniższy |
Ile kosztuje Amazon RDS?
On-Demand
Płacisz za godzinę działania instancji. Bez zobowiązań, idealne na start i testy.
db.t3.micro MySQL: ~$0.017/godz. (~$12.50/mies.)
Reserved Instances
Rezerwujesz na 1-3 lata. Znacząca oszczędność dla stałych obciążeń produkcyjnych.
db.t3.micro RI 1 rok: do 40% taniej niż On-Demand
Aurora Serverless
Płacisz za ACU (Aurora Capacity Units). Baza automatycznie skaluje się w górę i w dół, a nawet może się zatrzymać przy braku ruchu.
Aurora Serverless v2: od $0.12/ACU-godz.
Free Tier
750 godzin db.t2.micro/db.t3.micro miesięcznie przez 12 miesięcy. 20 GB storage, 20 GB na backupy.
Wystarczy na 1 instancję bazy 24/7 przez rok
Przyklady AWS CLI
Utwórz instancję RDS MySQL
Tworzy bazę MySQL 8.0 na instancji db.t3.micro w Free Tier
aws rds create-db-instance \
--db-instance-identifier moja-baza \
--db-instance-class db.t3.micro \
--engine mysql \
--engine-version 8.0 \
--master-username admin \
--master-user-password MojeSilneHaslo123! \
--allocated-storage 20
Sprawdź status instancji
Wyświetla informacje o instancji bazy danych
aws rds describe-db-instances \
--db-instance-identifier moja-baza \
--query 'DBInstances[0].{Status:DBInstanceStatus,Engine:Engine,Endpoint:Endpoint.Address}' \
--output table
Utwórz snapshot bazy
Ręczny backup bazy danych (przechowywany do momentu usunięcia)
aws rds create-db-snapshot \
--db-instance-identifier moja-baza \
--db-snapshot-identifier moja-baza-backup-2024
Utwórz Read Replica
Tworzy replikę odczytową bazy w innym regionie
aws rds create-db-instance-read-replica \
--db-instance-identifier moja-baza-replica \
--source-db-instance-identifier moja-baza \
--db-instance-class db.t3.small
Quiz: Amazon RDS
Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.
1. Co zapewnia Multi-AZ deployment w RDS?
2. Ile Read Replicas może mieć instancja Amazon Aurora?
3. Jak długo RDS przechowuje automatyczne backupy?
4. Który silnik bazodanowy jest natywny dla AWS i oferuje kompatybilność z MySQL i PostgreSQL?
Czesto uzywane razem z Amazon RDS
Czytaj więcej o Amazon RDS
Chcesz poznac Amazon RDS w praktyce?
Darmowy kurs "AWS od podstaw" pokazuje jak uzywac Amazon RDS krok po kroku. Teoria + praktyka od zera.