Amazon DEA-C01: Datenspeicherung und Lake-Architektur — Lernleitfaden
Teil des Amazon Data Engineer Associate DEA-C01 — Lernleitfaden. Üben Sie mit verifizierten Antworten im Amazon-Prüfungscenter, oder absolvieren Sie zeitlich begrenzte Übungstests auf ExamRoll.io.
Dieser Bereich behandelt, wie AWS-Speicherdienste und Datenbank-Engines die Aufnahme großer Datenmengen, langlebige Archivierung, Abfrageleistung und sichere Governance in modernen Datenplattformen unterstützen. Data Engineers müssen Kosten, Zugriffslatenz, Langlebigkeit und granulare Zugriffskontrolle abwägen, während sie Dienste wie S3, Lake Formation, Redshift und DynamoDB in Pipelines integrieren. Das Verständnis der Kompromisse bei Speicherklassen, der Automatisierung von Lebenszyklen, von verwaltetem gegenüber lokalem Speicher und von Partitionierungsmustern verhindert Leistungs- und Kostenüberraschungen in der Produktion.
Amazon S3-Speicherklassen und Lebenszyklusrichtlinien
S3 bietet mehrere Speicherklassen und Lebenszykluskontrollen zur Optimierung von Kosten und Zugriffsmustern. Konfigurieren Sie die Speicherklasse beim Hochladen (Konsole oder CLI: aws s3 cp file s3://bucket/key –storage-class INTELLIGENT_TIERING) oder verwenden Sie Bucket-Lebenszyklusregeln (aws s3api put-bucket-lifecycle-configuration –bucket my-bucket –lifecycle-configuration file://lifecycle.json). Intelligent-Tiering verschiebt Objekte automatisch zwischen Ebenen für häufigen und seltenen Zugriff und hat eine geringe Überwachungsgebühr; aktivieren Sie es für unbekannte oder sich ändernde Zugriffsmuster. Verwenden Sie Lebenszyklusregeln, um Objekte zur langfristigen Aufbewahrung nach GLACIER oder DEEP_ARCHIVE zu überführen und um alte Versionen ablaufen zu lassen/zu löschen.
Entscheidungskriterien und Kompromisse:
- Intelligent-Tiering: geringer Betriebsaufwand bei variablem Zugriff, monatliche Überwachungsgebühr pro Objekt; am besten geeignet, wenn das Zugriffsmuster unvorhersehbar ist.
- Glacier vs. Glacier Deep Archive: Glacier bietet schnellere Standard- und beschleunigte Abrufoptionen bei höheren Speicherkosten; Deep Archive ist am günstigsten für jahrelange Aufbewahrung mit Abrufzeiten für Massen-/Standardabrufe (Stunden).
- Standard-IA vs. Intelligent-Tiering: Standard-IA hat eine Mindestgebühr für 30 Tage und Abrufgebühren – vermeiden Sie es für häufig abgerufene Daten oder kurzlebige Objekte.
Betriebliche Hinweise:
- Aktivieren Sie Versionierung (aws s3api put-bucket-versioning –bucket my-bucket –versioning-configuration Status=Enabled) und Object Lock (aws s3api put-object-lock-configuration –bucket my-bucket –object-lock-configuration file://lock.json) für Unveränderlichkeit; die Aktivierung von MFA Delete erfordert spezielle CLI-Operationen und das Bucket-Besitzerkonto mit MFA.
- Lebenszyklusübergänge gelten für Objektversionen und können nach Präfix/Tags eingegrenzt werden; verwenden Sie abort-incomplete-multipart-upload, um Speicherlecks zu vermeiden.
Data-Lake-Design mit S3 und Lake Formation
Entwerfen Sie einen Data Lake mit S3 als zentralem Objektspeicher und Lake Formation für die zentralisierte Zugriffskontrolle und Katalogisierung. Registrieren Sie S3-Speicherorte als Lake Formation-Ressourcen, richten Sie einen AWS Glue Data Catalog ein und verwenden Sie Lake Formation-Berechtigungen für Datenbanken/Tabellen (aws lakeformation grant-permissions –principal arn:aws:iam::123456789012:user/analyst –permissions SELECT –resource ‘{…}’). Lake Formation kann granulare Kontrollen durchsetzen: auf Spaltenebene, auf Zeilenebene (Filterausdrücke) und Maskierung auf Zellenebene mithilfe von LF-Tags und Datenfiltern, die auf Glue/Athena-Abfragen angewendet werden.
Wichtige Konfigurations- und Governance-Muster:
- Speicherort registrieren: Verwenden Sie die Lake Formation-Konsole, um s3://bucket/path zu registrieren und eine IAM-Rolle anzuhängen, die Lake Formation das Crawlen/Lesen erlaubt.
- Granulare Richtlinien: Definieren Sie LF-Tags und hängen Sie sie an Tabellen/Spalten an; erteilen Sie Berechtigungen mit einer Spaltenliste (column-list), um Spalten einzuschränken, und verwenden Sie Zeilenfilterausdrücke (row-filter expressions), um die für einen Principal zurückgegebenen Zeilen zu begrenzen.
- Denken Sie daran, dass Lake Formation-Berechtigungen die IAM-S3-Berechtigungen für den Glue/Athena-Zugriff überschreiben oder blockieren können – gewähren Sie bei Bedarf sowohl Lake Formation- als auch S3-Zugriff.
Entscheidungspunkte:
- Verwenden Sie Lake Formation, wenn Sie eine zentralisierte Katalogisierung, LF-Tags und eine granulare Durchsetzung über mehrere Analyse-Engines hinweg benötigen.
- Für einfache Zugriffskontrolle oder den Zugriff durch externe Tools ziehen Sie S3-Bucket-Richtlinien und IAM in Betracht, aber seien Sie vorsichtig: Analyse-Engines, die von Lake Formation verwaltet werden, ignorieren möglicherweise reine IAM-Berechtigungen.
Amazon Redshift-Architektur und -Speicher
Redshift trennt Rechenleistung und verwalteten Speicher auf RA3-Knoten im Gegensatz zu lokalen, SSD-gestützten DS2-Knoten. RA3-Knoten verwenden Redshift Managed Storage (RMS), bei dem die Daten auf von dem Cluster verwaltetem Amazon S3 liegen; wählen Sie RA3 für skalierbaren Speicher mit konsistenter Abfrageleistung und der Möglichkeit, die Rechenleistung separat zu bezahlen. DS2-Knoten speichern Daten auf instanzlokalen Festplatten, was eine sorgfältige Dimensionierung und Größenanpassung erfordert, wenn die Datenmenge wächst.
Konfigurations- und Betriebsdetails:
- Erstellen Sie einen RA3-Cluster über die Konsole oder CLI: aws redshift create-cluster –cluster-identifier my-cluster –node-type ra3.xlplus –number-of-nodes 2 –master-username admin –master-user-password Passw0rd.
- COPY-Befehl: Muss auf einem Cluster mit einer angehängten IAM-Rolle ausgeführt werden, die Lesezugriff auf S3 gewährt. Hängen Sie die Rolle bei der Cluster-Erstellung an oder ändern Sie den Cluster, um IAM-Rollen hinzuzufügen; der Rollen-ARN (arn:aws:iam::acct:role/RedshiftS3Role) wird in COPY als Anmeldeinformationen ‘aws_iam_role=arn:…’ referenziert.
- Überwachen Sie WLM-Warteschlangen, die Beschleunigung kurzer Abfragen (Short Query Acceleration), das automatische Vacuuming und verwenden Sie SORT/ENCODE, um Speicher und Leistung zu optimieren.
Vergleich (RA3 vs. DS2):
- RA3: entkoppelter Speicher, automatisches Data Tiering nach S3, geringerer Speicherverwaltungsaufwand, am besten für wachsende Datensätze.
- DS2: lokaler SSD-Speicher, geringere Latenz für lokale Daten, aber begrenzte Kapazität und schwieriger zu skalieren.
DynamoDB und die Auswahl zweckgebundener Datenbanken
Wählen Sie DynamoDB für hochskalierbare Key-Value- und Dokumenten-Workloads, die eine Latenz im einstelligen Millisekundenbereich erfordern. Das Tabellendesign hängt von der Wahl des Partitionsschlüssels (und des optionalen Sortierschlüssels) ab: Verwenden Sie Schlüssel mit hoher Kardinalität und guter Verteilung, um Hot Partitions zu vermeiden. Für sequenzielle oder zeitstempelbasierte Schlüssel implementieren Sie zufällige Präfixe (Sharding) oder verwenden Sie UUIDs, um Schreibvorgänge zu verteilen. Nutzen Sie On-Demand-Kapazität, um die Bereitstellung zu vermeiden, aber ziehen Sie bereitgestellte Kapazität mit Autoscaling für vorhersagbare Workloads in Betracht, um die adaptive Kapazität bei Hot Partitions zu nutzen.
Praktische Konfigurationshinweise:
- Tabelle per CLI erstellen:
undefined
.
- Verwenden Sie GSIs für alternative Zugriffsmuster, aktivieren Sie TTL für das automatische Ablaufen von Elementen und nutzen Sie DynamoDB Streams + Lambda für Change-Data-Capture-Muster.
- Für das Caching von leselastigen Workloads fügen Sie DAX hinzu; für komplexe Abfragen oder relationale Anforderungen wählen Sie Aurora oder Redshift Spectrum, abhängig von der Abfragekomplexität und den Konsistenzanforderungen.
Entscheidungskriterien für die Wahl der Engine:
- Verwenden Sie DynamoDB für vorhersagbare Zugriffsmuster auf einzelne Tabellen und massive Skalierung bei geringer Latenz.
- Verwenden Sie Redshift für komplexe Analysen und groß angelegtes OLAP.
- Verwenden Sie Aurora für transaktionale relationale Workloads.
Häufige Fallstricke und Entscheidungskriterien
- Verwendung von S3 Standard-IA für häufig abgerufene Daten – Standard-IA hat eine Mindestgebühr von 30 Tagen; verwenden Sie Standard oder Intelligent-Tiering für kurzlebige oder häufig abgerufene Objekte.
- Vergessen, dass Lake Formation-Berechtigungen die IAM-S3-Berechtigungen für Glue/Athena überschreiben – gewähren Sie sowohl Lake Formation- als auch S3-Zugriff, wenn Sie Glue/Athena verwenden, und überprüfen Sie die effektiven Berechtigungen in der Lake Formation-Konsole.
- Redshift COPY erfordert eine an den Cluster angehängte IAM-Rolle, nicht nur Benutzerberechtigungen – hängen Sie eine IAM-Rolle mit S3-Zugriff an den Cluster an und referenzieren Sie deren ARN in COPY-Operationen.
- DynamoDB Hot Partitions durch sequenzielle Schlüssel – vermeiden Sie monotone Schlüssel; verwenden Sie gehashte Schlüssel, zufällige Präfixe oder UUIDs und ziehen Sie On-Demand- oder automatisch skalierte bereitgestellte Kapazität in Betracht.
- Falsche Aktivierung von S3 Object Lock und MFA Delete – Object Lock erfordert die Aktivierung der Versionierung und entsprechende Berechtigungen; MFA Delete kann nur über die CLI mit MFA aktiviert/deaktiviert werden und hat strenge Anforderungen an den Bucket-Besitzer.
- Unsachgemäße Lifecycle-Übergänge ohne Testen der Abrufkosten und -zeiten – testen Sie Abruf-Workflows für Glacier-Klassen, um unerwartete Abruflatenzen und -gebühren zu vermeiden.
Praktisches Problem: Anwendungsfallszenario
Acme Media muss 50 TB an rohen Video-Ingests speichern, Analysten Abfragezugriff auf transformierte Metadaten gewähren und den Zugriff auf Zeilen- und Spaltenebene für verschiedene Geschäftsbereiche durchsetzen, während die Speicherkosten minimiert werden.
- Ingest von Rohvideos in S3 mittels Multipart-Upload, Taggen der Objekte nach Ingest-Datum und Datensatz, Verwendung von Intelligent-Tiering für anfänglich unbekannte Zugriffsmuster.
- Konfigurieren von Lifecycle-Regeln, um Medien nach einer konfigurierbaren Aufbewahrungsfrist nach GLACIER oder DEEP_ARCHIVE zu verschieben (stellen Sie eine Übereinstimmung von 30+ Tagen für Standard-IA sicher, falls dies in Betracht gezogen wird).
- Registrieren der S3-Speicherorte in Lake Formation, Erstellen von Glue Crawlern zum Füllen des Data Catalog und Gewähren von LF-Tag-basierten Berechtigungen auf Zeilen- und Spaltenebene für Geschäftsbereiche.
- Speichern kuratierter Metadaten in Redshift RA3 für Analysen; Anhängen einer IAM-Rolle an den Cluster für COPY aus S3 und Verwendung von VACUUM/ANALYZE-Operationen in Wartungsfenstern.
- Verwendung von DynamoDB mit gehashten UUID-Schlüsseln für eine Nachschlagetabelle mit hohem Durchsatz für Videomanifeste und Aktivierung der On-Demand-Kapazität, um Verkehrsspitzen abzufangen.
Begründung: Dieser Ansatz isoliert die Kosten für Cold Storage mit Glacier-Klassen, verwendet Intelligent-Tiering für unbekannte Muster, wendet Lake Formation für eine sichere, feingranulare Zugriffskontrolle über Analyse-Engines hinweg an und wählt RA3 für skalierbaren Analysespeicher, während DynamoDB operative Nachschlagevorgänge mit geringer Latenz übernimmt.
← Datenerfassung und -sammlung · Alle Domänen · Datenkatalogisierung und Metadatenmanagement →
Diese Fragen üben → · Zeitlich begrenzte Übung auf ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Bestehe deine Prüfung →