[Sous-titre SEO]
Ce guide présente un lac de données configuré automatiquement sur AWS à l’aide d’une architecture évolutive, pilotée par les événements et sans serveur. Il s’appuie sur les services gérés AWS pour ingérer, stocker, traiter et analyser les données, offrant une conception sécurisée, flexible et rentable avec une gouvernance des données appropriée. Cette approche offre une agilité, une flexibilité et une fiabilité accrues par rapport aux systèmes de gestion de données traditionnels. L’ensemble de la solution est conçu comme une application codifiée utilisant l’infrastructure en tant que code (IaC) et un pipeline d’intégration continue et de livraison continue (CI/CD).
Veuillez noter : [Clause de non-responsabilité]
Diagramme d’architecture

[Description du schéma d’architecture]
Étape 1
L’administrateur de données charge les fichiers JSON dans le compartiment brut Amazon Simple Storage Service (Amazon S3). La création d’un objet dans Amazon S3 déclenche un événement dans Amazon EventBridge.
Étape 2
EventBridge possède une règle qui envoie un message dans Amazon Simple Queue Service (Amazon SQS), qui invoque une fonction AWS Lambda.
Étape 3
La fonction Lambda déclenche le flux de travail AWS Step Functions, dans lequel une autre fonction Lambda lit les fichiers du compartiment brut S3 et effectue la transformation. Elle écrit également le nouvel ensemble de fichiers JSON dans le compartiment de stage S3.
Étape 4
Une fonction Lambda met à jour la table Amazon DynamoDB avec le statut de la tâche Step Functions.
Étape 5
Une fois les fichiers créés dans le compartiment de l’étape S3, un événement est déclenché dans EventBridge, qui dispose d’une règle qui envoie un message dans Amazon SQS contenant les détails des fichiers créés.
Étape 6
Le planificateur Eventbridge s’exécute à certains intervalles et invoque une fonction Lambda qui récupère les messages d’Amazon SQS et démarre un autre flux de travail Step Functions.
Étape 7
L’extraction, la transformation et le chargement (ETL) d’AWS Glue lit les données à partir de l’étape de la base de données AWS Glue, puis convertit les fichiers du format JSON au format Parquet.
Étape 8
L’ETL d’AWS Glue écrit les fichiers Parquet dans le compartiment d’analytique S3. Le robot d’AWS Glue explore les fichiers Parquet dans le même compartiment, puis crée des tables analytiques dans la base de données d’analytique AWS Glue.
Étape 9
Tous les catalogues de transit et d’analytique sont conservés dans le catalogue de données AWS Glue.
Étape 10
Une fonction Lambda met à jour la table DynamoDB avec le statut de la tâche Step Functions.
Étape 11
Les analystes métier utilisent Amazon Athena pour interroger l’analytique de la base de données AWS Glue.
Démarrer

Piliers Well-Architected

Le cadre AWS Well-Architected vous permet de comprendre les avantages et les inconvénients des décisions que vous prenez lors de la création de systèmes dans le cloud. Les six piliers du cadre vous permettent d'apprendre les bonnes pratiques architecturales pour concevoir et exploiter des systèmes fiables, sécurisés, efficaces, rentables et durables. Grâce à l'outil AWS Well-Architected Tool, disponible gratuitement dans la console de gestion AWS, vous pouvez examiner vos charges de travail par rapport à ces bonnes pratiques en répondant à une série de questions pour chaque pilier.
Le diagramme d'architecture ci-dessus est un exemple de solution créée en tenant compte des bonnes pratiques Well-Architected. Pour être totalement conforme à Well-Architected, vous devez suivre autant de bonnes pratiques Well-Architected que possible.
-
Excellence opérationnelle
Amazon CloudWatch fournit des informations complètes sur les performances et l’état grâce à la journalisation opérationnelle de chaque composant de l’architecture. Utilisez la journalisation des accès au serveur Amazon S3 pour suivre les enregistrements détaillés des demandes faites à votre lac de données, ce qui vous permet de réaliser des audits de sécurité et d’accès, ainsi que de comprendre votre facturation Amazon S3. DynamoDB suit méticuleusement l’état des tâches de pipeline de votre lac de données, ce qui vous permet d’identifier et de résoudre rapidement les erreurs qui peuvent survenir.
-
Sécurité
AWS Key Management Service (AWS KMS) protège votre lac de données en chiffrant toutes les données au repos à l’aide de clés gérées par le client. Protégez les données en transit grâce à un chiffrement TLS 1.2 robuste. La Gestion des identités et des accès AWS (IAM) vous permet de gérer les identités et l’accès à vos services et ressources AWS avec précision, selon le principe du moindre privilège.
-
Fiabilité
Amazon S3 constitue la couche de stockage hautement durable et disponible. Les pipelines de données sont déclenchés par EventBridge, qui envoie des messages à Amazon SQS pour lancer des tâches de pipeline. Les erreurs sont gérées en déplaçant les messages vers une file d’attente de lettres mortes à des fins de débogage et de retraitement. Le guide peut être redéployé vers une autre région ou un autre compte AWS en cas de défaillance régionale, garantissant ainsi flexibilité et résilience.
-
Efficacité des performances
Cette solution optimise les performances en utilisant Lambda pour les tâches légères et AWS Glue pour les transformations de données lourdes. AWS Glue, un service d’intégration de données sans serveur, simplifie et accélère la préparation des données tout en réduisant les coûts. Il s’appuie sur Apache Spark pour une exécution évolutive des tâches de transformation. Step Functions orchestre les tâches AWS Glue en fournissant des capacités de traitement distribuées pour améliorer les performances du pipeline de données.
-
Optimisation des coûts
Ce guide utilise des services AWS sans serveur, ce qui permet de réduire les coûts totaux de possession et de permettre une capacité de mise à l’échelle en fonction de la demande. Amazon S3 sert de couche de stockage, offrant diverses classes de stockage rentables avec une gestion automatisée du cycle de vie pour différents modèles d’accès aux données. En confiant la gestion de l’infrastructure à AWS, l’approche sans serveur permet aux développeurs de se concentrer sur le code, ce qui réduit encore les coûts et améliore l’efficacité.
-
Développement durable
Les services sans serveur de ce guide se mettent à l’échelle en fonction de la demande, maximisant ainsi l’efficacité énergétique et minimisant les ressources de calcul. Amazon S3 met en œuvre des politiques de cycle de vie des données et stocke les données ingérées au format Parquet. Ce format compressé réduit les balayages de données par requête, ce qui réduit encore les ressources de calcul nécessaires à la charge de travail. La combinaison d’une architecture sans serveur et d’un stockage de données efficace optimise les performances globales et l’utilisation des ressources.
Contenu connexe

[Titre]
Avis de non-responsabilité
Les exemples de code, les bibliothèques de logiciels, les outils de ligne de commande, les preuves de concept, les modèles ou toute autre technologie connexe (y compris tout ce qui précède qui est fourni par notre personnel) vous sont fournis en tant que contenu AWS en vertu du contrat client AWS ou de l'accord écrit pertinent entre vous et AWS (selon le cas). Vous ne devez pas utiliser ce contenu AWS dans vos comptes de production, ni sur des données de production ou autres données critiques. Vous êtes responsable des tests, de la sécurisation et de l'optimisation du contenu AWS, tel que les exemples de code, comme il convient pour une utilisation en production, en fonction de vos pratiques et normes de contrôle de qualité spécifiques. Le déploiement de contenu AWS peut entraîner des frais AWS pour la création ou l'utilisation de ressources payantes AWS, telles que l'exécution d'instances Amazon EC2 ou l'utilisation du stockage Amazon S3.
Les références à des services ou organisations tiers dans ce guide n'impliquent pas une approbation, un parrainage ou une affiliation entre Amazon ou AWS et le tiers. Les conseils fournis par AWS constituent un point de départ technique, et vous pouvez personnaliser votre intégration avec des services tiers lorsque vous déployez l'architecture.