Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Déployer une tâche AWS Glue avec un pipeline AWS CodePipeline CI/CD
Créée par Bruno Klein (AWS) et Luis Henrique Massao Yamada (AWS)
Récapitulatif
Remarque : n' AWS CodeCommit est plus disponible pour les nouveaux clients. Les clients existants de AWS CodeCommit peuvent continuer à utiliser le service normalement. En savoir plus
Ce modèle montre comment intégrer AWS CodeCommit et AWS CodePipeline à AWS Glue, et comment utiliser AWS Lambda pour lancer des tâches dès qu'un développeur envoie ses modifications dans un référentiel AWS distant. CodeCommit
Lorsqu'un développeur soumet une modification à un référentiel d'extraction, de transformation et de chargement (ETL) et transmet les modifications à AWS CodeCommit, un nouveau pipeline est invoqué. Le pipeline lance une fonction Lambda qui lance une tâche AWS Glue avec ces modifications. La tâche AWS Glue exécute la tâche ETL.
Cette solution est utile dans les situations où les entreprises, les développeurs et les ingénieurs de données souhaitent lancer des tâches dès que les modifications sont validées et transférées vers les référentiels cibles. Cela permet d'atteindre un niveau supérieur d'automatisation et de reproductibilité, évitant ainsi les erreurs lors du lancement des tâches et du cycle de vie.
Conditions préalables et limitations
Prérequis
Un compte AWS actif
Git
installé sur la machine locale Amazon Cloud Development Kit (Amazon CDK) installé sur la machine locale
Python
installé sur la machine locale Le code de la section Pièces jointes
Limites
Le pipeline est terminé dès que la tâche AWS Glue est lancée avec succès. Il n'attend pas la fin du travail.
Le code fourni dans la pièce jointe est destiné à des fins de démonstration uniquement.
Architecture
Pile technologique cible
AWS Glue
AWS Lambda
AWS CodePipeline
AWS CodeCommit
Architecture cible

Le processus comprend les étapes suivantes :
Le développeur ou l'ingénieur de données apporte une modification au code ETL, valide et transmet la modification à AWS CodeCommit.
Le push initie le pipeline.
Le pipeline lance une fonction Lambda, qui
codecommit:GetFile
appelle le référentiel et télécharge le fichier vers Amazon Simple Storage Service (Amazon S3).La fonction Lambda lance une nouvelle tâche AWS Glue avec le code ETL.
La fonction Lambda termine le pipeline.
Automatisation et mise à l'échelle
L'exemple de pièce jointe montre comment intégrer AWS Glue à AWS CodePipeline. Il fournit un exemple de référence que vous pouvez personnaliser ou étendre pour votre propre usage. Pour plus de détails, consultez la section Epics.
Outils
AWS CodePipeline
— AWS CodePipeline est un service de livraison continue entièrement géré qui vous aide à automatiser vos pipelines de publication pour des mises à jour rapides et fiables des applications et de l'infrastructure. AWS CodeCommit
— AWS CodeCommit est un service de contrôle de source entièrement géré qui héberge des référentiels sécurisés basés sur Git. AWS Lambda
— AWS Lambda est un service de calcul sans serveur qui vous permet d'exécuter du code sans provisionner ni gérer de serveurs. AWS Glue
— AWS Glue est un service d'intégration de données sans serveur qui facilite la découverte, la préparation et la combinaison de données à des fins d'analyse, d'apprentissage automatique et de développement d'applications. Client Git
: Git fournit des outils d'interface graphique. Vous pouvez également utiliser la ligne de commande ou un outil de bureau pour récupérer les artefacts requis GitHub. AWS CDK
— L'AWS CDK est un framework de développement de logiciels open source qui vous aide à définir les ressources de vos applications cloud à l'aide de langages de programmation familiers.
Épopées
Tâche | Description | Compétences requises |
---|---|---|
Configuration de l'AWS CLI. | Configurez l'interface de ligne de commande AWS (AWS CLI) pour cibler et authentifier votre compte AWS actuel. Pour obtenir des instructions, consultez la documentation de l'AWS CLI. | Développeur, DevOps ingénieur |
Extrayez les exemples de fichiers de projet. | Extrayez les fichiers de la pièce jointe pour créer un dossier contenant les exemples de fichiers de projet. | Développeur, DevOps ingénieur |
Déployez l'exemple de code. | Après avoir extrait les fichiers, exécutez les commandes suivantes depuis l'emplacement d'extraction pour créer un exemple de référence :
Après la dernière commande, vous pouvez surveiller l'état du pipeline et de la tâche AWS Glue. | Développeur, DevOps ingénieur |
Personnalisez le code. | Personnalisez le code du fichier etl.py en fonction des besoins de votre entreprise. Vous pouvez réviser le code ETL, modifier les étapes du pipeline ou étendre la solution. | Ingénieur de données |