Estimation du coût d'une table DynamoDB pour une capacité à la demande - Recommandations AWS

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.

Estimation du coût d'une table DynamoDB pour une capacité à la demande

Créée par Moinul Al-Mamun () AWS

Environnement : Production

Technologies : bases de données CloudNative ; sans serveur ; gestion des coûts

AWSservices : Amazon DynamoDB

Récapitulatif

Amazon DynamoDB est une base de données SQL non transactionnelle qui fournit une latence d'un chiffre en millisecondes, même à l'échelle du pétaoctet. Cette offre sans serveur Amazon Web Services (AWS) gagne en popularité en raison de ses performances constantes et de son évolutivité.  Vous n'avez pas besoin de provisionner l'infrastructure sous-jacente. Votre table unique peut atteindre des pétaoctets.

Avec le mode capacité à la demande, vous payez par demande pour les lectures et les écritures de données effectuées par votre application sur les tables. AWSles frais sont basés sur le cumul des unités de demande de lecture (RRUs) et des unités de demande d'écriture (WRUs) par mois. DynamoDB surveille la taille de votre table en permanence tout au long du mois afin de déterminer vos frais de stockage. Il prend en charge la sauvegarde continue avec point-in-time -recovery (PITR). DynamoDB surveille la taille de PITR vos tables activées en permanence tout au long du mois afin de déterminer vos frais de sauvegarde.

Pour estimer le coût DynamoDB d'un projet, il est important de calculer la RRU quantité WRU et le stockage qui seront consommés aux différentes étapes du cycle de vie de votre produit. Pour une estimation approximative des coûts, vous pouvez utiliser le calculateur de AWS prix, mais vous devez fournir un nombre approximatif de RRUsWRUs, et les besoins de stockage pour votre table. Il peut être difficile de les estimer au début du projet. AWSLe calculateur de prix ne prend pas en compte le taux de croissance des données ni la taille des éléments, ni le nombre de lectures et d'écritures pour la table de base et les index secondaires globaux (GSIs) séparément. Pour utiliser le calculateur de AWS prix, vous devez estimer tous ces aspects pour WRU obtenir des chiffres approximatifs et la taille du stockage afin d'obtenir votre estimation des coûts. RRU

Ce modèle fournit un mécanisme et un modèle Microsoft Excel réutilisable pour estimer les facteurs de coût de base de DynamoDB, tels que les coûts d'écriture, de lecture, de stockage, de sauvegarde et de restauration, pour le mode capacité à la demande. Il est plus détaillé que le calculateur de AWS prix et prend en compte le tableau de base et les GSIs exigences indépendamment. Il prend également en compte le taux de croissance mensuel des données par article et prévoit les coûts sur trois ans.

Conditions préalables et limitations

Prérequis

  • Connaissances de base de la conception de modèles de données DynamoDB et DynamoDB

  • Connaissances de base en matière de tarificationWRU, de stockageRRU, de sauvegarde et de restauration DynamoDB (pour plus d'informations, voir Tarification de la capacité à la demande)

  • Connaissance de vos données, de votre modèle de données et de la taille des éléments dans DynamoDB

  • Connaissance de DynamoDB GSIs

Limites

  • Le modèle fournit un calcul approximatif, mais il ne convient pas à toutes les configurations. Pour obtenir une estimation plus précise, vous devez mesurer la taille individuelle de chaque article dans le tableau de base etGSIs.

  • Pour une estimation plus précise, vous devez prendre en compte le nombre prévu d'écritures (insertion, mise à jour et suppression) et de lectures pour chaque élément au cours d'un mois moyen.

  • Ce modèle permet d'estimer uniquement les coûts d'écriture, de lecture, de stockage, de sauvegarde et de restauration pour les prochaines années sur la base d'hypothèses de croissance des données fixes.

Outils

AWSservices

  • Amazon DynamoDB est un service SQL sans base de données entièrement géré qui fournit des performances rapides, prévisibles et évolutives.

Autres outils

  • AWSLe calculateur de prix est un outil de planification en ligne que vous pouvez utiliser pour créer des estimations pour vos cas AWS d'utilisation.

Bonnes pratiques

Pour réduire les coûts, prenez en compte les meilleures pratiques de conception DynamoDB suivantes.

  • Conception de clés de partition : utilisez une clé de partition à cardinalité élevée pour répartir la charge de manière uniforme.

  • Modèle de conception de liste d'adjacence : utilisez ce modèle de conception pour la gestion one-to-many et many-to-many les relations.

  • Index clairsemé — Utilisez un index clairsemé pour votre. GSIs Lorsque vous créez unGSI, vous spécifiez une clé de partition et éventuellement une clé de tri. Seuls les éléments de la table de base contenant une clé de GSI partition correspondante apparaissent dans l'index fragmenté. Cela permet de rester GSIs plus petit.

  • Surcharge de l'index : utilisez la même méthode GSI pour indexer différents types d'éléments.

  • GSIpartitionnement des écritures : répartissez judicieusement les données entre les partitions pour des requêtes efficaces et plus rapides.

  • Objets de grande taille : stockez uniquement les métadonnées dans la table, enregistrez le blob dans Amazon S3 et conservez la référence dans DynamoDB. Divisez les éléments volumineux en plusieurs éléments et indexez efficacement à l'aide des clés de tri.

Pour d'autres bonnes pratiques de conception, veuillez consulter le Guide du développeur Amazon DynamoDB.

Épopées

TâcheDescriptionCompétences requises

Obtenez la taille de l'article.

  1. Vérifiez le nombre de types d'articles que vous allez stocker dans votre table.

  2. Pour calculer la taille de chaque élément en kilo-octets, ajoutez les tailles de clé et de valeur de chaque attribut.

  3. Calculez la taille des éléments pour un tableau de base et pour chacun d'entre euxGSI.

Ingénieur de données

Estimez le coût d'écriture.

Pour estimer le coût d'écriture en mode capacité à la demande, vous devez d'abord mesurer la quantité WRUs qui sera consommée en un mois. Pour cela, vous devez prendre en compte les facteurs suivants :

  • Nombre d'opérations de création, de mise à jour et de suppression pour chaque élément au cours d'un mois.

  • Nombre de disponiblesGSIs. Examinez chaque indice indépendamment. 

    • Taille moyenne d'un élément d'index

    • Nombre de temps de synchronisation sur un index

  • Combien de nouveaux éléments (par exemple, des composants ou des produits) seront ajoutés au tableau chaque mois ? Le nombre d'éléments ajoutés peut être différent chaque mois, mais vous pouvez supposer un taux de croissance moyen en fonction de vos analyses de rentabilisation. 

Pour plus d'informations, consultez la section Informations supplémentaires.

Ingénieur de données

Estimez le coût de lecture.

Pour estimer le coût de lecture en mode à la demande, vous devez d'abord mesurer la quantité RRUs qui sera consommée en un mois. Pour cela, vous devez prendre en compte les facteurs suivants : 

  • Nombre de disponiblesGSIs. Examinez chaque indice indépendamment. 

    • Taille moyenne d'un élément d'index

  • Nombre moyen de lectures par produit et par mois.

  • Nombre total d'éléments disponibles (composants ou produits) dans le tableau DynamoDB.

Ingénieur de données, développeur d'applications

Estimez la taille et le coût du stockage.

Tout d'abord, estimez le besoin de stockage mensuel moyen en fonction de la taille de votre article indiquée dans le tableau. Calculez ensuite le coût du stockage en multipliant la taille de stockage par le prix par Go de stockage pour votre AWS région. 

Si vous avez déjà saisi des données pour estimer le coût d'écriture, il n'est pas nécessaire de les saisir à nouveau pour calculer la taille de stockage. Dans le cas contraire, pour estimer la taille du stockage, vous devez prendre en compte les facteurs suivants : 

  • Nombre d'éléments de données dans un module (produit) en fonction de la conception de votre table.

  • Taille moyenne de l'article en kilo-octets.

  • Nombre de disponiblesGSIs. Examinez chaque indice indépendamment. 

    • Taille moyenne d'un élément d'index

  • Combien de nouveaux produits seront ajoutés au tableau chaque mois ? Le nombre de nouveaux produits peut varier d'un mois à l'autre, mais vous pouvez supposer un taux de croissance moyen en fonction de vos analyses de rentabilisation. Cet exemple utilise en moyenne 10 millions de nouveaux produits par mois.

Ingénieur de données
TâcheDescriptionCompétences requises

Téléchargez le modèle Excel depuis la section Pièces jointes et adaptez-le à votre tableau des cas d'utilisation.

  1. Téléchargez le modèle Excel.

  2. Ajustez le module commercial etGSIs, en fonction de la conception de votre table.

Ingénieur de données

Entrez les informations dans le modèle Excel.

  1. Mettez à jour les informations de l'article dans la feuille. Mettez à jour les données uniquement dans les cellules oranges.

  2. Ajustez les numéros d'objets : combien pourrait-on ajouter au tableau chaque mois ?

  3. Mettez à jour les RRU prix WRU et par million pour votre AWS région.

  4. Mettez à jour les prix du stockage et des sauvegardes par Go par mois pour votre AWS région.

  5. Mettez à jour le prix de récupération par Go pour votre AWS région.

Le modèle comporte trois éléments, ou entités : informations, métadonnées et relations. Il y en a deuxGSIs. Pour votre cas d'utilisation, si vous avez besoin de plus d'éléments, créez de nouvelles lignes. Si vous en avez besoin de plusGSIs, copiez un GSI bloc existant et collez-le pour créer autant de GSI blocs que nécessaire. Ajustez ensuite les calculs des TOTAL colonnes SUM et.

Ingénieur de données

Ressources connexes

Références

Guides et modèles

Informations supplémentaires

Rédiger un exemple de calcul des coûts

La conception du modèle de données DynamoDB indique trois éléments pour un produit et une taille moyenne de 4 Ko. Lorsque vous ajoutez un nouveau produit dans la table de base DynamoDB, il consomme le nombre d'éléments * (taille de l'article/unité d'écriture de 1 Ko) = 3 * (4/1) = 12. WRU Dans cet exemple, pour écrire 1 Ko, le produit en consomme 1WRU. 

Lire l'exemple de calcul des coûts

Pour obtenir une RRU estimation, considérez la moyenne du nombre de fois que chaque article sera lu par mois. Par exemple, l'élément d'information sera lu en moyenne 10 fois par mois, l'élément de métadonnées sera lu deux fois et l'élément de relation sera lu cinq fois. Dans l'exemple de modèle, total RRU pour tous les composants = nombre de nouveaux composants créés chaque mois* RRU par composant par mois = 10 millions * 17 RRU = 170 millions RRU par mois.

Chaque mois, de nouveaux éléments (composants ou produits) seront ajoutés et le nombre total de produits augmentera au fil du temps. Ainsi, RRU les exigences augmenteront également au fil du temps.

  • Pour le premier moisRRU, la consommation sera de 170 millions.

  • Pour le deuxième mois, RRU la consommation sera de 2* 170 millions = 340 millions.

  • Pour le troisième mois, RRU la consommation sera de 3* 170 millions = 510 millions.

Le graphique suivant montre la RRU consommation mensuelle et les prévisions de coûts.

La RRU consommation augmente plus fortement que le coût.

Notez que les prix indiqués dans le graphique ne sont fournis qu'à titre d'illustration. Pour créer des prévisions précises adaptées à votre cas d'utilisation, consultez la page de AWS tarification et utilisez ces prix dans la feuille Excel.

Exemples de calcul des coûts de stockage, de sauvegarde et de restauration

Le stockage, la sauvegarde et la restauration DynamoDB sont tous connectés les uns aux autres. La sauvegarde est directement liée au stockage, et la restauration est directement liée à la taille de la sauvegarde. À mesure que la taille de la table augmente, les coûts de stockage, de sauvegarde et de restauration correspondants augmentent proportionnellement.

Taille et coût du stockage

Les coûts de stockage augmenteront au fil du temps en fonction du taux de croissance de vos données. Supposons, par exemple, que la taille moyenne d'un composant ou d'un produit dans la table de base GSIs soit de 11 Ko et que 10 millions de nouveaux produits soient ajoutés chaque mois dans votre table de base de données. Dans ce cas, la taille de votre table DynamoDB augmentera (11 Ko x 10 millions) /1024/1024 = 105 Go par mois. Le premier mois, la taille de stockage de votre table sera de 105 Go, le deuxième mois, elle sera de 105 + 105 = 210GBs, etc.

  • Le premier mois, le coût du stockage sera de 105 Go* par Go pour votre AWS région. 

  • Le deuxième mois, le coût du stockage sera de 210 Go* par Go pour votre région.

  • Pour le troisième mois, le coût du stockage sera de 315 Go* par Go pour votre région.

Pour connaître la taille et le coût du stockage pour les trois prochaines années, consultez la section Taille du stockage et prévisions.

Coût de sauvegarde

Les coûts de sauvegarde augmenteront au fil du temps en fonction du taux de croissance de vos données. Lorsque vous activez la sauvegarde continue avec point-in-time -recovery (PITR), les frais de sauvegarde continue sont basés sur le nombre moyen de Go de stockage par mois. Au cours d'un mois civil, la taille moyenne des sauvegardes serait identique à la taille de stockage de votre table, bien que la taille réelle puisse être légèrement différente. Au fur et à mesure que de nouveaux produits seront ajoutés chaque mois, la taille totale du stockage et la taille des sauvegardes augmenteront au fil du temps. Par exemple, le premier mois, la taille de sauvegarde moyenne de 105 Go pourrait passer à 210 Go le deuxième mois.

  • Le premier mois, le coût de sauvegarde sera de 105 Go par mois* prix de sauvegarde continue par Go pour votre AWS région. 

  • Pour le deuxième mois, le coût de sauvegarde sera de 210 Go par mois* prix de sauvegarde continue par Go pour votre région.

  • Pour le troisième mois, le coût de sauvegarde sera de 315 Go par mois* prix de sauvegarde continue par Go pour votre région.

  • et ainsi de suite

Le coût de sauvegarde est inclus dans le graphique de la section Taille du stockage et prévisions des coûts.

Coûts de recouvrement

Lorsque vous effectuez une sauvegarde continue avec PITR cette option activée, les frais d'opération de restauration sont basés sur la taille de la restauration. Chaque fois que vous effectuez une restauration, vous payez en fonction des gigaoctets de données restaurées. Si la taille de votre table est importante et que vous effectuez une restauration plusieurs fois par mois, cela sera coûteux.

Pour estimer le coût de restauration, cet exemple suppose que vous effectuez une PITR restauration une fois par mois à la fin du mois. L'exemple utilise la taille de sauvegarde moyenne mensuelle comme taille des données de restauration pour le mois en question. Pour le premier mois, la taille de sauvegarde moyenne est de 105 Go, et pour la restauration à la fin du mois, la taille des données de restauration serait de 105 Go. Pour le deuxième mois, ce serait 210GBs, et ainsi de suite.

Le coût de restauration augmentera au fil du temps en fonction du taux de croissance de vos données.

  • Pendant le premier mois, le coût de restauration sera de 105 Go* par Go pour votre AWS région. 

  • Pour le deuxième mois, le coût de restauration sera de 210 Go* le prix de restauration par Go pour votre région.

  • Pour le troisième mois, le coût de restauration sera de 315 Go* par Go pour votre région.

Pour plus d'informations, consultez l'onglet Stockage, sauvegarde et restauration du modèle Excel et le graphique de la section suivante.

Taille du stockage et prévisions des coûts

Dans le modèle, la taille de stockage facturable réelle est calculée en soustrayant le niveau gratuit de 25 Go par mois pour la classe de table Standard. Dans la feuille, vous trouverez un graphique de prévision ventilé en valeurs mensuelles.

L'exemple de graphique suivant prévoit la taille de stockage mensuelle en Go, le coût de stockage facturable, le coût de sauvegarde à la demande et le coût de restauration pour les 36 prochains mois civils. Tous les frais sont inclusUSD. Le graphique montre clairement que les coûts de stockage, de sauvegarde et de restauration augmentent proportionnellement à l'augmentation de la taille du stockage.

La taille du stockage dépasse les trois mille alors que les coûts sont inférieurs à mille.

Notez que les prix utilisés dans le graphique sont fournis à titre d'illustration uniquement. Pour créer des prix précis adaptés à votre cas d'utilisation, consultez la page de AWS tarification et utilisez ces prix dans le modèle Excel.

Pièces jointes

Pour accéder au contenu supplémentaire associé à ce document, décompressez le fichier suivant : attachment.zip