Prácticas recomendadas para diseñar y utilizar claves de partición de forma eficaz
La clave principal que identifica de manera inequívoca cada elemento de una tabla de Amazon DynamoDB puede ser simple (ser únicamente una clave de partición) o compleja (estar formada por una clave de partición y una clave de ordenación).
Por lo general, la aplicación debería diseñarse con la idea de que la actividad será uniforme en todas las claves de las particiones lógicas de la tabla y sus índices secundarios. Puede determinar los patrones de acceso que requiere su aplicación y las unidades de lectura y escritura que requiere cada tabla e índice secundario.
De forma predeterminada, cada partición de la tabla se esforzará por ofrecer la capacidad total de 3000 RCU y 1000 WCU. El rendimiento total de todas las particiones de la tabla puede estar limitado por el rendimiento aprovisionado en el modo aprovisionado, o por el límite de rendimiento a nivel de tabla en el modo bajo demanda. Para obtener más información, consulte Service Quotas.
Temas
- Uso eficaz de la capacidad de ampliación
- Descripción de la capacidad de adaptación de DynamoDB
- Diseño de claves de partición para distribuir la carga de trabajo
- Uso de la fragmentación de escritura para distribuir cargas de trabajo uniformemente
- Distribución de la actividad de escritura de forma eficiente al cargar los datos
Uso eficaz de la capacidad de ampliación
DynamoDB proporciona cierta flexibilidad para su aprovisionamiento de rendimiento con capacidad de ampliación. Cuando no se utiliza todo el rendimiento disponible, DynamoDB reserva una parte de esa capacidad no utilizada para poder ofrecer posteriormente ampliaciones de rendimiento durante los picos de uso.
En este momento, DynamoDB retiene hasta 5 minutos (300 segundos) de capacidad de lectura y escritura sin usar. Durante una ampliación de actividad de lectura o escritura ocasional, estas unidades de capacidad adicionales pueden consumirse muy rápidamente, incluso a más velocidad que la capacidad de rendimiento aprovisionada por segundo que se ha definido para la tabla.
DynamoDB también puede consumir capacidad de ampliación para el mantenimiento en segundo plano y otras tareas sin previo aviso.
Tenga en cuenta que estos detalles sobre la capacidad de ráfagas podrían cambiar en el futuro.
Descripción de la capacidad de adaptación de DynamoDB
La capacidad de adaptación es una característica que permite que DynamoDB ejecute cargas de trabajo desequilibradas de manera indefinida. Minimiza la limitación controlada causada a las excepciones de rendimiento. También ayuda a reducir los costos, porque permite aprovisionar únicamente la capacidad de rendimiento que se necesita.
La capacidad de adaptación está habilitada de forma automática para todas las tablas de DynamoDB sin coste adicional. No es necesario habilitarla o deshabilitarla de forma explícita.
Temas
Aumento de la capacidad de rendimiento en particiones de tráfico intenso
No siempre es posible distribuir uniformemente la actividad de lectura y escritura. Si el acceso a los datos está desequilibrado, una partición "caliente" podría recibir un volumen mayor de tráfico de lectura y escritura que otras particiones. Como las operaciones de lectura y escritura en una partición se administran de forma independiente, se producirá una limitación si una sola partición recibe más de 3000 operaciones de lectura o más de 1000 operaciones de escritura.
Para acomodar mejor los patrones de acceso desiguales, la capacidad de adaptación de DynamoDB permite que una aplicación pueda seguir leyendo particiones calientes y escribiendo en ellas sin que se produzca una limitación controlada, siempre que el tráfico no supere la capacidad total aprovisionada para la tabla o la capacidad máxima de la partición. De forma automática e instantánea, la capacidad de adaptación hace que la capacidad de rendimiento aumente en las particiones que reciben más tráfico.
El siguiente diagrama ilustra el funcionamiento de la capacidad de adaptación. La tabla de ejemplo está aprovisionada con 400 WCU distribuidas de manera uniforme entre cuatro particiones, lo que permite que cada una de ellas admita un máximo de 100 WCU por segundo. Cada una de las particiones 1, 2 y 3 recibe tráfico de escritura de 50 WCU/seg. La partición 4 recibe 150 WCU/seg. Esta partición caliente puede aceptar tráfico de escritura mientras haya capacidad de ampliación disponible, pero eventualmente limitará el tráfico que supere las 100 WCU/s.
La capacidad de adaptación de DynamoDB responde incrementando la capacidad de la partición 4, de forma que pueda soportar la carga de trabajo de 150 WCU/s sin que se aplique una limitación controlada.

Aislamiento de elementos de acceso frecuente
Si su aplicación dirige un tráfico alto hacia uno o dos elementos de forma desproporcionada, la capacidad de adaptación volverá a equilibrar sus particiones de manera que los elementos con acceso frecuente no residan en la misma partición. Este aislamiento de los elementos de acceso frecuente reduce la probabilidad de que se solicite la limitación controlada debida a que la carga de trabajo supere la cuota de rendimiento de una única partición. También puede dividir una colección de elementos en segmentos por clave de clasificación, siempre y cuando la colección de elementos no sea objeto de un seguimiento por aumento o disminución monótona de la clave de clasificación.
Si la aplicación genera habitualmente gran intensidad de tráfico dirigido a un solo elemento, la capacidad de adaptación puede reequilibrar los datos, de tal forma que una partición solo contenga ese elemento al que se accede con frecuencia. En este caso, DynamoDB puede proporcionar rendimiento hasta el máximo de la partición de 3000 RCU y 1000 WCU a la clave principal de ese elemento único. La capacidad de adaptación no dividirá las colecciones de elementos en varias particiones de la tabla cuando haya un índice secundario local en la tabla.