Opérations CRUD DynamoDB et Query vs Scan
Utiliser des magasins de données dans AWS
Dunieski Otano
AWS Solutions Architect
L'erreur coûteuse
La personne développeuse utilise Scan pour trouver un seul utilisateur
Lit toute la table de 1 million d'éléments
Facture : 500 $ pour une seule recherche
Query aurait coûté 0,01 $
Opérations CRUD dans DynamoDB
PutItem
: créer ou remplacer un élément
GetItem
: lire un élément par clé primaire
UpdateItem
: modifier des attributs précis
DeleteItem
: supprimer un élément
Query
: récupérer par clé de partition (efficace)
Scan
: lire toute la table (coûteux)
Query vs Scan : la différence clé
Query
: exige la clé de partition, lit des éléments précis
Rapide, efficace, peu coûteux
Scan
: lit toute la table, filtre après
Lent, coûteux, à éviter si possible
Règle : si vous connaissez la clé, utilisez Query. Sinon, repensez la conception.
Prévenir les conditions de concurrence avec des expressions conditionnelles
Problème : deux personnes mettent à jour le même élément en même temps
Solution : expressions conditionnelles
Exemple : mettre à jour seulement si la valeur actuelle correspond à l'attendue
Expressions UpdateItem : modifier des attributs
SET
: définir la valeur d'un attribut ou en créer un nouveau
ADD
: incrémenter/décrémenter des nombres, ajouter à des ensembles
REMOVE
: supprimer des attributs d'un élément
DELETE
: retirer des éléments d'ensembles
Pagination avec Query et Scan
Problème
: les ensembles de résultats dépassent la limite de 1 Mo
Solution
: pagination avec LastEvaluatedKey
Limit
: contrôler les éléments par page
Continuer jusqu'à ce que LastEvaluatedKey soit null
Passons à la pratique !
Utiliser des magasins de données dans AWS
Preparing Video For Download...