Durante el desarrollo de un par de proyectos he aprendidos dos cosas importantes que hay que recordar a la hora de utilizar DynamoDB.
Nunca, pero nunca usar scan
El scan
en DynamoDB recorre TODA la base de datos renglón por renglón lo que hace que sea muy ineficiente, funciona pero no para buscar recursos, para todo lo demás existen los Global Secondary Indexes (GSI) que permiten realizar búsquedas usando query
o get
.
Lambda + DynamoDB
Cuando se utilizar una función lambda
para acceder a recursos dentro de DynamoDB se debe utilizar la siguiente variable de entorno:
AWS_NODEJS_CONNECTION_REUSE_ENABLED = 1
Esto permite mantener una conexión viva a DynamoDB durante la ejecución de la función.