Comment choisir la clé primaire appropriée pour une table DynamoDB ?

Date de la dernière mise à jour : 22/05/2020

Que dois-je prendre en compte lorsque je choisis une clé primaire pour une table Amazon DynamoDB ?

Brève description

Il existe deux types de clés primaires dans DynamoDB :

  • Clé de partition : il s'agit d'une clé primaire simple unique à chaque élément de la table.
  • Clé primaire composite : il s'agit d'une combinaison de clé de partition et de clé de tri, qui est unique à chaque élément de la table. Par exemple, deux éléments peuvent avoir la même clé de partition, mais ils auront toujours une clé de tri différente.

Quel que soit le type de clé primaire que vous choisissez, la clé primaire doit toujours être unique pour chaque élément de la table. Si vous ne choisissez pas une clé primaire appropriée, la distribution des données et les clés de raccourci sont inégales, ce qui peut entraîner une limitation (ProvisionedThroughputExceededException).

Solution

Utilisez une ou plusieurs des stratégies suivantes lorsque vous choisissez une clé primaire :

  • Utiliser un attribut de cardinalité élevée : la clé de partition doit être un attribut ayant des valeurs uniques pour chaque élément, telles que l'ID utilisateur, l'adresse e-mail ou le numéro de téléphone.
  • Utiliser des attributs composites : combinez plusieurs attributs pour former une clé primaire. Par exemple, vous pouvez avoir une table « commandes » qui associe l'ID client, l'ID produit et le code pays de la clé de partition, puis utilise la date de commande comme clé de tri. Cela augmente la probabilité que chaque élément possède une clé primaire unique.
  • Ajouter des nombres aléatoires à votre clé de partition : pour les cas d'utilisation impliquant des écritures intensives, pensez à ajouter des nombres aléatoires d'une plage prédéterminée à votre clé de partition. Cela augmente le caractère aléatoire de la clé de partition. Pour plus d'informations, consultez Utilisation du partitionnement d'écriture pour répartir uniformément les charges de travail.

Pour obtenir des informations détaillées sur chacune de ces stratégies, consultez Choisir la clé de partition DynamoDB adéquate.


Cet article vous a-t-il été utile ?

Cette page peut-elle être améliorée ?


Vous avez besoin d'aide ?