Więcej baz danych w AWS

RDS, Aurora i DynamoDB to główni gracze, ale AWS ma znacznie więcej usług bazodanowych. Każda jest zoptymalizowana pod konkretny typ obciążenia. Na egzaminie Cloud Practitioner musisz wiedzieć, do czego służy każda z nich i kiedy ją wybrać.

Potraktuj tę lekcję jak katalog: przy każdej usłudze wyjaśniam, do czego służy, kiedy ją wybrać i jakie słowa kluczowe na egzaminie wskazują na tę usługę.

Amazon ElastiCache

ElastiCache to zarządzane bazy danych in-memory (działające w pamięci RAM). Dwa silniki do wyboru: Redis i Memcached.

Po co baza w pamięci RAM? Bo jest ekstremalnie szybka. Dysk SSD daje milisekundy, RAM daje sub-milisekundową latencję (mikrosekundy). Idealna jako cache (pamięć podręczna) przed bazą główną.

Typowy wzorzec: aplikacja sprawdza cache (ElastiCache), jeśli dane tam są (cache hit), zwraca natychmiast. Jeśli nie ma (cache miss), pobiera z bazy głównej (np. RDS), zapisuje w cache i zwraca.

⚖️ Redis vs Memcached
CechaRedisMemcached
Struktury danychZaawansowane (listy, sety, sorted sets, hash)Proste (klucz-wartość)
Persistence (trwałość)Tak (dane przetrwają restart)Nie (dane znikają po restarcie)
ReplikacjaTak (Read Replicas)Nie
Multi-AZ failoverTakNie
Pub/Sub messagingTakNie
WielowątkowyNie (single-threaded)Tak (multi-threaded)
Kiedy wybrać?Gdy potrzebujesz trwałości, replikacji lub zaawansowanych strukturGdy potrzebujesz prostego cache z wielowątkowością
⚠️ Na egzaminie
Jeśli pytanie mówi o „in-memory cache", „sub-millisecond latency", „session store" lub „caching layer", odpowiedzią jest ElastiCache. Jeśli dodatkowo wspominają o „persistence" lub „advanced data structures", to Redis. Jeśli mówią o „simple caching" z „multi-threading", to Memcached. W praktyce 90% pytań wskazuje na Redis.
🏢 Scenariusz: Optymalizacja strony e-commerce

Sklep internetowy ma bazę RDS PostgreSQL z katalogiem 100,000 produktów. Strona główna wyświetla „Popularne produkty" i „Ostatnio oglądane". Za każdym razem odpytuje bazę, co powoduje 500ms latencję na stronę.

Rozwiązanie: ElastiCache Redis jako warstwa cache. Popularne produkty i sesje użytkowników (ostatnio oglądane) są cachowane w Redis. Pierwszy odczyt idzie do RDS (500ms), ale kolejne odczyty trafiają do cache (poniżej 1ms). Obciążenie RDS spada o 80%, strona ładuje się 10x szybciej.

Amazon Redshift

Redshift to hurtownia danych (data warehouse) zoptymalizowana pod analitykę. To nie jest baza do obsługi transakcji (OLTP) jak RDS. To baza do analizowania ogromnych zbiorów danych (OLAP).

Kluczowe cechy:

  • Bazuje na PostgreSQL (ale nie jest standardowym PostgreSQL, nie wszystkie funkcje działają)
  • Przechowuje dane kolumnowo (columnar storage), co przyspiesza zapytania analityczne
  • Skaluje się do petabajtów danych
  • Obsługuje zapytania SQL, więc analitycy mogą używać znanych narzędzi BI
  • Redshift Spectrum pozwala odpytywać dane bezpośrednio w S3 bez ładowania ich do Redshift
  • Redshift Serverless pozwala uruchomić hurtownię bez zarządzania klastrem
💡 OLTP vs OLAP
OLTP (Online Transaction Processing) to obsługa transakcji: dodaj zamówienie, zaktualizuj stan magazynu, wyświetl fakturę. Do tego służy RDS/Aurora. OLAP (Online Analytical Processing) to analityka: „ile sprzedaliśmy w Q3 w podziale na regiony?", „jaki jest trend sprzedaży za ostatnie 3 lata?". Do tego służy Redshift.
⚠️ Na egzaminie
Słowa kluczowe wskazujące na Redshift: „data warehouse", „analytics", „OLAP", „business intelligence", „petabytes of data", „columnar storage". Jeśli pytanie mówi o analizie historycznych danych sprzedażowych, to Redshift.

Amazon Neptune

Neptune to zarządzana baza grafowa (graph database). Przechowuje dane jako węzły (nodes) i krawędzie (edges/relationships) zamiast tabel.

Kiedy baza grafowa ma sens? Gdy relacje między danymi są ważniejsze niż same dane:

  • Social networks - kto kogo obserwuje, wspólni znajomi, rekomendacje
  • Fraud detection - powiązania między podejrzanymi transakcjami i kontami
  • Knowledge graphs - grafy wiedzy (Wikipedia, rekomendacje produktów)
  • Network management - mapa infrastruktury sieciowej
⚠️ Na egzaminie
Słowa kluczowe wskazujące na Neptune: „graph database", „social network", „fraud detection", „recommendation engine", „knowledge graph", „highly connected datasets".

Amazon DocumentDB

DocumentDB to zarządzana baza dokumentowa kompatybilna z MongoDB. Przechowuje dane jako dokumenty JSON.

Dlaczego nie po prostu MongoDB na EC2? Bo DocumentDB to managed service: automatyczne backupy, patching, skalowanie storage do 64 TB, replikacja w 3 AZ. Jeśli już używasz MongoDB i chcesz managed wersję w AWS, DocumentDB jest naturalnym wyborem.

⚠️ Na egzaminie
Słowa kluczowe: „MongoDB compatible", „document database", „JSON documents". Jeśli pytanie mówi o migracji z MongoDB do AWS, odpowiedzią jest DocumentDB.

Amazon QLDB (Quantum Ledger Database)

QLDB to baza ledger (księga) z kryptograficznie weryfikowalnym dziennikiem zmian. Każda zmiana jest zapisywana w immutable (niezmienialnym) logu, a integralność danych jest zabezpieczona kryptograficznie.

Przypadki użycia:

  • Systemy finansowe - historia transakcji, która nie może być zmieniona
  • Supply chain - śledzenie produktu od producenta do klienta
  • Rejestry - ewidencja zmian w dokumentach, licencjach, certyfikatach
⚠️ Na egzaminie
Słowa kluczowe: „immutable", „ledger", „cryptographically verifiable", „audit trail", „tamper-proof", „journal of changes". QLDB to nie blockchain (jest scentralizowany, nie zdecentralizowany), ale zapewnia podobne gwarancje niezmienialności.

Amazon Timestream

Timestream to baza do danych szeregów czasowych (time series). Zoptymalizowana do przechowywania i analizowania danych z timestampem.

Przypadki użycia:

  • IoT - dane z sensorów (temperatura, wilgotność, ciśnienie) co sekundę
  • DevOps monitoring - metryki aplikacji i infrastruktury
  • Analityka real-time - clickstream, logi aktywności użytkowników

Timestream automatycznie przenosi stare dane z pamięci (hot storage) na dysk (cold storage), optymalizując koszty.

⚠️ Na egzaminie
Słowa kluczowe: „time series", „IoT data", „sensor data", „timestamped data", „metrics over time".

Amazon Keyspaces

Keyspaces to zarządzane Apache Cassandra. Serverless, kompatybilne z Cassandra Query Language (CQL).

Kiedy Keyspaces? Gdy masz istniejące obciążenia Cassandra i chcesz managed service w AWS, lub gdy potrzebujesz bazy wide-column z dużą skalowalnością.

⚠️ Na egzaminie
Słowa kluczowe: „Cassandra", „Cassandra-compatible", „wide-column store". Na Cloud Practitioner Keyspaces pojawia się rzadko, ale warto wiedzieć, że istnieje.

Oto szybka ściągawka: typ obciążenia i odpowiednia usługa:

  • Relacyjna (SQL, ACID) → RDS, Aurora
  • Klucz-wartość, NoSQL, ogromna skala → DynamoDB
  • In-memory cache → ElastiCache (Redis/Memcached)
  • In-memory cache dla DynamoDB → DAX
  • Data warehouse, analityka (OLAP) → Redshift
  • Graf, relacje między danymi → Neptune
  • Dokumenty JSON, kompatybilność z MongoDB → DocumentDB
  • Immutable ledger, audit trail → QLDB
  • Time series, IoT, metryki → Timestream
  • Wide column, kompatybilność z Cassandra → Keyspaces
✅ Usługi bazodanowe i ich słowa kluczowe
ElastiCache = in-memory cache, sub-millisecond, session store (Redis lub Memcached)
Redshift = data warehouse, OLAP, analytics, petabytes, columnar storage
Neptune = graph database, social network, fraud detection, knowledge graph
DocumentDB = document database, MongoDB compatible, JSON
QLDB = immutable ledger, cryptographically verifiable, audit trail
Timestream = time series, IoT, sensor data, timestamped metrics
Keyspaces = Apache Cassandra compatible, wide-column
🧠 Podsumowanie
  • ElastiCache (Redis/Memcached) to in-memory cache z sub-milisekundową latencją, idealny jako warstwa cache przed RDS
  • Redshift to hurtownia danych (OLAP) do analityki na petabajtach, z kolumnowym storage
  • Neptune to baza grafowa do silnie powiązanych danych (social networks, fraud detection)
  • DocumentDB to managed MongoDB do obciążeń dokumentowych (JSON)
  • QLDB to immutable ledger z kryptograficznie weryfikowalnym dziennikiem zmian
  • Timestream to baza time series do IoT i metryk z automatycznym tiering storage
  • Keyspaces to managed Apache Cassandra
🧪 Sprawdź się

Firma chce analizować dane sprzedażowe z ostatnich 5 lat (petabajty danych) za pomocą zapytań SQL. Jaka usługa jest najlepsza?

A Amazon Redshift
B Amazon RDS
C Amazon DynamoDB
Redshift to hurtownia danych (data warehouse) zoptymalizowana do analityki (OLAP) na dużych zbiorach danych. Obsługuje SQL i kolumnowy storage, idealny do analiz historycznych. RDS to OLTP, nie OLAP. DynamoDB to NoSQL, nie do złożonych zapytań analitycznych.

Aplikacja potrzebuje bazy danych do śledzenia relacji między użytkownikami w sieci społecznościowej. Który serwis wybierzesz?

A Amazon DocumentDB
B Amazon Neptune
C Amazon QLDB
Neptune to baza grafowa, idealna do modelowania relacji (kto kogo obserwuje, wspólni znajomi). DocumentDB to baza dokumentowa do JSON. QLDB to ledger do niezmienialnego auditu.

System bankowy potrzebuje niezmienialnego dziennika wszystkich transakcji, kryptograficznie weryfikowalnego. Co wybierzesz?

A Amazon Aurora
B Amazon Neptune
C Amazon QLDB
QLDB (Quantum Ledger Database) zapewnia immutable, kryptograficznie weryfikowalny dziennik zmian. Każda transakcja jest zapisana i nie może być zmieniona ani usunięta. Idealny do systemów finansowych wymagających audit trail.