Professional Data Engineer
Guide de l'examen de certification
Un Professional Data Engineer facilite les prises de décision en recueillant, transformant et publiant des données. Le Data Engineer doit être capable de concevoir, développer, opérationnaliser, sécuriser et surveiller des systèmes de traitement des données. Il doit attacher une attention toute particulière aux critères suivants : sécurité, conformité, évolutivité, efficacité, fiabilité, fidélité, flexibilité et portabilité. Le Data Engineer doit aussi pouvoir exploiter, déployer et entraîner en continu des modèles de machine learning préexistants.
1. Concevoir des systèmes de traitement des données
- Alignement des systèmes de stockage sur les besoins de l'entreprise
- Modélisation des données
- Compromis liés à la latence, au débit et aux transactions
- Systèmes distribués
- Conception de schémas
- Publication et visualisation des données (p. ex., BigQuery)
- Données par lots et par flux (p. ex., Cloud Dataflow, Cloud Dataproc, Apache Beam, Apache Spark et écosystème Hadoop, Cloud Pub/Sub, Apache Kafka)
- Prédictions en ligne (interactives) et par lots
- Automatisation et orchestration des tâches (p. ex., Cloud Composer)
- Choix de l'infrastructure
- Disponibilité du système et tolérance aux pannes
- Utilisation de systèmes distribués
- Planification des capacités
- Cloud hybride et edge computing
- Options d'architecture (p. ex., agents de service de messagerie, files d'attente de messages, middleware, architecture orientée services, fonctions sans serveur)
- Traitement des événements "au moins une fois", "dans l'ordre", "une seule fois", etc.
- Connaissance de l'état actuel de la conception et de son processus de migration
- Migration de la solution sur site vers le cloud (service de transfert de données, Transfer Appliance, mise en réseau cloud)
- Validation d'une migration
1.1 Sélectionner les technologies de stockage appropriées. Points à prendre en compte :
1.2 Concevoir des pipelines de données. Points à prendre en compte :
1.3 Concevoir une solution de traitement des données. Points à prendre en compte :
1.4 Migrer l'entreposage et le traitement des données. Points à prendre en compte :
2. Développer et opérationnaliser des systèmes de traitement des données
- Utilisation optimale des services gérés (Cloud Bigtable, Cloud Spanner, Cloud SQL, BigQuery, Cloud Storage, Cloud Datastore, Cloud Memorystore)
- Coûts et performances de stockage
- Gestion du cycle de vie des données
- Nettoyage des données
- Traitement par lots et par flux
- Transformation
- Acquisition et importation des données
- Intégration de nouvelles sources de données
- Provisionnement des ressources
- Surveillance des pipelines
- Réglage des pipelines
- Tests et contrôle qualité
2.1 Développer et opérationnaliser les systèmes de stockage. Points à prendre en compte :
2.2 Développer et opérationnaliser des pipelines. Points à prendre en compte :
2.3 Développer et opérationnaliser l'infrastructure de traitement. Points à prendre en compte :
3. Opérationnaliser des modèles de machine learning
- API de ML (p. ex., API Vision, API Speech)
- Personnalisation des API de ML (p. ex., AutoML Vision, AutoML Text)
- Expériences de conversation (p. ex., Dialogflow)
- Ingestion des données appropriées
- Ré-entraînement des modèles de machine learning (Cloud Machine Learning Engine, BigQuery ML, Kubeflow, Spark ML)
- Évaluation continue
- Infrastructure distribuée ou machine unique
- Utilisation de l'edge computing
- Accélérateurs matériels (p. ex., GPU, TPU)
- Terminologie du machine learning (par ex., caractéristiques, étiquettes, modèles, régression, classification, recommandation, entraînement supervisé et non supervisé, métriques d'évaluation)
- Impact des dépendances des modèles de machine learning
- Sources d'erreurs courantes (par ex., hypothèses sur les données)
3.1 Utiliser les modèles de ML prédéfinis en tant que service. Points à prendre en compte :
3.2 Déployer un pipeline de ML. Points à prendre en compte :
3.3 Sélectionner l'infrastructure d'entraînement et d'inférence appropriée. Points à prendre en compte :
3.4 Mesurer et surveiller les modèles de machine learning et résoudre les problèmes associés. Points à prendre en compte :
4. Garantir la qualité de la solution
- Gestion de l'authentification et des accès (p. ex., Cloud IAM)
- Sécurité des données (gestion des clés, chiffrement)
- Confidentialité (p. ex., API Data Loss Prevention)
- Conformité réglementaire (p. ex., Health Insurance Portability and Accountability Act (HIPAA), Children's Online Privacy Protection Act (COPPA), FedRAMP, Règlement général sur la protection des données (RGPD))
- Conception et exécution d'ensembles de tests
- Surveillance du pipeline (p. ex., Stackdriver)
- Évaluation, dépannage et amélioration des représentations de données et de l'infrastructure de traitement des données
- Redimensionnement et autoscaling des ressources
- Préparation des données et contrôle qualité (p. ex., Cloud Dataprep)
- Vérification et surveillance
- Planification, exécution et test de contrainte sur les plans de récupération des données (p. ex., tolérance aux pannes, réexécution de tâches ayant échoué, lancement d'une nouvelle analyse rétrospective)
- Choix entre les exigences ACID, idempotentes et de cohérence à terme
- Alignement sur les besoins actuels et futurs de l'entreprise
- Conception orientée sur la portabilité des données et des applications (p. ex., multicloud, exigences de résidence des données)
- Préproduction, catalogage et découverte des données
4.1 Concevoir des solutions sécurisées et conformes. Points à prendre en compte :
4.2 Garantir l'évolutivité et l'efficacité. Points à prendre en compte :
4.3 Garantir la fiabilité et la fidélité. Points à prendre en compte :
4.4 Garantir la flexibilité et la portabilité. Points à prendre en compte :