Introduction à Amazon DynamoDB

Utiliser les magasins de données dans AWS

Dunieski Otano

AWS Solutions Architect

Le problème de la partition chaude

  • Imaginez un restaurant : une caisse déborde, trois sont vides
  • C'est ce qui arrive avec une mauvaise clé de partition
  • Partition chaude = une partition reçoit trop de trafic, les autres restent inactives
  • Solution : Clés de partition à forte cardinalité : attributs très variés pour répartir uniformément

partition

Utiliser les magasins de données dans AWS

Qu'est-ce qu'une bonne clé de partition ?

  • Forte cardinalité : Beaucoup de valeurs uniques
    • userId, orderId, sessionId - Oui
    • country, status, category - Non
  • Répartition homogène : Accès équilibrés
  • Prévisible : Connu au moment de la requête

cardinalité

Utiliser les magasins de données dans AWS

Structure d'une table DynamoDB

  • Clé de partition (obligatoire) : Détermine la répartition des données
  • Clé de tri (optionnelle) : Active les requêtes par plage (ex. userId + orderDate)
  • Attributs : Autres champs de données
  • Clé primaire = Clé de partition OU Clé de partition + Clé de tri

table

Utiliser les magasins de données dans AWS

Créer votre première table

  • Console AWS : Configuration rapide pour tests
  • boto3 (Python) : Création de table par code
  • Choix clés : Clé de partition, clé de tri, mode de facturation

première

Utiliser les magasins de données dans AWS

Clés composites et requêtes sur clé de tri

  • Clé composite : Clé de partition + clé de tri
  • Requêtes par plage : Intervalles de dates ou de valeurs numériques
  • Opérateurs : =, <, >, <=, >=, BETWEEN, begins_with
  • Exemple : Obtenir les commandes d'un utilisateur sur 30 jours > 100 $

code

Utiliser les magasins de données dans AWS

Modes de capacité : à la demande vs provisionné

  • À la demande : Paiement par requête, auto-scalable
    • Idéal pour : Trafic imprévisible, nouvelles applis
  • Provisionné : Définir RCU/WCU, coût moindre à l'échelle
    • Idéal pour : Trafic prévisible, optimisation des coûts
  • Changement de mode possible une fois par 24 h

mode

Utiliser les magasins de données dans AWS

Passons à la pratique !

Utiliser les magasins de données dans AWS

Preparing Video For Download...