Bienvenido a Platzi

Comentario de la clase:
Hot partitions
Mario Alexander Vargas Celis

Mario Alexander Vargas Celis

student
hace un año

🔥 ¿Qué son las Hot Partitions en DynamoDB?

En Amazon DynamoDB, una hot partition ocurre cuando una partición física específica recibe una carga desproporcionada de tráfico, causando:

  • Cuellos de botella en el rendimiento
  • Límites de lectura o escritura excedidos
  • Latencia alta o errores de throughput

🧱 ¿Cómo funciona el almacenamiento en particiones?

DynamoDB divide internamente las tablas en particiones físicas, y cada partición:

  • Tiene capacidad limitada (~3,000 lecturas o 1,000 escrituras por segundo).
  • Se determina por el valor de la Partition Key.

📌 Si muchos ítems comparten el mismo valor de clave de partición, todos caen en la misma partición física → ahí nace una hot partition.

🧨 Ejemplo de hot partition

Supón una tabla con esta clave primaria simple:

"UserId": "12345"

Y todos los usuarios que acceden a la app son

"12345"
... ❌ Todos los accesos van a la misma partición → esto crea una hot partition.

✅ Cómo evitar Hot Partitions

  1. Diseño de clave de partición más distribuido📌 Ejemplo:"PartitionKey": "login-2025-05-22-3"

    • Usa un UUID o un valor hash distribuido uniformemente.
    • Si tienes una fecha o categoría muy popular, inclúyela con un sufijo aleatorio.
  2. Usar claves compuestas (partition key + sort key)

    • Permite organizar datos dentro de una clave de partición y facilita búsquedas ordenadas.
  3. Agregar entropía (sal)

    • Añadir un valor aleatorio o hash como parte del partition key:"UserId": "12345#4"
  4. Utilizar Global Secondary Indexes (GSI)

    • Para consultar por otros atributos sin sobrecargar la clave primaria.
  5. On-demand capacity mode

    • Deja que DynamoDB escale automáticamente, aunque no soluciona completamente hot partitions si el diseño es deficiente.

📌 Regla de oro

"Diseña tu clave de partición como si millones de usuarios accedieran al mismo tiempo"

No hay respuestas
Curso de Amazon DynamoDB

Curso de Amazon DynamoDB

Aprende a usar Amazon DynamoDB como base de datos NoSQL Serverless en AWS. Crea tablas, realiza consultas e integra con servicios como Lambda y API Gateway. Gestiona escalabilidad y mantenimiento mediante backups automáticos y auto-scaling.

Curso de Amazon DynamoDB
Curso de Amazon DynamoDB

Curso de Amazon DynamoDB

Aprende a usar Amazon DynamoDB como base de datos NoSQL Serverless en AWS. Crea tablas, realiza consultas e integra con servicios como Lambda y API Gateway. Gestiona escalabilidad y mantenimiento mediante backups automáticos y auto-scaling.