Dans cette leçon, vous allez étudier des exemples simples d'insertion et d'extraction de données avec Dynamo DB. Créez votre table DynamoDB à l'aide de l'API CreateTable, puis insérez des éléments en utilisant l'appel d'API BatchWriteItem. Enfin, extrayez des éléments individuels en utilisant l'appel d'API GetItem. Avant de commencer à étudier ces exemples, nous allons parler du modèle de données que vous devez utiliser dans votre exemple d'application de libraire en ligne.
Dans les modules suivants, vous apprendrez à extraire plusieurs éléments en même temps en utilisant l'appel d'API Query, ainsi qu'à autoriser des modèles de requêtes supplémentaires grâce aux index secondaires. Vous découvrirez également comme mettre à jour des éléments existants dans votre table.
Durée du module : 15 minutes
Les concepts DynamoDB suivants jouent un rôle clé dans ce module :
- Table : un ensemble d'enregistrements de données DynamoDB.
- Élément : un enregistrement de données unique dans la table DynamoDB. Cela est comparable à une ligne d'une base de données relationnelle.
- Attribut : un élément de données unique au sujet d'un élément. Cela est comparable à une colonne d'une base de données relationnelle. Cependant, contrairement aux colonnes d'une base de données relationnelle, les attributs n'ont pas besoin d'être spécifiés lors de la création de la table, hormis la clé primaire dont nous parlerons plus tard dans ce module. Les attributs peuvent être des règles simples telles que des chaînes, des entiers ou des booléens, ou bien ils peuvent être des règles compliquées telles que des listes ou des cartes.
- Clé primaire : une clé primaire est l'identifiant unique d'un élément simple d'une table DynamoDB. Le nom et le type de la clé primaire doivent être précisés au moment de la création de la table. De plus, une clé primaire du type indiqué doit être incluse avec chaque élément qui est écrit dans une table. Une clé primaire simple se compose d'un attribut unique, et une clé primaire composite est constituée de deux attributs : une clé de partition et une clé de tri. Par exemple, vous pouvez créer une clé primaire simple en utilisant « UserID » comme identifiant, ou alors créer une clé primaire composite en associant « UserID » et « Creation_Date » comme identifiant d'élément.
Lorsque vous créez une application, vous devez toujours prendre le temps de concevoir les modèles de données nécessaires à votre logique d'application. Cette phase de conception des modèles de données doit prendre en compte les besoins en matière d'accès aux données qui seront nécessaires à votre application, à la fois pour lire et pour écrire les données.
DynamoDB est une base de données non relationnelle. Avec les bases de données non relationnelles, vous n'avez pas besoin de préciser le schéma initial complet au moment de créer une table. Il vous suffit de déclare la clé primaire de votre table, qui identifie de façon unique chaque enregistrement de la table. Cela permet de réduire les coûts initiaux de conception de votre modèle de données, car vous pouvez facilement modifier votre schéma selon l'évolution des besoins de votre application.
Comme mentionné dans la section « Contexte de l'application » de l'introduction de ce didacticiel, votre application doit extraire un livre à l'aide de son titre et du nom de son auteur. Puisque l'association du titre et de l'auteur représente l'identifiant unique d'un livre, vous pouvez utiliser ces deux attributs comme clé primaire de votre table. Votre application doit également stocker les informations concernant la catégorie de notre livre (par exemple, livre historique ou biographie), ainsi que les formats disponibles (livre relié, livre de poche ou livre audio) qui sont mappés aux numéros des éléments de votre système d'inventaire.
En gardant tout cela à l'esprit, vous pouvez utiliser le schéma suivant pour votre table :
- Titre (une chaîne) : le titre d'un livre
- Auteur (une chaîne) : l'auteur d'un livre
- Catégorie (une chaîne) : la catégorie d'un livre, comme livre historique, biographie ou science-fiction
- Formats (une carte) : les différents formats disponibles à la vente (par exemple, livre relié, livre de poche ou livre audio) et leurs numéros dans votre système d'inventaire
Dans les étapes suivantes, vous allez créer une table en précisant la clé primaire composite (Auteur et Titre) de votre table. Ensuite, vous allez téléchargez certains éléments dans votre table, puis lire des éléments individuels à partir de cette table.