Présentation de l’atelier
AnyCompany développe une nouvelle application de base de données de films. L’application permettra aux utilisateurs de rechercher des films par titre, année de sortie, acteurs du film, notation, etc. AnyCompany a choisi Amazon DynamoDB comme service de base de données pour stocker les informations sur tous les films que l’application référencera.
Amazon DynamoDB est une base de données NoSQL sans serveur, également connue sous le nom de base de données non relationnelle, qui prend en charge les modèles de valeur clé et de données de document. Avec DynamoDB, vous pouvez commencer à petite échelle et rapidement évoluer à l’internationale à mesure que votre application et votre base d’utilisateurs augmentent, avec la capacité de prendre en charge des pétaoctets de données et des dizaines de millions de demandes de lecture et d’écriture par seconde. AWS gère le service DynamoDB. Il n’y a donc aucun serveur à mettre à jour ou à maintenir. Pour en savoir plus, consultez Amazon DynamoDB Features (Fonctions Amazon DynamoDB) et Core Components of Amazon DynamoDB (Composants de base d’Amazon DynamoDB) dans la section Ressources supplémentaires.
En tant qu’ingénieur de base de données junior nouvellement engagé, vous êtes chargé de créer les index secondaires locaux (LSI) et/ou les index secondaires globaux (GSI) appropriés pour améliorer la fonctionnalité de recherche de votre application. Pour cet atelier, vous utiliserez une base de données d’exemples nommée films. N’oubliez pas que les tables DynamoDB sont incroyablement flexibles et ne possèdent pas de « schéma » traditionnel comme les bases de données relationnelles. Cette table de films comporte une clé de partition (Hachage) de « année » (Nombre) et une clé de tri (Classer) de « titre » (Chaîne). La liste complète des attributs qui renseignent la base de données pour cet atelier correspond aux caractéristiques suivantes :
- année — Numéro (clé de partition ou de HACHAGE)
- titre – Chaîne (touche Trier ou Classer)
- acteurs – Chaîne
- réalisateurs – Chaîne
- genre – Chaîne
- image_url – Chaîne
- intrigue – Chaîne
- rang – Numéro
- classement – Numéro
- date de sortie – Chaîne
- durée_secs – Numéro
Notez qu’en pratique, les données de caractéristiques des acteurs et des réalisateurs ont été formatées de manière à être lisibles en tant que type python dict et représentent donc plus d’un interprète réel. Par exemple, l’attribut acteurs d’un élément donné est une chaîne telle que [{“S”: “John Doe”}, {“S”: “Jane Doe”}].
Objectifs
À la fin de cet atelier, vous serez en mesure d’effectuer les actions suivantes :
- Utiliser le kit SDK pour créer des index secondaires locaux (LSI) et des index secondaires globaux (GSI).
- Utilisez le kit SDK pour analyser vos données et renvoyer des résultats filtrés.
- Utilisez le kit SDK pour effectuer des requêtes avancées pour récupérer des données, en notant les différences de performances entre les méthodes.
Connaissances techniques préalables
Pour réussir cet atelier, vous devez connaître la navigation de base de la Console de gestion AWS, les concepts de base de données NoSQL, le langage de programmation Python, et savoir modifier des scripts à l’aide d’un éditeur de texte.
Icônes
Différentes icônes sont utilisées tout au long de cet atelier pour attirer l’attention sur certains aspects du guide. La liste suivante explique l’objectif de chaque icône :
- Attention : information présentant un intérêt spécial ou d’une importance particulière (pas assez importante pour causer des problèmes pour l’équipement ni les données si vous n’y faites pas attention, mais susceptible de vous amener à devoir répéter certaines étapes).
- Commande : commande que vous devez exécuter.
- Sortie attendue : exemple de sortie que vous pouvez utiliser pour vérifier la sortie d’une commande ou d’un fichier modifié.
- Remarque : indice, directive ou conseil important.
- En savoir plus : emplacement où trouver davantage d’informations.
- Contrôle des connaissances : une opportunité de vérifier vos connaissances et de tester ce que vous avez appris.
- Tâche effectuée: conclusion ou récapitulatif de l’atelier.
- AVERTISSEMENT : une action qui est irréversible et susceptible d’avoir une incidence sur l’échec d’une commande ou d’un processus (y compris les avertissements concernant les configurations ne pouvant pas être modifiées après leur mise en place).