View a markdown version of this page

Évaluez le mode de capacité de votre table - Amazon Keyspaces (pour Apache Cassandra)

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.

Évaluez le mode de capacité de votre table

Cette section explique comment sélectionner le mode de capacité approprié pour votre tableau Amazon Keyspaces. Chaque mode est réglé de façon à répondre aux besoins d’une charge de travail différente en termes de réactivité face à l’évolution du débit, ainsi que de facturation de cette utilisation. Vous devez tenir compte de ces facteurs lorsque vous prenez votre décision.

Quels sont les modes de capacité de table disponibles ?

Lorsque vous créez un tableau Amazon Keyspaces, vous devez sélectionner le mode de capacité à la demande ou provisionné. Pour de plus amples informations, veuillez consulter Configurer les modes de read/write capacité dans Amazon Keyspaces.

On-demand mode de capacité

Le mode de capacité à la demande est conçu pour éliminer le besoin de planifier ou de provisionner la capacité de votre table Amazon Keyspaces. Dans ce mode, votre table répond instantanément aux demandes sans qu'il soit nécessaire d'augmenter ou de diminuer les ressources (jusqu'à deux fois le débit de pointe précédent de la table).

On-demand les tables sont facturées en comptant le nombre de demandes réelles par rapport au tableau, de sorte que vous ne payez que pour ce que vous utilisez et non pour ce qui a été provisionné.

Mode de capacité provisionnée

Le mode de capacité provisionnée est un modèle plus traditionnel dans lequel vous pouvez définir la capacité disponible pour les demandes dans la table, soit directement, soit à l'aide d'Application Auto Scaling. Dans la mesure où une capacité spécifique est mise en service pour la table à tout moment, la facturation est basée sur la capacité fournie plutôt que sur le nombre de demandes. Le dépassement de la capacité allouée peut également entraîner le rejet des demandes par la table et réduire l'expérience des utilisateurs de votre application.

Le mode de capacité provisionnée nécessite un équilibre entre le fait de ne pas surprovisionner ou de sous-provisionner la table pour atteindre les deux objectifs, une faible fréquence d'erreurs de capacité de débit insuffisante et une optimisation des coûts.

Quand sélectionner le mode de capacité à la demande ?

Lorsque vous optimisez les coûts, le mode à la demande est votre meilleur choix lorsque vous avez une charge de travail imprévisible similaire à celle illustrée dans le graphique suivant.

Les facteurs suivants contribuent à ce type de charge de travail :

  • Caractère imprévisible des demandes (entraînant des pics de trafic)

  • Volume variable des demandes (en raison des charges de travail par lots)

  • Baisse à zéro ou en dessous de 18 % du pic pendant une heure donnée (en raison des environnements de développement ou de test)

Image montrant une charge de travail élevée avec des pics de trafic aléatoires.

Pour les charges de travail présentant les caractéristiques ci-dessus, l'utilisation de Application Auto Scaling pour maintenir une capacité suffisante pour que la table réponde aux pics de trafic peut entraîner des résultats indésirables. Soit la table est surprovisionnée et coûte plus cher que nécessaire, soit la table peut être sous-provisionnée et les demandes entraînent des erreurs inutiles de débit de faible capacité. Dans de tels cas, les tables à la demande constituent le meilleur choix.

Les tables à la demande étant facturées sur demande, vous n'avez rien d'autre à faire au niveau des tables pour optimiser les coûts. Vous devez régulièrement évaluer vos tableaux à la demande pour vérifier que la charge de travail présente toujours les caractéristiques ci-dessus. Si la charge de travail s'est stabilisée, envisagez de passer en mode provisionné afin de maintenir l'optimisation des coûts.

Quand sélectionner le mode de capacité provisionnée ?

Une charge de travail idéale pour le mode de capacité provisionnée est une charge de travail présentant un schéma d'utilisation plus prévisible, comme le montre le graphique ci-dessous.

Les facteurs suivants contribuent à une charge de travail prévisible :

  • Predicable/cyclical trafic pendant une heure ou un jour donné

  • Rafales de trafic limitées à court terme

Image montrant une charge de travail relativement prévisible avec des pics de trafic limités.

Étant donné que les volumes de trafic au cours d'une heure ou d'une journée donnée sont plus stables, vous pouvez définir la capacité provisionnée relativement proche de la capacité réellement consommée du tableau. L'optimisation des coûts d'un tableau de capacité provisionnée est en fin de compte un exercice visant à rapprocher la capacité provisionnée (ligne bleue) de la capacité consommée (ligne orange) sans augmenter le nombre d'ThrottledRequestsévénements pour le tableau. L'espace entre les deux lignes est à la fois synonyme de perte de capacité et d'assurance contre une mauvaise expérience utilisateur due à des erreurs de capacité de débit insuffisante.

Amazon Keyspaces propose la mise à l'échelle automatique des applications pour les tableaux de capacité provisionnés, qui équilibre automatiquement cela en votre nom. Vous pouvez suivre votre capacité consommée tout au long de la journée et configurer la capacité provisionnée du tableau en fonction de quelques variables.

Unités de capacité minimale

Vous pouvez définir la capacité minimale d'une table pour limiter l'apparition d'erreurs de capacité de débit insuffisante, mais cela ne réduit pas le coût de la table. Si votre table connaît des périodes de faible utilisation suivies d'une soudaine augmentation d'utilisation, le réglage du minimum peut empêcher Application Auto Scaling de définir la capacité de la table à un niveau trop faible.

Unité de capacité maximale

Vous pouvez définir la capacité maximale d’une table afin de limiter la mise à l’échelle d’une table en utilisant une valeur supérieure à celle prévue. Envisagez d'appliquer un maximum pour les tables de développement ou de test, lorsqu'il n'est pas souhaitable d'effectuer des essais de charge à grande échelle. Vous pouvez définir un maximum pour n'importe quelle table, mais veillez à évaluer régulièrement ce paramètre par rapport à la référence de la table lorsque vous l'utilisez en production, afin d'éviter des erreurs accidentelles de capacité de débit insuffisante.

Utilisation cible

La définition de l’utilisation cible de la table est le principal moyen d’optimiser les coûts pour une table à capacité provisionnée. La définition d'une valeur de pourcentage inférieure ici augmente le niveau de surprovisionnement de la table, ce qui augmente les coûts, mais réduit le risque d'erreurs de capacité de débit insuffisante. La définition d'une valeur de pourcentage plus élevée réduit le niveau de surprovisionnement de la table, mais augmente le risque d'erreurs de capacité de débit insuffisante.

Autres facteurs à prendre en compte lors du choix d’un mode de capacité de table

Lors du choix entre les deux modes de capacité, certains facteurs supplémentaires méritent d'être pris en compte.

Lorsque vous choisissez entre les deux modes de table, considérez dans quelle mesure cette réduction supplémentaire affecte le coût de la table. Dans de nombreux cas, même une charge de travail relativement imprévisible peut s'avérer plus rentable si elle est exécutée sur une table de capacité provisionnée surprovisionnée avec capacité réservée.

Améliorer la prévisibilité de votre charge de travail

Dans certaines situations, une charge de travail peut avoir un schéma à la fois prévisible et imprévisible. Bien que cela puisse être facilement pris en charge par un tableau à la demande, les coûts seront probablement inférieurs si les tendances imprévisibles de la charge de travail peuvent être améliorées.

L'une des causes les plus fréquentes de ces tendances est l'importation par lots. Ce type de trafic peut souvent dépasser la capacité de base de la table à un point tel que des erreurs de capacité de débit insuffisantes se produiraient en cas d'exécution de celle-ci. Pour qu’une charge de travail comme celle-ci soit exécutée sur une table à capacité provisionnée, considérez les options suivantes :

  • Si le lot se produit à des heures planifiées, vous pouvez planifier une augmentation de la capacité de dimensionnement automatique de votre application avant son exécution.

  • Si le lot se produit de manière aléatoire, pensez à essayer de prolonger le temps d'exécution plutôt que de l'exécuter le plus rapidement possible.

  • Ajoutez une période de montée en puissance à l'importation, au cours de laquelle la vitesse de l'importation commence lentement mais augmente lentement en quelques minutes jusqu'à ce que Application Auto Scaling ait eu l'opportunité de commencer à ajuster la capacité de la table.