Professional Data Engineer
Prüfungsleitfaden
Ein Professional Data Engineer unterstützt die datengestützte Entscheidungsfindung. Das heißt, er erhebt Daten, wandelt sie um und stellt sie zur Verfügung. Data Engineers entwerfen, erstellen, operationalisieren, schützen und überwachen Datenverarbeitungssysteme insbesondere im Hinblick auf Sicherheit und Compliance, Skalierbarkeit und Effizienz, Zuverlässigkeit und Genauigkeit sowie Flexibilität und Portierbarkeit. Außerdem sollten sie bereits bestehende Modelle für maschinelles Lernen nutzen, bereitstellen und kontinuierlich weitertrainieren können.
1 Datenverarbeitungssysteme entwerfen
- Auf die Geschäftsanforderungen abgestimmte Speichersysteme
- Datenmodellierung
- Kompromisse bei Latenz, Durchsatz und Zahl der Transaktionen
- Verteilte Systeme
- Schemadesign
- Datenveröffentlichung und -visualisierung (z. B. BigQuery)
- Batch- und Streamingdaten (z. B. Cloud Dataflow, Cloud Dataproc, Apache Beam, Apache Spark und Hadoop, Cloud Pub/Sub, Apache Kafka)
- Onlinevorhersagen (interaktiv) und Batchvorhersagen im Vergleich
- Jobautomatisierung und -orchestrierung (z. B. Cloud Composer)
- Wahl der Infrastruktur
- Systemverfügbarkeit und Fehlertoleranz
- Einsatz verteilter Systeme
- Kapazitätsplanung
- Hybrid-Cloud und Edge-Computing
- Architekturoptionen (z. B. Nachrichtenbroker, Nachrichtenwarteschlangen, Middleware, dienstorientierte Architektur, serverlose Funktionen)
- Ereignisverarbeitung mindestens einmal, nacheinander, genau einmal usw.
- Abstimmung auf den aktuellen Status und Möglichkeiten, den Entwurf an künftige Entwicklungen anzupassen
- Wechsel von lokalen Systemen zur Cloud (Data Transfer Service, Transfer Appliance, Cloud Networking)
- Überprüfung einer Migration
1.1 Geeignete Speichertechnologien auswählen. Folgendes sollte dabei berücksichtigt werden:
1.2 Datenpipelines entwerfen. Folgendes sollte dabei berücksichtigt werden:
1.3 Lösung für die Datenverarbeitung entwerfen. Folgendes sollte dabei berücksichtigt werden:
1.4 Data-Warehouse-Prozesse und Datenverarbeitung migrieren. Folgendes sollte dabei berücksichtigt werden:
2. Datenverarbeitungssysteme erstellen und operationalisieren
- Effektiver Einsatz verwalteter Dienste (Cloud Bigtable, Cloud Spanner, Cloud SQL, BigQuery, Cloud Storage, Cloud Datastore, Cloud Memorystore)
- Speicherkosten und Leistung
- Verwaltung des Datenlebenszyklus
- Datenbereinigung
- Batch- und Streamingmodus
- Transformation
- Datenerfassung und -import
- Verknüpfung mit neuen Datenquellen
- Bereitstellung von Ressourcen
- Monitoring von Pipelines
- Anpassung von Pipelines
- Tests und Qualitätskontrollen
2.1 Speichersysteme erstellen und operationalisieren. Folgendes sollte dabei berücksichtigt werden:
2.2 Pipelines erstellen und operationalisieren. Folgendes sollte dabei berücksichtigt werden:
2.3 Verarbeitungsinfrastrukturen erstellen und operationalisieren. Folgendes sollte dabei berücksichtigt werden:
3. Modelle für maschinelles Lernen operationalisieren
- ML APIs (z. B. Vision API, Speech API)
- Anpassung von ML APIs (z. B. AutoML Vision, AutoML Text)
- Dialogorientierte Kommunikation (z. B. Dialogflow)
- Aufnahme geeigneter Daten
- Erneutes Trainieren von Modellen für maschinelles Lernen (Cloud Machine Learning Engine, BigQuery ML, Kubeflow, Spark ML)
- Kontinuierliche Evaluierung
- Verteilte Maschinen und einzelne Maschinen im Vergleich
- Einsatz von Edge-Computing
- Hardwarebeschleuniger (z. B. GPU, TPU)
- ML-Terminologie (beispielsweise Features, Labels, Modelle, Regression, Klassifizierung, Empfehlung, überwachtes und nicht überwachtes Lernen, Bewertungsmesswerte)
- Einfluss der Abhängigkeiten von Modellen für maschinelles Lernen
- Häufige Fehlerquellen (beispielsweise Annahmen über Daten)
3.1 Vorgefertigte ML-Modelle als Dienst nutzen. Folgendes sollte dabei berücksichtigt werden:
3.2 ML-Pipelines bereitstellen. Folgendes sollte dabei berücksichtigt werden:
3.3 Geeignete Trainings- und Bereitstellungsinfrastrukturen auswählen. Folgendes sollte dabei berücksichtigt werden:
3.4 Modelle für maschinelles Lernen bewerten, überwachen und Fehler darin beheben. Folgendes sollte dabei berücksichtigt werden:
4. Lösungsqualität sicherstellen
- Identitäts- und Zugriffsverwaltung (z. B. Cloud IAM)
- Datensicherheit (Verschlüsselung, Schlüsselverwaltung)
- Sicherstellung des Datenschutzes (z. B. Data Loss Prevention API)
- Einhaltung gesetzlicher Vorschriften (z. B. US-Gesetz zur Übertragbarkeit von Krankenversicherungen und Verantwortlichkeit von Versicherern (Health Insurance Portability and Accountability Act, HIPAA), US-Gesetz zum Schutz der Privatsphäre von Kindern im Internet (Children's Online Privacy Protection Act, COPPA), FedRAMP, EU-Datenschutz-Grundverordnung (DSGVO))
- Testsuites erstellen und ausführen
- Pipeline-Monitoring (z. B. Stackdriver)
- Datendarstellungen und die Infrastruktur für die Datenverarbeitung prüfen, korrigieren und verbessern
- Größenanpassung und Autoscaling von Ressourcen
- Datenaufbereitung und Qualitätskontrolle (z. B. Cloud Dataprep)
- Verifizierung und Monitoring
- Planung und Ausführung der Datenwiederherstellung sowie Durchführung von Stresstests (Fehlertoleranz, erneute Ausführung fehlgeschlagener Jobs, rückblickende Re-Analyse)
- Entscheidung zwischen ACID-, Idempotenz- und Eventual-Consistency-Anforderungen
- Ausrichtung an aktuellen und zukünftigen Geschäftsanforderungen
- Berücksichtigung der Portierbarkeit von Daten und Anwendungen (z. B. Multi-Cloud, Anforderungen an den Datenstandort)
- Data Staging, Datenkatalogisierung und -ermittlung
4.1 Entwicklung an Sicherheit und Compliance orientieren. Folgendes sollte dabei berücksichtigt werden:
4.2 Skalierbarkeit und Effizienz sicherstellen. Folgendes sollte dabei berücksichtigt werden:
4.3 Zuverlässigkeit und Datenintegrität sicherstellen. Folgendes sollte dabei berücksichtigt werden:
4.4 Flexibilität und Portierbarkeit sicherstellen. Folgendes sollte dabei berücksichtigt werden: