🗄️ Bases de données

dynamodb-guide

Modélisation et requêtes DynamoDB incluant single-table design, GSI, LSI, capacity modes et streams.

⚡ Installation & lancement en 1 commande

Copiez-collez dans votre terminal : le skill s'installe dans ~/.claude/skills et Claude Code se lance directement dessus.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.sh | sh -s -- dynamodb-guide --launch
Windows (PowerShell)
iex "& { $(iwr -useb https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.ps1) } dynamodb-guide -Launch"

🚀 Déjà installé ?

claude "/dynamodb-guide"

Ou tapez /dynamodb-guide dans une session Claude Code, ou décrivez simplement votre besoin — le skill se déclenche automatiquement via le skill-router.

🔑 Déclencheurs automatiques

Le skill s'active automatiquement quand votre demande contient :

DynamoDBNoSQL AWSsingle-table designGSI

📦 Installation manuelle

git clone https://github.com/khalilbenaz/claude-skills-collection.git cp -r claude-skills-collection/database-skills/dynamodb-guide ~/.claude/skills/

Source : database-skills/dynamodb-guide

📖 Manuel

DynamoDB Guide

Workflow

  1. Identifier les access patterns — Lister exhaustivement tous les patterns d'accès de l'application (queries, scans, gets). Documenter chaque pattern avec ses paramètres de filtrage, tri et projection. Prioriser par fréquence et criticité.
  2. Concevoir le single-table design — Modéliser toutes les entités dans une seule table en utilisant des clés génériques (PK, SK). Définir les préfixes d'entité (ex: USER#, ORDER#, PRODUCT#). Mapper chaque access pattern sur une combinaison PK/SK.
  3. Définir les index secondaires — Créer des GSI (Global Secondary Index) pour les access patterns qui ne correspondent pas à la clé primaire. Utiliser des LSI (Local Secondary Index) quand un tri alternatif est nécessaire sur la même partition. Limiter le nombre de GSI (max 20).
  4. Choisir le mode de capacité — Sélectionner entre On-Demand (trafic imprévisible, démarrage) et Provisioned (trafic stable, coût optimisé). Configurer l'auto-scaling avec des seuils de target utilization à 70% pour le mode provisionné.
  5. Implémenter les opérations — Utiliser Query plutôt que Scan systématiquement. Implémenter la pagination avec ExclusiveStartKey. Utiliser TransactWriteItems pour les écritures atomiques multi-items. Appliquer des condition expressions pour l'optimistic locking.
  6. Configurer DynamoDB Streams — Activer les streams pour le CDC (Change Data Capture). Connecter à Lambda pour les projections, la synchronisation vers Elasticsearch/OpenSearch ou l'invalidation de cache. Choisir le view type approprié (NEW_IMAGE, OLD_IMAGE, BOTH).
  7. Optimiser les coûts et performances — Compresser les attributs volumineux. Utiliser le DAX (DynamoDB Accelerator) pour les lectures intensives. Implémenter le TTL pour l'expiration automatique des données. Surveiller les throttled requests et les hot partitions.
  8. Tester et valider — Utiliser DynamoDB Local pour les tests unitaires. Valider chaque access pattern avec NoSQL Workbench. Simuler la charge avec des scripts de load testing pour vérifier la distribution des partitions.

Règles