Création et utilisation de tables dans DynamoDB - AWS SDK for JavaScript

Le guide de référence de l'API AWS SDK for JavaScript V3 décrit en détail toutes les opérations de l'API pour la AWS SDK for JavaScript version 3 (V3).

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.

Création et utilisation de tables dans DynamoDB

JavaScript code example that applies to Node.js execution

Cet exemple de code Node.js présente :

  • Comment créer et gérer les tables utilisées pour stocker et récupérer des données depuis DynamoDB.

Le scénario

Comme les autres systèmes de base de données, DynamoDB stocke les données dans des tables. Une table DynamoDB est un ensemble de données organisé en éléments analogues à des lignes. Pour stocker des données ou y accéder dans DynamoDB, vous devez créer des tables et les utiliser.

Dans cet exemple, vous utilisez une série de modules Node.js pour effectuer des opérations de base avec une table DynamoDB. Le code utilise le SDK pour JavaScript créer et utiliser des tables en utilisant les méthodes suivantes de la classe DynamoDB client :

Tâches prérequises

Pour configurer et exécuter cet exemple, réalisez tout d'abord les tâches ci-après :

  • Configurez l'environnement du projet pour exécuter ces exemples Node.js et installez les modules requis AWS SDK for JavaScript et tiers. Suivez les instructions figurant sur GitHub.

  • Installez le SDK pour le client JavaScript DynamoDB. Pour plus d’informations, consultez Nouveautés de la version 3.

  • Créez un fichier de configurations partagé avec vos informations d'identification utilisateur. Pour plus d'informations sur la fourniture d'un fichier d'informations d'identification partagé, consultez la section Fichiers de configuration et d'informations d'identification partagés dans le Guide de référence AWS des SDK et des outils.

Important

Ces exemples utilisent ECMAScript6 (ES6). Cela nécessite la version 13.x ou supérieure de Node.js. Pour télécharger et installer la dernière version de Node.js, consultez la section Téléchargements de Node.js. .

Toutefois, si vous préférez utiliser la syntaxe CommonJS, veuillez vous référer àJavaScript Syntaxe ES6/CommonJS.

Note

Pour plus d'informations sur les types de données utilisés dans ces exemples, consultez la section Types de données et règles de dénomination pris en charge dans Amazon DynamoDB.

Création d'une table

Créez un module Node.js nommé create-table.js. Assurez-vous de configurer le SDK comme indiqué précédemment, notamment en téléchargeant les clients et les packages requis. Pour accéder à DynamoDB, créez DynamoDB un objet de service client. Créez un objet JSON contenant les paramètres requis pour créer une table, ce qui dans cet exemple inclut le nom et le type de données de chaque attribut, le schéma de clé, le nom de la table, ainsi que les unités de débit à allouer. Appelez la CreateTableCommand méthode de l'objet de service DynamoDB.

import { CreateTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new CreateTableCommand({ TableName: "EspressoDrinks", // For more information about data types, // see https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes and // https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.LowLevelAPI.html#Programming.LowLevelAPI.DataTypeDescriptors AttributeDefinitions: [ { AttributeName: "DrinkName", AttributeType: "S", }, ], KeySchema: [ { AttributeName: "DrinkName", KeyType: "HASH", }, ], ProvisionedThroughput: { ReadCapacityUnits: 1, WriteCapacityUnits: 1, }, }); const response = await client.send(command); console.log(response); return response; };

Pour exécuter l'exemple, entrez ce qui suit à l'invite de commande.

node create-table.js

Cet exemple de code se trouve ici GitHub.

Répertorier vos tables

Créez un module Node.js nommé list-tables.js. Assurez-vous de configurer le SDK comme indiqué précédemment, notamment en téléchargeant les clients et les packages requis. Pour accéder à DynamoDB, créez DynamoDB un objet de service client. Créez un objet JSON contenant les paramètres requis pour répertorier vos tables, ce qui dans cet exemple limite à 10 le nombre de tables répertoriées. Appelez la ListTablesCommand méthode de l'objet de service DynamoDB.

import { ListTablesCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new ListTablesCommand({}); const response = await client.send(command); console.log(response); return response; };

Pour exécuter l'exemple, entrez ce qui suit à l'invite de commande.

node list-tables.js

Cet exemple de code se trouve ici GitHub.

Description d'une table

Créez un module Node.js nommé describe-table.js. Assurez-vous de configurer le SDK comme indiqué précédemment, notamment en téléchargeant les clients et les packages requis. Pour accéder à DynamoDB, créez DynamoDB un objet de service client. Créez un objet JSON contenant les paramètres nécessaires pour décrire une DescribeTableCommand méthode de l'objet de service DynamoDB.

import { DescribeTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new DescribeTableCommand({ TableName: "Pastries", }); const response = await client.send(command); console.log(`TABLE NAME: ${response.Table.TableName}`); console.log(`TABLE ITEM COUNT: ${response.Table.ItemCount}`); return response; };

Pour exécuter l'exemple, entrez ce qui suit à l'invite de commande.

node describe-table.js

Cet exemple de code se trouve ici GitHub.

Suppression d'une table

Créez un module Node.js nommé delete-table.js. Assurez-vous de configurer le SDK comme indiqué précédemment, notamment en téléchargeant les clients et les packages requis. Pour accéder à DynamoDB, créez DynamoDB un objet de service client. Créez un objet JSON contenant les paramètres requis pour décrire une table, ce qui dans cet exemple inclut le nom de la table fournie en tant que paramètre de ligne de commande. Appelez la DeleteTableCommand méthode de l'objet de service DynamoDB.

import { DeleteTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new DeleteTableCommand({ TableName: "DecafCoffees", }); const response = await client.send(command); console.log(response); return response; };

Pour exécuter l'exemple, entrez ce qui suit à l'invite de commande.

node delete-table.js

Cet exemple de code se trouve ici GitHub.