À propos de Openflow Connector for PostgreSQL

Note

Le connecteur est soumis aux conditions d’utilisation du connecteur.

Cette rubrique décrit les concepts de base de Openflow Connector for PostgreSQL, son flux de travail et ses limites.

Openflow Connector for PostgreSQL connecte une instance de la base de données PostgreSQL à Snowflake et réplique les données des tables sélectionnées en temps quasi réel ou selon une planification. Le connecteur connecte également un journal de toutes les modifications de données, disponible avec l’état actuel des tables répliquées.

Utilisez ce connecteur si vous souhaitez effectuer les opérations suivantes :

  • CDC réplication des données de PostgreSQL avec Snowflake pour un reporting complet et centralisé

Workflow

  1. Un administrateur de la base de données configure les paramètres de réplication PostgreSQL, crée une publication et des identifiants pour le connecteur. En option, il délivre le certificat SSL.

  2. Un administrateur de compte Snowflake effectue les tâches suivantes :

    1. Crée un utilisateur de service pour le connecteur, un entrepôt pour le connecteur et une base de données de destination pour la réplication.

    2. Télécharge et importe le fichier de définition du connecteur depuis la documentation dans le canevas Snowflake Openflow.

    3. Spécifie les paramètres requis pour le modèle de flux.

    4. Gère le flux. Le connecteur effectue les tâches suivantes lorsqu’il est exécuté dans Openflow :

      1. Crée un schéma pour les tables du journal.

      2. Crée les schémas et les tables de destination correspondant aux tables sources configurées pour la réplication.

      3. Démarre la réplication en suivant le cycle de vie de la réplication de la table.

Le cycle de vie de la réplication de la table

  1. Introspection du schéma : le connecteur découvre les colonnes de la table source, leurs noms, leurs types, puis les valide par rapport aux limites de Snowflake et du connecteur. Les échecs de validation entraînent l’échec de cette préparation et le cycle s’achève. Une fois l’introspection du schéma correctement terminée, le connecteur crée une table de destination vide.

  2. Chargement d’un instantané : le connecteur copie toutes les données disponibles dans la table source dans la table de destination. L’échec de cette préparation met fin au cycle et plus aucune donnée n’est répliquée. Une fois l’opération réussie, l’ensemble des données de la table source est disponible dans la table de destination.

  3. Chargement incrémentiel : le connecteur suit en permanence les modifications apportées à la table source et les copie dans la table de destination. Cette opération se poursuit jusqu’à ce que la table soit retirée de la réplication. Une mise en échec à ce stade arrête définitivement la réplication de la table source, jusqu’à ce que le problème soit résolu.

Note

Les défaillances provisoires, comme les problèmes de connexion, n’interrompent pas la réplication d’une table, mais les défaillances permanentes, comme les mappages de types de données non pris en charge, empêchent la table concernée de continuer à se répliquer, tandis que les autres tables configurées restent inchangées. Une fois que vous avez corrigé le problème avec la table concernée, vous pouvez la supprimer puis l’ajouter à nouveau à la réplication.

Versions de PostgreSQL prises en charge

Les versions de PostgresSQL suivantes sont prises en charge.

Versions de PostgreSQL prises en charge

11

12

13

14

15

16

17

Standard

Oui

Oui

Oui

Oui

Oui

Oui

Oui

AWS RDS

Oui

Oui

Oui

Oui

Oui

Oui

Oui

Amazon Aurora

Oui

Oui

Oui

Oui

Oui

Oui

GCP Cloud SQL

Oui

Oui

Oui

Oui

Oui

Oui

Base de données Azure

Oui

Oui

Oui

Oui

Oui

Oui

Limitations

  • Le connecteur est compatible avec PostgreSQL version 11 ou ultérieure.

  • Le connecteur ne prend en charge que l’authentification par nom d’utilisateur et mot de passe avec PostgreSQL.

  • Le connecteur ne prend pas en charge les instances de réplica en lecture PostgreSQL.

  • Le connecteur ne réplique pas les tables contenant des données qui dépassent les limites de type de Snowflake.

  • Le connecteur ne réplique pas les tables avec les valeurs TOAST.

  • Le connecteur exige que chaque table répliquée ait une clé primaire et que l’identité de la réplique de la table soit la même que la clé primaire.

  • Le connecteur prend en charge les modifications du schéma de la table source, à l’exception de la modification des définitions des clés primaires, de la précision ou de l’échelle d’une colonne numérique.

  • Le connecteur ne prend pas en charge les environnements d’exécution Openflow multi-clusters.

Note

Les limites affectant certaines colonnes de la table peuvent être contournées en excluant ces colonnes spécifiques de la réplication.

Prochaines étapes

Paramétrez Openflow Connector for PostgreSQL