Passer au contenu principal
Managed Postgres repose sur PostgreSQL standard et s’intègre à l’écosystème PostgreSQL existant. Pour la plupart des tâches de développement, vous pouvez développer et tester sur une instance PostgreSQL locale exécutée dans Docker plutôt que sur un déploiement cloud. Cette approche offre un cycle de retour rapide, simplifie la prise en main, réduit les dépendances envers une infrastructure partagée et vous permet d’expérimenter en toute sécurité sans affecter les systèmes de production. L’objectif n’est pas de reproduire exactement l’environnement de production. Créez plutôt un environnement local reproductible qui :
  • Utilise la même version majeure de PostgreSQL que celle de la production.
  • Applique les mêmes définitions de schéma que la production.
  • Contient des données de développement représentatives.
  • Prend en charge les flux de travail habituels de développement et de test des applications.
Comme Managed Postgres est basé sur PostgreSQL standard, les frameworks de migration, les outils de gestion de schéma et les approches d’initialisation des données existants fonctionnent sans modification.

Exemple de flux de travail de développement

Un flux de travail de développement local type se présente ainsi : Managed Postgres s’intègre aux flux de travail de développement PostgreSQL existants. En développant sur une instance PostgreSQL locale, les équipes peuvent itérer rapidement, maintenir des environnements reproductibles et s’assurer que les applications se comportent de manière cohérente une fois déployées sur Managed Postgres.

Exécuter PostgreSQL en local avec Docker

Le moyen le plus simple de créer un environnement de développement local consiste à exécuter PostgreSQL dans Docker. Choisissez une version de PostgreSQL correspondant à votre déploiement Managed Postgres :
docker-compose.yml
Démarrez PostgreSQL :
Vérifiez la connectivité :
À ce stade, PostgreSQL fonctionne en local, mais ne contient pas encore le schéma de l’application ni de données de développement.

Appliquer le schéma de l’application

Il n’existe pas de méthode unique imposée pour créer le schéma dans un environnement local. La plupart des organisations disposent déjà d’un flux de travail de gestion des schémas bien établi, qui peut être réutilisé tel quel.

Migrations d’application

De nombreuses équipes utilisent le même framework de migration dans les environnements de staging et de production — des outils comme Flyway, Liquibase, les migrations Rails, les migrations Django, les migrations Prisma ou Alembic. Appliquer les migrations localement permet de tester en continu l’évolution du schéma dans le cadre du développement habituel :

Dumps PostgreSQL du schéma uniquement

Une exportation PostgreSQL limitée au schéma permet de reproduire la structure d’une base de données existante. C’est utile pour l’onboarding, l’étude du comportement du schéma, la validation de la compatibilité ou l’initialisation rapide d’environnements de développement. Exportez le schéma :
Restaurer localement :

Définitions SQL enregistrées dans le contrôle de version

Certaines équipes conservent les définitions de schéma directement dans le contrôle de version, sous forme de fichiers SQL. Celles-ci peuvent être appliquées directement à une instance PostgreSQL locale lors de la configuration de l’environnement. Quelle que soit l’approche retenue, l’important est que la création du schéma soit automatisée, reproductible et basée sur des définitions versionnées.

Alimenter la base de données de développement avec des données représentatives

Une fois le schéma en place, alimentez la base de données avec des données de développement représentatives. Pour la plupart des flux de travail de développement, des jeux de données synthétiques générés à l’aide de scripts suffisent. Ils sont faciles à recréer, peuvent être distribués sans risque et évitent les contraintes de conformité et de sécurité associées aux données de production. Une approche courante pour les applications SaaS consiste à générer des données pour un petit nombre de tenants d’exemple et à créer des relations réalistes entre utilisateurs, produits, commandes et autres entités métier.

Exemple de schéma multi-tenant

Le schéma suivant représente une application SaaS multi-tenant simplifiée :

Générer des données d’exemple

Installez les dépendances :
Créez un fichier nommé seed.py :
seed.py
Exécutez le script :
Le jeu de données obtenu contient : Ce jeu de données est suffisamment volumineux pour couvrir les workflows applicatifs courants, la logique d’isolation des tenants, les requêtes de reporting et les contrôles d’intégrité relationnelle, tout en restant léger pour le développement et les tests en local.

Environnement de développement PostgreSQL + ClickHouse

Les exemples ci-dessus portent sur le développement local avec PostgreSQL. Si vous souhaitez tester localement l’architecture complète PostgreSQL-to-ClickHouse, vous pouvez exécuter la stack open source PostgreSQL + ClickHouse. Cette stack associe PostgreSQL pour les workloads transactionnels, ClickHouse pour l’analytics, et PeerDB pour la capture native des changements de données (CDC). Elle vous permet de développer avec PostgreSQL tout en répliquant en continu les données vers ClickHouse, ce qui permet de tester directement depuis votre ordinateur portable l’analytics opérationnelle, les workloads de reporting et les pipelines de données en temps réel. La stack peut être lancée avec une seule commande et inclut tous les services requis préconfigurés :
La stack comprend :
  • PostgreSQL
  • ClickHouse
  • PeerDB pour la CDC de PostgreSQL
  • Des services auxiliaires et des applications d’exemple
Pour les instructions de configuration, les détails d’architecture et un guide pas à pas de la stack complète, consultez : C’est une étape utile une fois que votre application s’exécute localement avec PostgreSQL et que vous souhaitez valider la synchronisation PostgreSQL-to-ClickHouse, l’analyse en temps réel et le comportement de l’application de bout en bout.
Dernière modification le 25 juin 2026