query putitem node item expressionattributevalues dynamodb cli aws amazon-dynamodb

amazon dynamodb - node - ¿Diferencia entre DynamoDb PutItem y UpdateItem?



put item dynamodb lambda (1)

Basado en la documentación de DynamoDb, ¿Por qué alguien usaría updateItem en lugar de putItem?

PutItem: escribe un solo elemento en una tabla. Si existe un elemento con la misma clave principal en la tabla, la operación reemplaza al elemento. Para calcular el consumo de rendimiento provisto, el tamaño del artículo que importa es el mayor de los dos.

UpdateItem: modifica un solo elemento en la tabla. DynamoDB considera el tamaño del elemento tal como aparece antes y después de la actualización. El rendimiento aprovisionado consumido refleja el mayor de estos tamaños de artículos. Incluso si actualiza solo un subconjunto de los atributos del elemento, UpdateItem seguirá consumiendo la cantidad total de rendimiento aprovisionado (el mayor de los tamaños de elemento "antes" y "después").


La principal diferencia entre los dos es que PutItem reemplazará un artículo completo mientras que UpdateItem lo actualizará .

P.ej.

Tengo un artículo como:

userId = 1 Name= ABC Gender= Male

Si utilizo el artículo PUT con

UserId = 1 Country = India

Esto reemplazará a Nombre y Género y ahora el nuevo elemento es UserId y País. Mientras que si desea actualizar un elemento de Name = ABC to Name = 123 , tiene que usar UpdateItem

Puede usar Poner elemento para actualizarlo, pero necesita enviar todos los parámetros en lugar de solo el Parámetro que desea actualizar porque Reemplaza el elemento con el nuevo atributo. (Internamente, elimina el elemento y agrega un nuevo elemento)

Espero que esto tenga sentido.