À propos de Openflow Connector for SQL Server¶
Note
Le connecteur est soumis aux conditions d’utilisation du connecteur.
Cette rubrique décrit les concepts de base de Openflow Connector for SQL Server, son flux de travail et ses limites.
Le site Openflow Connector for SQL Server connecte une instance de base de données du serveur SQL à Snowflake et réplique les données des tables sélectionnées en temps quasi réel ou selon une planification spécifique.
Utilisez ce connecteur si vous souhaitez effectuer les opérations suivantes :
CDC réplication des données du serveur Microsoft SQL avec Snowflake pour un reporting complet et centralisé
Workflow¶
L’administrateur de la base de données du serveur SQL effectue les tâches suivantes :
Configure les paramètres de réplication du serveur SQL et active le suivi des modifications sur la base de données et les tables.
Crée des identifiants de connexion pour le connecteur.
(Facultatif) Fournit le certificat SSL.
Un administrateur de compte Snowflake effectue les tâches suivantes :
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.
Télécharge et importe le fichier de définition du connecteur dans le canevas Snowflake Openflow.
Spécifie les paramètres requis pour la définition du flux du connecteur.
Gère le flux. Le connecteur effectue les opérations suivantes lorsqu’il est exécuté dans Openflow :
Crée un schéma pour les tables du journal.
Crée les schémas et les tables de destination correspondant aux tables sources configurées pour la réplication.
Démarre la réplication en suivant le cycle de vie de la réplication des tables tel que décrit dans Comment les tables sont-elles répliquées ?.
Comment les tables sont-elles répliquées ?¶
Les tables sont répliquées dans les zones de préparation suivantes :
Introspection du schéma : le connecteur découvre les colonnes de la table source, y compris les noms et les types de colonnes, 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. À l’issue de cette préparation, le connecteur crée une table de destination vide.
Chargement d’un instantané : le connecteur copie toutes les données disponibles dans la table source dans la table de destination. Si cette zone de préparation échoue, plus aucune donnée n’est répliquée. Une fois l’opération réussie, les données de la table source sont disponibles dans la table de destination.
Chargement incrémentiel : le connecteur suit les modifications apportées à la table source et applique ces modifications à la table de destination. Ce processus se poursuit jusqu’à ce que la table soit retirée de la réplication. Un é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 intermédiaires (telles que les erreurs de connexion) n’empêchent pas la table d’être répliquée. Toutefois, les défaillances permanentes (telles que les types de données non pris en charge) empêchent la table d’être répliquée. Si une défaillance permanente empêche la réplication d’une table, supprimez la table de la liste des tables à répliquer. Après avoir résolu le problème à l’origine de l’échec, vous pouvez ajouter à nouveau la table à la liste des tables à répliquer.
Versions du serveur SQL prises en charge¶
La table suivante annonce les versions testées et officiellement prises en charge du serveur SQL:
2017 |
2022 |
|
---|---|---|
Oui |
Oui |
|
Oui |
Oui |
Limitations¶
Le connecteur ne prend en charge que l’authentification par nom d’utilisateur et mot de passe avec le serveur SQL.
Le connecteur ne réplique que les tables dont les types de données sont supportés par Snowflake. Pour obtenir la liste de ces types de données, voir Résumé des types de données.
Le connecteur exige que chaque table répliquée ait une clé primaire.
Le connecteur ne prend pas en charge les environnements d’exécution Openflow multi-clusters.
Le connecteur ne met pas à jour les enregistrements existants dans la base de données Snowflake lorsqu’une nouvelle colonne NOT NULL avec une valeur par défaut est ajoutée à la base de données source.
Le connecteur ne met pas à jour les enregistrements existants dans la base de données Snowflake lorsqu’une nouvelle colonne est ajoutée à la liste incluse dans le filtre de colonne JSON.
Après avoir supprimé la colonne dans la base de données source et l’avoir réintroduite sous le même nom, les suppressions supplémentaires provoqueront des erreurs.
Après avoir inclus une colonne dans le filtre de colonne JSON et l’avoir exclue, les tentatives d’inclusion supplémentaires provoqueront des erreurs.
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 l’opération de troncature de table.
Note
Les limites affectant certaines colonnes de la table peuvent être contournées en excluant ces colonnes spécifiques de la réplication.