Voici comment configurer Neon Postgres pour l’utiliser avec la réplication dans ClickPipes. Assurez-vous d'être connecté à votre Console Neon pour cette configuration.
Création d’un utilisateur avec les permissions
Connectez-vous à votre instance Neon en tant qu’utilisateur administrateur et exécutez les commandes suivantes :
-
Créez un utilisateur dédié pour ClickPipes :
CREATE USER clickpipes_user PASSWORD 'some-password'; -
Accordez à l’utilisateur créé à l’étape précédente un accès en lecture seule au niveau du schéma. L’exemple suivant montre les permissions pour le schéma
public. Répétez ces commandes pour chaque schéma contenant des tables que vous souhaitez répliquer :GRANT USAGE ON SCHEMA "public" TO clickpipes_user; GRANT SELECT ON ALL TABLES IN SCHEMA "public" TO clickpipes_user; ALTER DEFAULT PRIVILEGES IN SCHEMA "public" GRANT SELECT ON TABLES TO clickpipes_user; -
Accordez à l’utilisateur les privilèges de réplication :
ALTER USER clickpipes_user WITH REPLICATION; -
Créez une publication avec les tables que vous souhaitez répliquer. Nous vous recommandons vivement de n’inclure dans la publication que les tables nécessaires afin d’éviter toute surcharge de performances.
-
Pour créer une publication pour des tables spécifiques :
CREATE PUBLICATION clickpipes FOR TABLE table_to_replicate, table_to_replicate2;-
Pour créer une publication pour toutes les tables d’un schéma donné :
CREATE PUBLICATION clickpipes FOR TABLES IN SCHEMA "public";
-
La publication clickpipes définit l’ensemble des tables dont les événements de modification seront transmis à ClickPipes. Nous déconseillons d’utiliser FOR ALL TABLES, sauf si vous avez l’intention de répliquer chaque table, car l’inclusion de tables inutiles augmente le trafic WAL de Postgres vers ClickPipes et réduit l’efficacité globale de la réplication.
Activer la réplication logique
Dans Neon, vous pouvez activer la réplication logique via l’UI. Cela est nécessaire pour que le CDC de ClickPipes puisse répliquer les données. Accédez à l’onglet Settings, puis à la section Logical Replication.

Cliquez sur Enable pour finaliser cette étape. Vous devriez voir le message de réussite ci-dessous une fois l’option activée.

Vérifions les paramètres ci-dessous dans votre instance Neon Postgres :
SHOW wal_level; -- should be logical
SHOW max_wal_senders; -- should be 10
SHOW max_replication_slots; -- should be 10Liste d’autorisation d’IP (pour le plan Neon Enterprise de Neon)
Si vous disposez du plan Neon Enterprise, vous pouvez ajouter les ClickPipes IPs à la liste d’autorisation afin d’autoriser la réplication depuis ClickPipes vers votre instance Neon Postgres. Pour cela, cliquez sur l’onglet Settings, puis accédez à la section IP Allow.

Copier les informations de connexion
Maintenant que l'utilisateur est créé, que la publication est prête et que la réplication est activée, nous pouvons copier les informations de connexion pour créer un nouveau ClickPipe. Rendez-vous dans le Dashboard et, dans la zone de texte où s'affiche la chaîne de connexion, passez l'affichage sur Paramètres uniquement. Nous aurons besoin de ces paramètres à l'étape suivante.

Et ensuite ?
Vous pouvez maintenant créer votre ClickPipe et commencer à ingérer des données de votre instance Postgres vers ClickHouse Cloud. Veillez à noter les information de connexion utilisés lors de la configuration de votre instance Postgres, car vous en aurez besoin lors de la création du ClickPipe.