Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Curso Práctico de Bases de Datos en AWS

Curso Práctico de Bases de Datos en AWS

Carlos Andrés Zambrano Barrera

Carlos Andrés Zambrano Barrera

Operaciones Scan en DynamoDB

25/32
Recursos

Las Operaciones Scan se encargan de escanear por completo nuestras tablas para examinar todos sus elementos y comprobar si presentan los valores solicitados, pero son muy poco eficientes ya que utilizan bastantes unidades de lectura y aumentan los costos de nuestra base de datos, debemos evitar estas operaciones para tablas grandes.

AWS nos recomienda realizar operaciones pequeñas a lo largo del tiempo en vez de hacer una sola operación muy larga, también podemos configurar límites de tamaño para evitar los escaneos completos y duplicar nuestras tablas para realizar estas operaciones sobre tablas no principales y no afectar su rendimiento.

Aportes 9

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Notas de la clase:

  • Las operaciones scan examinan los elementos de nuestras tablas para comprobar sus valores 🤓
  • Son completamente ineficientes y deberíamos evitarlas 👎 😥😠
  • Pueden gastar todos los niveles de lectura de la base de datos
  • Haciendo operaciones pequeñas a lo largo del tiempo y configurando límites podemos evitar el escaneo completo y subir los precios 🤔
  • Si duplicamos las tablas para las operaciones NO afectamos el performance de las tablas principales 🆗

Entonces, ¿para qué sirven las operaciones Scan? ¿cuando SI deberíamos utilizarlas? 😅

Las Operaciones Scan se encargan de escanear por completo nuestras tablas para examinar todos sus elementos y comprobar si presentan los valores solicitados, pero son muy poco eficientes ya que utilizan bastantes unidades de lectura y aumentan los costos de nuestra base de datos, debemos evitar estas operaciones para tablas grandes.

AWS nos recomienda realizar operaciones pequeñas a lo largo del tiempo en vez de hacer una sola operación muy larga, también podemos configurar límites de tamaño para evitar los escaneos completos y duplicar nuestras tablas para realizar estas operaciones sobre tablas no principales y no afectar su rendimiento.

Optimización en Scan

  • Reducir el tamaño de la página usando el parámetro LIMIT en el request.
  • Se pueden duplicar tablas para hacer operaciones Scan sobre tablas no principales.

A Scan operation in Amazon DynamoDB reads every item in a table or a secondary index. By default, a Scan operation returns all of the data attributes for every item in the table or index. You can use the ProjectionExpression parameter so that Scan only returns some of the attributes, rather than all of them.

mejor escanear lo necesario y hacer buenas búsquedas 😃

Cuando aplicas los límites, estos ¿Hacen que no se considere en el scan algunas tablas y por tanto, no las lee y con ellos se logra bajar el pricing?

DYNAMODB
Operaciones Scan

  • Son menos eficientes.

  • Examina la tabla o indice secundario en su totalidad.

  • Para tablas grandes evité usar Scan.

  • Examina cada elemento para comprobar si presenta los valores solicitados.

  • Utiliza bastantes unidades de lectura.

  • Realiza lecturas consistentes finales de forma predeterminada y puede devolver hasta 1 MB (una página) de datos

  • Al consumir las unidades de lectura provoca aumento de costos.