Débit maximal DynamoDB pour les tables à la demande - Amazon DynamoDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Débit maximal DynamoDB pour les tables à la demande

Pour les tables à la demande, vous pouvez éventuellement spécifier le débit maximal de lecture ou d'écriture (ou les deux) par seconde pour les tables individuelles et les index secondaires globaux associés ()GSIs. La spécification d'un débit maximal à la demande permet de limiter l'utilisation et les coûts au niveau de la table. Par défaut, les paramètres de débit maximal ne s'appliquent pas et votre débit à la demande est limité par le quota de AWS service pour toutes les tables ou GSIs au sein d'une table. Si nécessaire, vous pouvez demander une augmentation de votre quota de service.

Lorsque vous configurez le débit maximal pour une table à la demande, les demandes de débit dépassant le montant maximum spécifié sont limitées. Vous pouvez modifier les paramètres de débit au niveau de la table à tout moment en fonction des exigences de votre application.

Voici quelques cas d'utilisation courants qui peuvent bénéficier de l'utilisation d'un débit maximal pour les tables à la demande :

  • Optimisation des coûts de débit — L'utilisation d'un débit maximal pour les tables à la demande fournit une couche supplémentaire de prévisibilité et de gérabilité des coûts. En outre, il offre une plus grande flexibilité pour utiliser le mode à la demande afin de prendre en charge des charges de travail présentant des modèles de trafic et des budgets différents.

  • Protection contre une utilisation excessive : en définissant un débit maximal, vous pouvez éviter une augmentation accidentelle de la consommation en lecture ou en écriture, qui pourrait résulter d'un code non optimisé ou de processus malveillants, par rapport à une table à la demande. Ce paramètre au niveau de la table peut empêcher les organisations de consommer des ressources excessives dans un certain laps de temps.

  • Protection des services en aval — Une application client peut inclure des technologies sans serveur et sans serveur. La partie sans serveur de l'architecture peut évoluer rapidement pour répondre à la demande. Mais les composants en aval dotés de capacités fixes pourraient être débordés. La mise en œuvre de paramètres de débit maximal pour les tables à la demande peut empêcher la propagation d'un grand nombre d'événements vers plusieurs composants en aval, avec des effets secondaires inattendus.

Vous pouvez configurer le débit maximal pour le mode à la demande pour les tables mono-régionales et les tables globales nouvelles et existantes et. GSIs Vous pouvez également configurer le débit maximal lors de la restauration des tables et de l'importation de données à partir des flux de travail Amazon S3.

Vous pouvez définir les paramètres de débit maximal pour une table à la demande à l'aide de la console AWS CLIDynamoDB ou de DynamoDB. AWS CloudFormationAPI

Note

Le débit maximal pour une table à la demande est appliqué au mieux et doit être considéré comme des objectifs plutôt que comme des plafonds de demandes garantis. Votre charge de travail peut temporairement dépasser le débit maximal spécifié en raison de la capacité de rafale. Dans certains cas, DynamoDB utilise la capacité de rafale pour permettre des lectures ou des écritures dépassant les paramètres de débit maximum de votre table. La capacité de transmission en mode rafale permet de satisfaire les demandes inattendues en lecture ou en écriture, alors qu'elles seraient sinon limitées.

Considérations relatives à l'utilisation du débit maximal en mode à la demande

Lorsque vous utilisez le débit maximal pour les tables en mode à la demande, les considérations suivantes s'appliquent :

  • Vous pouvez définir indépendamment le débit maximal pour les lectures et les écritures pour n'importe quelle table à la demande, ou définir un index secondaire global individuel au sein de cette table afin d'affiner votre approche en fonction d'exigences spécifiques.

  • Vous pouvez utiliser Amazon CloudWatch pour surveiller et comprendre les mesures d'utilisation de DynamoDB au niveau des tables et pour déterminer les paramètres de débit maximal appropriés pour le mode à la demande. Pour de plus amples informations, veuillez consulter Métriques et dimensions DynamoDB.

  • Lorsque vous spécifiez les paramètres de débit maximal en lecture ou en écriture (ou les deux) sur une réplique de table globale, les mêmes paramètres de débit maximum sont automatiquement appliqués à toutes les tables de réplication. Il est important que les tables de réplication et les index secondaires d'une table globale aient des paramètres de débit d'écriture identiques pour garantir une réplication correcte des données. Pour de plus amples informations, veuillez consulter Meilleures pratiques et exigences relatives à la gestion des tables globales DynamoDB.

  • Le plus petit débit maximal de lecture ou d'écriture que vous pouvez spécifier est d'une unité de demande par seconde.

  • Le débit maximal que vous spécifiez doit être inférieur au quota de débit par défaut disponible pour toute table à la demande ou pour un index secondaire global individuel au sein de cette table.

Limitation des demandes et mesures CloudWatch

Si votre application dépasse le débit de lecture ou d'écriture maximal que vous avez défini dans votre table à la demande, DynamoDB commence à limiter ces demandes. Quand DynamoDB limite une opération de lecture ou d'écriture, un code ThrottlingException est renvoyé à l'appelant. Vous pouvez ensuite prendre les mesures appropriées, le cas échéant. Par exemple, vous pouvez augmenter ou désactiver le paramètre de débit maximal des tables, ou attendre un court intervalle avant de réessayer la demande.

Pour simplifier la surveillance du débit maximal configuré pour une table ou un index secondaire global, CloudWatch fournit les mesures suivantes : OnDemandMaxReadRequestUnits etOnDemandMaxWriteRequestUnits.