Je souhaiterais accélérer les requêtes sur les attributs non clés de ma table. Comment créer, contrôler et optimiser la définition d'un index secondaire global pour une table dans Amazon DynamoDB ?

Un index secondaire global (GSI) bien conçu permet d'extraire les données liées à une requête ciblée à partir d'une table volumineuse en beaucoup moins de temps qu'il n'en faut pour analyser la table complète.

Pour créer un index secondaire global, procédez comme suit :

  1. Ouvrez la console DynamoDB.
  2. Dans le volet de navigation, sélectionnez Tables.
  3. Sélectionnez votre table dans la liste.
  4. Ouvrez l'onglet Indexes.
  5. Sélectionnez Create index.
  6. Saisissez une clé de partition utile et une clé de tri facultative pour l'index de clés de plage triées au niveau de l'attribut des clés primaires de plage.
  7. Allouez la capacité en écriture et en lecture pour l'index. Remarque : l'allocation d'un gros volume de capacité peut entraîner une facture élevée. Définissez précisément votre cas d'emploi et comprenez bien le modèle de tarification de DynamoDB avant de fournir une grande quantité de capacité en lecture et en écriture.
  8. Sélectionnez Create index.

La création de l'index secondaire global commence. Vous pouvez en surveiller l'avancement dans l'onglet Metrics  :

  1. Sélectionnez l'onglet Metrics.
  2. Sélectionnez View all CloudWatch metrics.
  3. Dans la console CloudWatch, sélectionnez DynamoDB.
  4. Dans la case Search Metrics, saisissez OnlineIndexPercentageProgress. Remarque : si la recherche renvoie une liste vide, patientez environ une minute pour que les métriques s'affichent.
  5. Sélectionnez le nom de index dont vous souhaitez voir la progression.

Si la création de l'index secondaire global prend trop de temps (ce qui arrive souvent lors de l'ajout d'index à une table volumineuse), procédez comme suit pour fournir davantage de capacité en écriture :

  1. Ouvrez la console DynamoDB.
  2. Dans le volet de navigation, cliquez sur Tables, puis sélectionnez la table dans la liste.
  3. Sélectionnez l'onglet Capacity.
  4. Augmentez la capacité de l'index en écriture, puis sélectionnez Save.

Après environ une minute, vérifiez la métrique OnlineIndexPercentageProgress dans l'onglet Metrics pour voir si la création de l'index secondaire global progresse de manière satisfaisante.

index secondaire global, gsi, index, table, DynamoDB, création de gsi trop longue, blocage de la mise à jour de l'index


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 22/07/2016