Création d'une table globale - 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.

Création d'une table globale

Important

Cette documentation concerne la version 2017.11.29 (ancienne) des tables globales, qui doit être évitée pour les nouvelles tables globales. Les clients doivent utiliser la version 2019.11.21 (actuelle) de Global Tables dans la mesure du possible, car elle offre une plus grande flexibilité, une efficacité accrue et consomme moins de capacité d'écriture que la version 2017.11.29 (ancienne version).

Pour déterminer quelle version vous utilisez, consultez Déterminer quelle version des tables globales vous utilisez. Pour mettre à jour les tables globales de la version 2017.11.29 (ancienne) vers la version 2019.11.21 (actuelle), consultez Mise à niveau des tables globales.

Cette section explique comment créer une table globale à l'aide de la console Amazon DynamoDB ou de l'AWS Command Line Interface (AWS CLI).

Création d'une table globale (console)

Suivez ces étapes pour créer une table globale à l'aide de la console. L'exemple suivant crée une table globale avec des tables de réplica aux États-Unis et en Europe.

  1. Ouvrez la console DynamoDB à l'adresse https://console.aws.amazon.com/dynamodb/home. Pour cet exemple, choisissez la région us-east-2 (USA Est (Ohio)).

  2. Dans le volet de navigation sur le côté gauche de la console, choisissez Tables.

  3. Choisissez Create table (Créer une table).

    Sous Table name (Nom de la table), saisissez Music.

    Pour Primary key (Clé primaire) entrez Artist. Choisissez Add sort key (Ajouter une clé de tri), puis entrez SongTitle. (Artist et SongTitle doivent tous deux être des chaînes.)

    Pour créer la table, choisissez Create. La table sert de première table de réplica dans une nouvelle table globale. Il s'agit du prototype pour d'autres tables de réplica que vous ajouterez ultérieurement.

  4. Choisissez l'onglet Tables globales, puis choisissez Créer un réplica version 2017.11.29 (ancienne).

    Capture d'écran de la console montrant le bouton Créer un réplica version 2017.11.29 (ancienne).
  5. De la liste déroulante Régions de réplication disponibles, choisissez USA Ouest (Oregon).

    La console vérifie qu'il n'existe pas de table du même nom dans la région sélectionnée. (Si une table du même nom existe, vous devez la supprimer avant de pouvoir créer une nouvelle table de réplicas dans cette région.)

  6. Choisissez Créer un réplica. Cela a pour effet de démarrer le processus de création de table dans la région USA Ouest (Oregon).

    L'onglet Table globale pour la table sélectionnée (et pour toutes les autres tables de réplica) indique que la table a été répliquée dans plusieurs régions.

  7. Vous allez maintenant ajouter une autre région, de sorte que votre table globale soit répliquée et synchronisée à travers les États-Unis et l'Europe. Pour ce faire, répétez l'étape 5, mais cette fois en spécifiant Europe (Francfort) au lieu de USA Ouest (Oregon).

  8. Vous devez toujours utiliser AWS Management Console dans la région USA Est (Ohio). Sélectionnez Eléments dans le menu de navigation de gauche, sélectionnez le table Musique, puis choisissez Créer un élément.

    1. Pour Artist (Artiste), saisissez item_1.

    2. Pour SongTitle, saisissez Song Value 1.

    3. Pour écrire l'élément, choisissez Créer un élément.

  9. Après quelques instants, l'élément est répliqué dans les trois régions de votre table globale. Pour vérifier cela, sur la console, dans le sélecteur de région situé en haut à droite, choisissez Europe (Francfort). La table Music dans la région Europe (Francfort) doit contenir le nouvel élément.

  10. Répétez l'étape 9 et choisissez USA Ouest (Oregon) pour vérifier la réplication dans cette région.

Création d'une table globale (AWS CLI)

Suivez ces étapes pour créer une table globale Music avec AWS CLI. L'exemple suivant crée une table globale avec des tables de réplica aux États-Unis et en Europe.

  1. Créez une table (Music) dans la région USA Est (Ohio), avec DynamoDB Streams activé (NEW_AND_OLD_IMAGES).

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region us-east-2
  2. Créez une table Music identique dans la région USA Est (Virginie du Nord).

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region us-east-1
  3. Créez une table globale (Music) composée de tables de réplique dans les régions us-east-2 et us-east-1.

    aws dynamodb create-global-table \ --global-table-name Music \ --replication-group RegionName=us-east-2 RegionName=us-east-1 \ --region us-east-2
    Note

    Le nom de la table globale (Music) doit correspondre au nom de chacune des tables de réplique (Music). Pour plus d’informations, consultez Bonnes pratiques et exigences pour la gestion des tables globales.

  4. Créez une autre table en Europe (Irlande), avec les mêmes paramètres que ceux que vous avez créés aux étape 1 et 2.

    aws dynamodb create-table \ --table-name Music \ --attribute-definitions \ AttributeName=Artist,AttributeType=S \ AttributeName=SongTitle,AttributeType=S \ --key-schema \ AttributeName=Artist,KeyType=HASH \ AttributeName=SongTitle,KeyType=RANGE \ --provisioned-throughput \ ReadCapacityUnits=10,WriteCapacityUnits=5 \ --stream-specification StreamEnabled=true,StreamViewType=NEW_AND_OLD_IMAGES \ --region eu-west-1

    Une fois cette étape accomplie, ajoutez la nouvelle table à la table globale Music.

    aws dynamodb update-global-table \ --global-table-name Music \ --replica-updates 'Create={RegionName=eu-west-1}' \ --region us-east-2
  5. Pour vérifier que la réplication fonctionne, ajoutez un élément à la table Music dans la région USA Est (Ohio).

    aws dynamodb put-item \ --table-name Music \ --item '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region us-east-2
  6. Patientez quelques secondes, puis vérifiez que l'élément a été correctement répliqué dans les régions USA Est (Virginie du Nord) et Europe (Irlande).

    aws dynamodb get-item \ --table-name Music \ --key '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region us-east-1
    aws dynamodb get-item \ --table-name Music \ --key '{"Artist": {"S":"item_1"},"SongTitle": {"S":"Song Value 1"}}' \ --region eu-west-1