Operații CRUD în DynamoDB și Query vs Scan
Utilizarea serviciilor de stocare date în AWS
Dunieski Otano
AWS Solutions Architect
Greșeala costisitoare
Dezvoltatorul folosește Scan pentru a găsi un utilizator
Citește un tabel întreg cu 1 milion de elemente
Factură: 500 USD pentru o singură căutare
Query ar fi costat 0,01 USD
Operații CRUD în DynamoDB
PutItem
: Creează sau înlocuiește un element
GetItem
: Citește un element după cheia primară
UpdateItem
: Modifică atribute specifice
DeleteItem
: Elimină un element
Query
: Recuperează elemente după cheia de partiție (eficient)
Scan
: Citește întregul tabel (costisitor)
Query vs Scan: diferența esențială
Query
: Necesită cheia de partiție, citește elemente specifice
Rapid, eficient, cost redus
Scan
: Citește întregul tabel, filtrează după
Lent, costisitor, de evitat pe cât posibil
Regulă: Dacă știi cheia, folosește Query. Altfel, regândește designul.
Prevenirea condițiilor de cursă cu expresii condiționale
Problemă: Doi utilizatori actualizează același element simultan
Soluție: Expresii condiționale
Exemplu: Actualizează doar dacă valoarea curentă corespunde celei așteptate
Expresii UpdateItem: modificarea atributelor
SET
: Setează valoarea unui atribut sau creează unul nou
ADD
: Incrementează/decrementează numere, adaugă în seturi
REMOVE
: Șterge atribute dintr-un element
DELETE
: Elimină elemente din seturi
Paginare cu Query și Scan
Problemă
: Seturile mari de rezultate depășesc limita de 1 MB
Soluție
: Paginare cu LastEvaluatedKey
Limit
: Controlează elementele per pagină
Continuă până când LastEvaluatedKey este null
Hai să exersăm!
Utilizarea serviciilor de stocare date în AWS
Preparing Video For Download...