Aller au contenu principal

PostgreSQL

Statut

Document de cadrage data — version initiale.

Rôle

PostgreSQL est la base relationnelle principale de DMV.

Il doit porter les données structurées de l'écosystème : communes, acteurs, utilisateurs, publications, contributeurs, groupes, abonnements, boosts, statistiques, PlayLoop, AssoSuite, Mairie, chat et documents.

État actuel visible

Les migrations Laravel créent notamment :

  • profils et rôles ;
  • communes et informations communales ;
  • acteurs, tags, documents, revendications ;
  • publications et signalements ;
  • contributeurs, favoris et groupes ;
  • plans, abonnements, boosts et usages ;
  • feature flags et paramètres ;
  • PlayLoop ;
  • AssoSuite ;
  • chat ;
  • alertes et services mairie ;
  • cache, jobs et personal access tokens.

Des migrations Supabase historiques existent aussi et doivent être prises en compte dans la gouvernance data.

Principes PostgreSQL

  • Modéliser explicitement les relations fortes.
  • Préférer les contraintes base quand elles protègent une règle durable.
  • Indexer les colonnes utilisées pour recherche, filtres et jointures.
  • Garder les données sensibles identifiables et contrôlées.
  • Éviter les duplications non justifiées.
  • Prévoir l'évolution sans casser les applications connectées.

Accès aux données

La cible est :

  • mutations métier via API Laravel ;
  • lectures publiques contrôlées ;
  • accès administrateurs via services backend ;
  • RPC seulement pour des requêtes contrôlées et justifiées ;
  • aucun accès direct IA.

Performance

Les domaines à surveiller :

  • listes d'acteurs par commune ;
  • mur de la ville ;
  • publications par acteur ou commune ;
  • favoris ;
  • statistiques ;
  • recherches ;
  • données PlayLoop ;
  • modération.

Points à clarifier

  • Configuration PostgreSQL réelle par environnement.
  • Politique d'indexation.
  • Usage futur de vues matérialisées.
  • Gouvernance des accès Supabase historiques.
  • Stratégie de migration vers une source canonique.