ADR-0012 : Utiliser PostgreSQL pour le service commandes
Statut : Statut
Date : 12 mars 2027
Décideurs : Responsable de l'équipe plateforme, responsable de l'équipe commandes, ingénieur sécurité
Contexte
Le service commandes stocke 20 millions de lignes et a besoin de transactions entre tables. La base de données actuelle ne prend pas en charge les transactions et l'équipe n'a aucune expérience de son exploitation.
Ce qui compte le plus
Cohérence des données
Expérience de l'équipe
Coût d'exploitation
Capacité à multiplier par 5 le volume en deux ans
Options étudiées
1. PostgreSQL géré. Transactions robustes, l'équipe le connaît, coût plus élevé.
2. Une base de données documentaire. Mise en route rapide, jointures et transactions plus limitées.
3. Rester avec le stockage actuel. Pas de migration, mais le problème reste entier.
Décision
Nous utiliserons PostgreSQL géré pour le service commandes.
Pourquoi
Il répond au besoin de cohérence, l'équipe peut l'exploiter et le coût reste acceptable dans le budget de la plateforme.
Conséquences
Positif : un code plus simple et des commandes plus sûres. Négatif : une migration de trois mois et un coût d'hébergement annuel. Nous devons planifier le transfert des données et un retour arrière.
Quand revoir la décision
Si le volume dépasse 100 millions de lignes ou si les coûts d'hébergement doublent.
Liens
Remplace ADR-0004. Décision liée : ADR-0009.