J'utilise une table à la demande DynamoDB, mais elle est limitée. Pourquoi ?

Dernière mise à jour : 25/08/2020

Ma table à la demande Amazon DynamoDB est limitée. Quelle en est la raison ?

Brève description

Voici deux raisons courantes de la limitation de tables à la demande :

  • le trafic est plus de deux fois supérieur au pic précédent ;
  • le trafic dépasse la valeur maximale par partition.

Solution

Le trafic est plus de deux fois supérieur au pic précédent

Vous pouvez subir une limitation lorsque vous dépassez le double de votre pic de trafic précédent sur 30 minutes. Nous vous conseillons d'étaler votre augmentation de trafic sur au moins 30 minutes avant d'atteindre plus de 100 000 lectures par seconde. Utilisez la métrique ConsumedReadCapacityUnits dans Amazon CloudWatch pour surveiller le trafic vers la table. Pour plus d'informations, consultez la section Métriques et dimensions DynamoDB.

Pour les nouvelles tables à la demande, vous pouvez aller immédiatement jusqu'à 4 000 unités de requête en écriture ou 12 000 unités de requête en lecture, ou toute combinaison linéaire des deux. Dans le cas d’une table existante passée en mode de capacité à la demande, le pic précédent est la moitié du débit provisionné précédent pour la table ou le paramètre d'une nouvelle table à la demande, selon la valeur la plus élevée. Pour plus d'informations, consultez la section Débit initial du mode de capacité à la demande.

Le trafic dépasse la valeur maximale par partition

Chaque partition de la table peut servir jusqu'à 3 000 unités de requête en lecture ou 1 000 unités de requête en écriture, ou une combinaison linéaire des deux. Une partition peut être limitée lorsque le trafic dépasse ce seuil. Pour résoudre ce problème :

  1. Utilisez CloudWatch Contributor Insights for DynamoDB pour identifier les clés les plus fréquemment consultées et limitées dans votre table.
  2. Randomisez les requêtes envoyées à la table afin d’étaler dans le temps les demandes aux clés de la partition « en surchauffe ». Pour plus d'informations, consultez la section Utilisation du partitionnement d'écriture pour la répartition uniforme des charges de travail.