Lorsque vous examinez la création d'une table initiale pour la base de données de votre application, vous devez également prendre en compte plusieurs points. Comment initialiser les tables de base de données et exécuter les données de départ.
- Comment l'exécuter dans différentes bases de données (environnements multiples pour Test, Dev & etc.).
- Comment faire la gestion des changements de scripts/configuration et l'exécution des changements.
- Comment annuler une modification pour l'annulation.
- Comment faire des DevOps (Intégrer avec CI/CD).
Compte tenu de ces faits, il est important de garder ces changements version contrôlée avec l'outillage nécessaire et les cadres pour les migrations, semeuses, Rollback & etc. seraient des avantages.
Vous pouvez déclencher ceci après la création de CloudFormation Stack, en utilisant le sujet SNS, pour déclencher les outils CI/CD & Pipeline (par exemple en utilisant Jenkins) pour exécuter les créations de table initiales et également effectuer les modifications et l'ensemencement suivants dans les tables. un moyen autonome.
Si vous utilisez Serverless Framework avec Lambda pour votre application, vous pouvez utiliser le plugin Serverless-Dynamodb-Local pour vous aider avec Seeding, Migrations & etc.(Nous l'avons également développé pour résoudre ce problème)
Serverless. Aurais-je invoqué manuellement cette fonction lambda pour créer les tables dans la base de données? –
Oui, vous pouvez le faire. Assurez-vous que vous ne pouvez pas dépasser 5 minutes à courir. Si elle dépasse, vous pouvez passer des paramètres externes afin que vous puissiez savoir quoi faire sur chaque soleil. – Kannaiyan