Bases de donnéesService régional
DynamoDB
Base de données NoSQL rapide, scalable et entièrement managée
Fonctionnement
- Stockage clé/valeur ou documents
- Optimisé pour les requêtes très performantes
- Consistance éventuelle par défaut mais consistance forte possible
- Facturation à la requête ou en fonction de la capacité provisionnée (plus cher)
Modélisation par « patterns d’accès » il faut penser à la façon dont l’application accédera aux données dès la conception
Modélisation des données
- Partition Key (PK) : détermine la répartition physique des données (obligatoire)
- Sort Key (SK) : permet d’ordonner et filtrer plusieurs items sous une même PK
L’accès se fait exclusivement via la clé primaire (PK ou PK+SK) ou via un index (GSI/LSI)
Transactions
- Gestion des transactions ACID sur une ou plusieurs tables
Limite de 25 items ou 4 Mo par transaction
Sécurité
Sauvegarde
- Backups complets sans impact sur les performances
- Restauration point-in-time (PITR)
- Incrémental sur les 35 derniers jours
- Pas activé par défaut
- Restauration possible à partir de 5 min dans le passé
Performances et Scaling
- Scalabilité automatique
- DAX (DynamoDB Accelerator)
- Cache en mémoire
- Compatible avec les appels API DynamoDB
- Temps de réponse en microsecondes
Streams et Réplication
DynamoDB Streams
- Enregistrements des changements ordonnés
- Stockés pendant 24h
- Intégration avec Lambda
Global Tables
- Réplication multi-région
- Basé sur les streams
- Latence < 1 seconde entre régions