FAQ DynamoDB — Réponses aux questions fréquentes
Les questions que les développeurs posent le plus sur DynamoDB — chacune avec une réponse claire et honnête, et la suite à explorer.
Caractéristiques et capacités de DynamoDB
DynamoDB est-il un magasin clé-valeur ?
Oui, et un magasin de documents à la fois. Chaque élément est adressé par sa clé primaire, et les attributs s'imbriquent en maps et listes sur 32 niveaux.
DynamoDB est-il une base relationnelle ?
Non. DynamoDB est une base NoSQL clé-valeur et document, sans schéma fixe, sans clés étrangères ni jointures. Tu dénormalises autour des modes d'accès.
DynamoDB est-il conforme ACID ?
Oui — DynamoDB gère les transactions ACID via TransactWriteItems et TransactGetItems : jusqu'à 100 actions en une opération tout ou rien par Région.
DynamoDB est-il chiffré ?
Oui — toutes les données DynamoDB sont chiffrées au repos par des clés AWS KMS, sans désactivation possible. En transit, elles sont protégées par HTTPS/TLS.
DynamoDB est-il en cohérence à terme ?
Par défaut oui — les lectures DynamoDB sont en cohérence à terme. Les lectures fortement cohérentes sont possibles sur tables et LSI, jamais sur les GSI.
DynamoDB est-il gratuit ?
En partie — DynamoDB offre 25 Go de stockage, 25 unités de capacité d'écriture et 25 de lecture par mois à vie. Au-delà, facturation à la requête et au Go.
DynamoDB est-il en mémoire ?
Non — DynamoDB persiste chaque écriture sur un stockage durable réparti sur trois zones de disponibilité. DAX y ajoute un cache mémoire à la microseconde.
DynamoDB est-il une base de données NoSQL ?
Oui. DynamoDB est un magasin NoSQL clé-valeur et document managé : éléments sans schema, montée en charge horizontale, et son PartiQL rejette JOIN.
DynamoDB est-il open source ?
Non — DynamoDB est un service AWS propriétaire et managé. DynamoDB Local est un émulateur gratuit ; le moteur de production n'est pas auto-hébergeable.
DynamoDB est-il sans schéma ?
Oui — DynamoDB est sans schéma : seule la clé primaire est définie à la création de la table, les autres attributs varient librement d'un élément à l'autre.
DynamoDB est-il serverless ?
Oui — DynamoDB est une base NoSQL serverless et entièrement managée : aucun serveur à provisionner ni à patcher, capacité auto et paiement à l'usage.
Ce que DynamoDB peut stocker
DynamoDB peut-il avoir des valeurs nulles ?
Oui — DynamoDB a un type NULL dédié, et accepte les chaînes et les listes/maps vides pour les attributs hors clé. Les ensembles vides, eux, sont rejetés.
DynamoDB peut-il stocker des tableaux ?
Oui. DynamoDB stocke les tableaux en type Liste (L), ordonné, de types mixtes, imbriqué sur 32 niveaux. Environ 11 070 UUID par élément de 400 Ko.
DynamoDB peut-il stocker des blobs ?
Oui, dans certaines limites — DynamoDB stocke les objets binaires volumineux en attributs Binaires (base64) sous 400 Ko. Au-delà, AWS recommande Amazon S3.
DynamoDB peut-il stocker des images ?
Oui, mais petites — DynamoDB stocke les images en attributs binaires base64 sous la limite de 400 Ko par élément. Au-delà, AWS recommande Amazon S3.
DynamoDB peut-il stocker du JSON ?
Oui — DynamoDB stocke du JSON via ses types document : map (M) pour les objets, liste (L) pour les tableaux, imbriqués sur 32 niveaux, sous 400 Ko.
Combien de données DynamoDB peut-il stocker ?
Une table DynamoDB n'a aucune limite de taille et monte en charge horizontalement. Vraies limites : 400 Ko par élément et 10 Go par collection avec un LSI.
Taille maximale d'un élément DynamoDB ?
400 Ko, soit exactement 409 600 octets, noms d'attribut compris. La limite de taille d'élément DynamoDB n'est pas relevable : au-delà, direction S3.
Intégrations et accès DynamoDB
DynamoDB peut-il exporter vers S3 ?
Oui — l'export intégré vers S3 écrit des instantanés de table complets ou incrémentaux en DynamoDB JSON ou Amazon Ion. Exige PITR, zéro capacité de lecture.
Power BI peut-il se connecter à DynamoDB ?
Power BI n'a pas de connecteur DynamoDB natif. Passe par l'ODBC d'Amazon Athena ou un pilote comme CData, et chiffre ce que chaque actualisation scanne.
Peut-on utiliser DynamoDB en dehors d'AWS ?
Oui — DynamoDB est joignable de partout en HTTPS. Toute app avec des identifiants AWS appelle l'endpoint régional : portable, serveur ou autre cloud.
DynamoDB a-t-il des triggers ?
Oui. Les triggers DynamoDB combinent Streams et Lambda, qui lit le stream quatre fois par seconde et s'exécute à chaque changement. Pas de CREATE TRIGGER.
DynamoDB prend-il en charge GraphQL ?
Oui, via AWS AppSync — service GraphQL managé qui utilise des tables DynamoDB comme sources de données, ses resolvers traduisant GraphQL en appels DynamoDB.
Opérations et requêtes DynamoDB
DynamoDB gère-t-il l'Auto Scaling ?
Oui. L'auto-scaling DynamoDB vise 20 à 90 % d'utilisation cible sur la capacité provisionnée, mais sous 28,9 % d'usage moyen le mode à la demande coûte moins.
Peut-on exécuter DynamoDB en local ?
Oui — DynamoDB Local est une version gratuite et téléchargeable qui tourne via Docker, une archive Java ou Maven, et expose la même API DynamoDB hors ligne.
DynamoDB a-t-il des sauvegardes ?
Oui — des sauvegardes à la demande pour le long terme, et des sauvegardes continues (PITR) restaurables à la seconde près sur les 35 derniers jours.
DynamoDB gère-t-il la recherche plein texte ?
Non, pas nativement — DynamoDB n'a ni pertinence, ni racinisation, ni correspondance floue. L'intégration zero-ETL avec OpenSearch est la réponse d'AWS.
DynamoDB gère-t-il les requêtes géospatiales ?
Pas nativement — DynamoDB n'a ni type géo ni opérateur de distance. Les recherches géospatiales se modélisent en clés geohash/cellules S2, par plage.
DynamoDB prend-il en charge les jointures ?
Non. DynamoDB n'a pas de JOIN et PartiQL refuse un SELECT à deux tables : tu dénormalises. Le SQL Workbench DynoTable fait de vraies jointures côté client.
DynamoDB prend-il en charge SQL ?
En partie. PartiQL couvre SELECT, INSERT, UPDATE et DELETE, mais rejette JOIN, GROUP BY et COUNT. Le SQL Workbench de DynoTable les exécute sur tes tables.
DynamoDB prend-il en charge les transactions ?
Oui. Les transactions DynamoDB regroupent jusqu'à 100 actions sur plusieurs tables en une opération tout ou rien, au double du coût d'une écriture.
DynamoDB prend-il en charge le TTL ?
Oui — DynamoDB gère le Time to Live : mets une expiration en secondes Unix epoch dans un attribut Number, les éléments expirés sont supprimés sans frais.
DynamoDB est-il rapide ?
Rapide — DynamoDB tient quelques millisecondes de latence à toute échelle. DAX, cache en mémoire, met les lectures en cohérence à terme à la microseconde.
Combien de tables peux-tu avoir dans DynamoDB ?
2 500 tables DynamoDB par Région par défaut, 10 000 sur demande. Aucune limite de taille, mais une table provisionnée coûte 0,57 $ par mois au repos.
Comment compter les éléments dans DynamoDB ?
Utilise Select: COUNT sur un Query ou un Scan, puis pagine avec LastEvaluatedKey en sommant Count. Compter coûte autant en lecture que renvoyer les éléments.
Architecture et fonctionnement interne de DynamoDB
DynamoDB peut-il servir de cache ?
Oui — lectures par clé rapides et TTL font de DynamoDB un cache durable. Pour des microsecondes, ajoute DAX : cache en mémoire write-through managé.
DynamoDB gère-t-il les clés étrangères ?
Non. DynamoDB n'a ni clés étrangères, ni intégrité référentielle, ni suppression en cascade. Supprime un parent, les enfants restent. À toi de modéliser.
DynamoDB gère-t-il les index secondaires ?
Oui. DynamoDB propose des index secondaires globaux (clés propres, cohérence à terme, 20 par table par défaut) et locaux (fortement cohérents).
DynamoDB est-il multi-Région ?
Une table DynamoDB standard est mono-Région. Les tables globales répliquent en multi-actif, jusqu'à 99,999 % de disponibilité, stockage facturé partout.
Quand ne faut-il pas utiliser DynamoDB ?
Évite DynamoDB pour les charges analytiques, les modèles d'accès inconnus, les requêtes ad hoc intensives et les schémas relationnels à jointures.
Plus de ressources DynamoDB
Apprendre DynamoDB
Un cursus DynamoDB structuré, des fondamentaux jusqu’aux rouages internes.
Erreurs DynamoDB courantes
Chaque erreur DynamoDB courante avec sa cause et le correctif exact.
Exemples de code DynamoDB
Des extraits à copier-coller pour chaque opération — SDK v3, boto3 et l’AWS CLI.
Blog d’ingénierie
Comment DynoTable est construit — les histoires derrière l’agent IA et le serveur MCP.
Outils DynamoDB
Générateur d’expressions, calculateurs de tarifs et de capacité — directement dans votre navigateur.
Travaille avec DynamoDB sans la Console
Un client de bureau rapide pour DynamoDB qui exécute le vrai SQL que DynamoDB ne peut pas — JOINs, GROUP BY, agrégations — avec édition visuelle et un agent IA sur tes propres clés Bedrock.
Essai gratuit de 30 jours, sans carte bancaire — ensuite la formule Gratuit, sans limite de durée.