Étape 5. Création du modèle de données DynamoDB - AWS Conseils prescriptifs

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.

Étape 5. Création du modèle de données DynamoDB

Objectif

  • Créez le modèle de données DynamoDB.

Processus

  • L'ingénieur de base de données identifie le nombre de tables qui seront nécessaires pour chaque cas d'utilisation. Nous recommandons de conserver le moins de tables possible dans une application DynamoDB.

  • Sur la base des modèles d'accès les plus courants, identifiez la clé primaire qui peut être de deux types : une clé primaire avec une clé de partition qui identifie les données, ou une clé primaire avec une clé de partition et une clé de tri. Une clé de tri est une clé secondaire permettant de regrouper et d'organiser les données afin de pouvoir les interroger efficacement au sein d'une partition. Vous pouvez utiliser des touches de tri pour définir des relations hiérarchiques dans vos données que vous pouvez interroger à n'importe quel niveau de la hiérarchie (voir le billet de blog).

    • Création de clés de partition

      • Définissez la clé de partition et évaluez sa distribution.

      • Identifiez le besoin de partitionnement des écritures pour répartir les charges de travail de manière uniforme.

    • Conception de clé de tri

      • Identifiez la clé de tri.

      • Identifiez le besoin d'une clé de tri composite.

      • Identifiez les besoins en matière de contrôle de version.

  • Sur la base des modèles d'accès, identifiez les index secondaires répondant aux exigences des requêtes.

    • Identifiez le besoin d'index secondaires locaux (LSIs). Il s'agit d'index dotés de la même clé de partition que la table de base, mais d'une clé de tri différente.

      • Pour les tables avec LSIs, il existe une limite de taille de 10 Go par valeur de clé de partition. Une table LSIs peut stocker un nombre illimité d'éléments, à condition que la taille totale d'une valeur de clé de partition ne dépasse pas 10 Go.

    • Identifiez le besoin d'index secondaires globaux (GSIs). Il s'agit d'index dotés d'une clé de partition et d'une clé de tri qui peuvent être différentes de celles de la table de base (voir le billet de blog).

    • Définissez les projections de l'indice. Pensez à projeter moins d'attributs pour réduire la taille des éléments écrits sur l'index. Au cours de cette étape, vous devez déterminer si vous souhaitez utiliser les éléments suivants :

  • L'ingénieur de base de données détermine si les données incluront des éléments volumineux. Dans ce cas, ils conçoivent la solution en utilisant la compression ou en stockant les données dans Amazon Simple Storage Service (Amazon S3).

  • L'ingénieur de base de données détermine si des données de séries chronologiques seront nécessaires. Dans ce cas, ils utilisent le modèle de conception des séries chronologiques pour modéliser les données.

  • L'ingénieur de base de données détermine si le modèle ER inclut many-to-many des relations. Dans ce cas, ils utilisent un modèle de conception de liste d'adjacence pour modéliser les données.

Outils et ressources

RACI

Utilisateur professionnel Analyste commercial Architecte de solutions Ingénieur base de données Développeur d'applications DevOps ingénieur

I

I

I

R/A

Outputs

  • Schéma de table DynamoDB qui répond à vos modèles d'accès et à vos exigences

exemple

La capture d'écran suivante montre NoSQL Workbench.

DynamoDB table schema