Contenido del curso

Fundamentos de la Infraestructura Global de AWS

Servicios de cómputo en AWS

Almacenamiento en AWS

Seguridad en AWS

Costos en AWS

Cómo aprobar la certificación AWS Cloud Practitioner

Crea tu primera tabla en DynamoDB

Resumen

Crear una tabla en DynamoDB es el primer paso para usar la base de datos NoSQL más flexible de AWS. Aquí aprendes a configurarla desde la consola, definir su capacidad y agregar ítems con esquemas dinámicos, ideal para quienes preparan la certificación Cloud Practitioner o trabajan con datos llave valor.

¿Qué necesitas para crear tu primera tabla en DynamoDB?

Desde la consola de AWS, escribe Dynamo en la barra de búsqueda y entra al servicio. En el panel izquierdo verás opciones para tablas, edición de queries, importar y exportar desde S3, entre otras. A la derecha aparece el botón Create table, donde inicia toda la configuración.

El primer dato que pide es el nombre de la tabla. Para este ejemplo se llama Empleados. Luego viene la partition key, que actúa como identificador único de cada registro. Aquí se usa ID empleado como llave de partición. La llave de ordenamiento es opcional, así que en este caso se omite.

¿Qué es la partition key en DynamoDB? Es el atributo que identifica de forma única cada ítem y determina cómo se distribuyen los datos entre particiones. Sin ella no puedes crear la tabla.

¿Cómo configurar la capacidad y los costos de la tabla?

En lugar de aceptar los default settings, conviene dar clic en Customize para entender cada parámetro. La primera decisión es el table class: estándar o de acceso poco frecuente. Para uso general, se deja en estándar.

Luego aparece el capacity calculator, una herramienta clave para estimar costos. Puedes definir cuántas unidades de lectura y escritura por segundo necesitas. Por ejemplo, 40 lecturas y 50 escrituras. A medida que mueves esos valores, el costo mensual se actualiza en la esquina inferior derecha.

El tamaño promedio del objeto también pesa. Si subes el tamaño a 100 K, el costo mensual proyectado puede llegar a 261 mil dólares. Por eso vigilar la capacidad es parte del trabajo diario con Dynamo.

¿Qué diferencia hay entre provisioned y on-demand?

DynamoDB ofrece dos modos de aprovisionamiento de capacidad:

  • Provisioned: defines un mínimo y un máximo de unidades. En el ejemplo, mínimo 1 y máximo 10, con un target de utilización del 70 %. Te da control total sobre los costos.
  • On-demand: la capacidad crece automáticamente según la demanda. Es más flexible, pero más riesgoso para el presupuesto.

La recomendación es empezar con provisioned mientras aprendes a medir tus cargas reales.

¿Qué opciones de seguridad e índices ofrece DynamoDB?

Más abajo en la configuración aparecen los secondary indexes, donde puedes crear un local secondary index o un global secondary index. Sirven para hacer búsquedas más eficientes y personalizadas sobre atributos distintos a la llave principal.

Después viene la sección de encryption at rest. Puedes elegir entre el cifrado por defecto de DynamoDB, una llave administrada por Amazon o una llave propia bajo tu dominio. Para empezar, la opción por defecto es suficiente.

La protección contra eliminado se recomienda habilitarla siempre. Evita borrados accidentales de la tabla, algo crítico cuando hay datos en producción. También puedes aplicar una resource-based policy, similar a las políticas que se usan en S3, para definir quién puede entrar y qué puede hacer sobre la tabla.

Con la capacidad mínima configurada, el costo estimado del ejemplo queda en aproximadamente 2 dólares mensuales.

¿Qué hace la resource-based policy en una tabla DynamoDB? Agrega una capa de seguridad al recurso, controlando qué identidades pueden leer, escribir o administrar la tabla.

¿Cómo agregar ítems con esquemas flexibles en DynamoDB?

Una vez que el status de la tabla pasa a active, das clic en Empleados y luego en Actions o directamente en Create item. Como la partition key es ID empleado, ese campo es obligatorio. En el primer ítem se usa el ID 123456.

Con el botón Add new attribute puedes sumar campos adicionales. Para el primer registro se agregan:

  • Nombre tipo string: Carlos Zambrano.
  • Edad tipo number: 20.
  • Dirección tipo string: Avenida Siempre Viva 123.

Luego creas un segundo ítem con ID 987654 para Juliana Gómez. Aquí cambia algo importante: además de nombre y dirección (Calle 1234), se agrega un atributo trabajo con el valor Platzi, que el primer ítem no tiene.

Y aquí está la magia. Los dos ítems viven en la misma tabla con atributos distintos, y eso no rompe nada. Esa flexibilidad de esquema es lo que distingue a una base no relacional como DynamoDB: cada registro puede tener su propia estructura, mientras compartan la llave de partición.

Cada consulta también muestra el consumo, por ejemplo 0,5 unidades de lectura, lo que ayuda a entender el costo en tiempo real.

¿Qué más puedes explorar dentro de una tabla DynamoDB?

Desde la vista de la tabla y el menú Actions tienes acceso a funcionalidades avanzadas que conviene revisar una por una:

  • Crear y administrar indexes para búsquedas eficientes.
  • Monitorear métricas desde la pestaña Monitor.
  • Configurar tablas multirregión para alta disponibilidad.
  • Hacer backups y restauraciones.
  • Exportar datos y conectar streamings.
  • Administrar permisos y tags.
  • Editar la capacidad o quitar la protección contra borrado.

DynamoDB es una base de datos no relacional que puede crecer prácticamente sin límite y ajustarse a casos de uso muy distintos, desde catálogos de productos hasta sistemas de sesiones de usuarios.

¿Qué features nuevas descubriste tú al investigar DynamoDB? Comparte en los comentarios lo que te llamó la atención para que más estudiantes aprendan contigo.