Creación y uso de tablas en DynamoDB - AWS SDK for JavaScript

La Guía de referencia de la API de AWS SDK for JavaScript V3 describe en detalle todas las operaciones de la API para la versión 3 (V3) de AWS SDK for JavaScript.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación y uso de tablas en DynamoDB

JavaScript code example that applies to Node.js execution

Este ejemplo de código de Node.js muestra:

  • Cómo crear y administrar tablas utilizadas para almacenar y recuperar datos desde DynamoDB.

El escenario

Al igual que otros sistemas de base de datos, DynamoDB almacena datos en tablas. Una tabla de DynamoDB es una colección de datos que se organizan en elementos similares a las filas. Para almacenar u obtener acceso a datos de DynamoDB, debe crear y trabajar con tablas.

En este ejemplo, va a utilizar una serie de módulos Node.js para realizar operaciones básicas con una tabla de DynamoDB. El código usa el SDK JavaScript para crear tablas y trabajar con ellas mediante estos métodos de la clase DynamoDB cliente:

Tareas previas necesarias

Para configurar y ejecutar este ejemplo, primero debe completar las tareas siguientes:

  • Configure el entorno del proyecto para ejecutar estos ejemplos de Node.js e instale los módulos necesarios AWS SDK for JavaScript y de terceros. Siga las instrucciones de GitHub.

  • Instale el SDK para el JavaScript cliente DynamoDB. Para obtener más información, consulte ¿Qué novedades incluye la versión 3?.

  • Cree un archivo de configuraciones compartidas con sus credenciales de usuario. Para obtener más información sobre cómo proporcionar un archivo de credenciales compartido, consulte Archivos de configuración y credenciales compartidos en la Guía de referencia de SDK y herramientas de AWS.

importante

En estos ejemplos se utiliza ECMAScript6 (ES6). Requiere la versión 13.x o superior de Node.js. Para descargar e instalar la versión más reciente de Node.js, consulte Descargas de Node.js.

No obstante, si prefiere utilizar la sintaxis CommonJS, consulte Sintaxis ES6/commonJS de JavaScript.

nota

Para obtener información sobre los tipos de datos utilizados en estos ejemplos, consulte Tipos de datos y reglas de denominación compatibles en Amazon DynamoDB.

Creación de una tabla

Cree un módulo de Node.js con el nombre de archivo create-table.js. Asegúrese de configurar el SDK como se ha mostrado anteriormente, incluida la descarga de los clientes y paquetes necesarios. Para acceder a DynamoDB, cree un objeto de servicio de cliente de DynamoDB. Cree un objeto JSON que contenga los parámetros necesarios para crear una tabla, que en este ejemplo incluye el nombre y el tipo de datos para cada atributo, el esquema de claves, el nombre de la tabla y las unidades de rendimiento que deben aprovisionarse. Llame al método CreateTableCommand del objeto de servicio de 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; };

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node create-table.js

Puede encontrar este código de ejemplo aquí en. GitHub

Creación de sus tablas

Cree un módulo de Node.js con el nombre de archivo list-tables.js. Asegúrese de configurar el SDK como se ha mostrado anteriormente, incluida la descarga de los clientes y paquetes necesarios. Para acceder a DynamoDB, cree un objeto de servicio de cliente de DynamoDB. Cree un objeto JSON que contenga los parámetros necesarios para obtener una lista de las tablas, que en este ejemplo limita el número de tablas enumeradas a 10. Llame al método ListTablesCommand del objeto de servicio de 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; };

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node list-tables.js

Este código de ejemplo se puede encontrar aquí en GitHub.

Descripción de una tabla

Cree un módulo de Node.js con el nombre de archivo describe-table.js. Asegúrese de configurar el SDK como se ha mostrado anteriormente, incluida la descarga de los clientes y paquetes necesarios. Para acceder a DynamoDB, cree un objeto de servicio de cliente de DynamoDB. Cree un objeto JSON que contenga los parámetros necesarios para describir un método DescribeTableCommand del objeto de servicio de 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; };

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node describe-table.js

Este código de ejemplo se puede encontrar aquí en GitHub.

Eliminación de una tabla

Cree un módulo de Node.js con el nombre de archivo delete-table.js. Asegúrese de configurar el SDK como se ha mostrado anteriormente, incluida la descarga de los clientes y paquetes necesarios. Para acceder a DynamoDB, cree un objeto de servicio de cliente de DynamoDB. Cree un objeto JSON que contenga los parámetros necesarios para eliminar una tabla. En este ejemplo, el nombre de la tabla se proporciona como parámetro de la línea de comandos. Llame al método DeleteTableCommand del objeto de servicio de 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; };

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

node delete-table.js

Este código de ejemplo se puede encontrar aquí en GitHub.