Paramétrage du connecteur Openflow pour Kafka

Note

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

Conditions préalables

  1. Assurez-vous d’avoir consulté Connecteur Openflow pour Kafka.

  2. Assurez-vous que vous avez paramétré Openflow.

Types de connecteurs

Le connecteur Openflow pour Kafka est disponible dans trois configurations différentes, chacune étant optimisée pour des cas d’utilisation spécifiques. Vous pouvez télécharger ces définitions de connecteurs à partir de la galerie des connecteurs :

Apache Kafka pour le format de données JSON

Connecteur simplifié pour l’ingestion de messages JSON avec évolution des schémas et mappage des sujets vers les tables

Apache Kafka pour le format de données AVRO

Connecteur simplifié pour l’ingestion de messages AVRO avec évolution des schémas et mappage des sujets vers les tables

Apache Kafka avec DLQ et métadonnées

Connecteur complet avec support de la file d’attente des lettres mortes (DLQ), gestion des métadonnées et parité de fonctions avec le connecteur Snowflake pour Kafka

Pour la configuration détaillée de types de connecteurs spécifiques, voir :

Paramétrage du compte Snowflake

En tant qu’administrateur de compte Snowflake, effectuez les tâches suivantes :

  1. Créez un nouveau rôle ou utilisez un rôle existant et accordez le Privilèges de base de données.

  2. Créez un nouvel utilisateur du service Snowflake avec le type SERVICE.

  3. Autorisez l’utilisateur du service Snowflake le rôle que vous avez créé dans les étapes précédentes.

  4. Configurez avec l’authentification par paire de clés pour l’utilisateur de Snowflake SERVICE de l’étape 2.

  5. Snowflake recommande vivement cette étape. Configurez un gestionnaire de secrets pris en charge par Openflow, par exemple AWS, Azure et Hashicorp, et stockez les clés publiques et privées dans le magasin de secrets.

    Note

    Si, pour une raison quelconque, vous ne souhaitez pas utiliser un gestionnaire de secrets, il vous incombe de protéger les fichiers de clés publiques et privées utilisés pour l’authentification par paires de clés conformément aux politiques de sécurité de votre organisation.

    1. Une fois le gestionnaire de secrets configuré, déterminez comment vous vous y authentifierez. Sur AWS, il est recommandé d’utiliser le rôle de l’instance EC2 associée à Openflow, car de cette manière, aucun autre secret ne doit être conservé.

    2. Dans Openflow, configurez un fournisseur de paramètres associé à ce gestionnaire de secrets, à partir du menu hamburger en haut à droite. Naviguez vers Controller Settings » Parameter Provider et récupérez les valeurs de vos paramètres.

    3. À ce stade, tous les identifiants peuvent être référencés avec les chemins de paramètres associés et aucune valeur sensible ne doit être conservée dans Openflow.

  6. Si d’autres utilisateurs de Snowflake ont besoin d’accéder aux documents bruts ingérés et aux tables ingérées par le connecteur (par exemple, pour un traitement personnalisé dans Snowflake), accordez à ces utilisateurs le rôle créé à l’étape 1.

  7. Désignez un entrepôt à utiliser par le connecteur. Commencez par la taille d’entrepôt la plus petite, puis faites des essais en fonction du nombre de tables répliquées et de la quantité de données transférées. Les tables de grande taille s’adaptent généralement mieux aux entrepôts multi-clusters, plutôt qu’aux entrepôts de grande taille.

Définir le connecteur

En tant qu’ingénieur des données, effectuez les tâches suivantes pour installer et configurer le connecteur :

Installer le connecteur

  1. Naviguez jusqu’à la page d’aperçu d’Openflow. Dans la section Featured connectors, sélectionnez View more connectors.

  2. Sur la page des connecteurs Openflow, trouvez le connecteur et sélectionnez Add to runtime.

  3. Dans la boîte de dialogue Select runtime, sélectionnez votre environnement d’exécution dans la liste déroulante Available runtimes.

  4. Sélectionnez Add.

    Note

    Avant d’installer le connecteur, assurez-vous que vous avez créé une base de données et un schéma dans Snowflake pour que le connecteur puisse stocker les données ingérées.

  5. Authentifiez-vous au déploiement avec les identifiants de votre compte Snowflake et sélectionnez Allow lorsque vous êtes invité à autoriser l’application d’exécution à accéder à votre compte Snowflake. Le processus d’installation du connecteur prend quelques minutes.

  6. Authentifiez-vous auprès de l’environnement d’exécution avec les identifiants de votre compte Snowflake.

Le canevas Openflow apparaît avec le groupe de processus du connecteur ajouté.

Configuration du connecteur

  1. Renseigner les paramètres du groupe de processus

    1. Cliquez avec le bouton droit de la souris sur le groupe de processus importé et sélectionnez Paramètres.

    2. Complétez les valeurs des paramètres requis comme décrit dans Paramètres communs.

Paramètres communs

Toutes les variantes de connecteurs Kafka partagent des contextes de paramètres communs pour la connectivité et l’authentification de base.

Paramètres de la destination Snowflake

Paramètre

Description

Obligatoire

Base de données de destination

La base de données dans laquelle les données seront conservées. Elle doit déjà exister dans Snowflake

Oui

Schéma de destination

Le schéma dans lequel les données seront conservées. Elle doit déjà exister dans Snowflake

Oui

Identificateur de compte Snowflake

Nom du compte Snowflake formaté comme suit : [[nom de l’organisation] -[[nom du compte] où les données seront conservées

Oui

Stratégie d’authentification Snowflake

Stratégie d’authentification auprès de Snowflake. Valeurs possibles : SNOWFLAKE_SESSION_TOKEN - lorsque nous exécutons le flux sur SPCS, KEY_PAIR lorsque nous voulons configurer l’accès à l’aide d’une clé privée

Oui

Clé privée de Snowflake

La clé privée RSA utilisée pour l’authentification. La clé RSA doit être formatée selon les normes PKCS8 et comporter les en-têtes et pieds de page standard PEM. Notez que vous devez définir soit le fichier de clé privée de Snowflake, soit la clé privée de Snowflake

Non

Fichier de clé privée de Snowflake

Le fichier qui contient la clé privée RSA utilisée pour l’authentification à Snowflake, formaté selon les normes PKCS8 et comportant les en-têtes et pieds de page standard PEM. La ligne d’en-tête commence par -----BEGIN PRIVATE. Cochez la case Reference asset pour télécharger le fichier de la clé privée.

Non

Mot de passe de la clé privée de Snowflake

Le mot de passe associé au fichier de la clé privée de Snowflake

Non

Rôle Snowflake

Rôle Snowflake utilisé lors de l’exécution de la requête

Oui

Nom d’utilisateur Snowflake

Nom d’utilisateur utilisé pour se connecter à l’instance de Snowflake

Oui

Entrepôt Snowflake

L’entrepôt de Snowflake est utilisé pour exécuter des requêtes

Oui

Paramètres de la source Kafka (authentificationSASL)

Paramètre

Description

Obligatoire

Protocole de sécurité de Kafka

Protocole de sécurité utilisé pour communiquer avec les courtiers. Correspond à la propriété security.protocol du client Kafka. Une des options : SASL_PLAINTEXT / SASL_SSL

Oui

Mécanisme Kafka SASL

Mécanisme SASL utilisé pour l’authentification. Correspond à la propriété sasl.mechanism du client Kafka. L’un d’entre eux : PLAIN / SCRAM-SHA-256 / SCRAM-SHA-512

Oui

Nom d’utilisateur Kafka SASL

Le nom d’utilisateur pour s’authentifier auprès de Kafka

Oui

Mot de passe Kafka SASL

Le mot de passe pour s’authentifier auprès de Kafka

Oui

Serveurs Bootstrap Kafka

Une liste séparée par des virgules du courtier Kafka pour récupérer les données, doit contenir le port, par exemple kafka-broker:9092. La même instance est utilisée pour le sujet DLQ.

Oui

Paramètres d’ingestion Kafka

Paramètre

Description

Obligatoire

Format des sujets Kafka

Un des éléments suivants : noms / modèle. Indique si les sujets Kafka fournis sont une liste de noms séparés par des virgules ou une expression régulière unique.

Oui

Sujets Kafka

Une liste de sujets Kafka séparés par des virgules ou une expression régulière.

Oui

Id du groupe Kafka

L’ID d’un groupe de consommateurs utilisé par le connecteur. Il peut être arbitraire mais doit être unique.

Oui

Réinitialisation du décalage automatique de Kafka

Configuration automatique du décalage appliquée lorsqu’aucun décalage de consommateur antérieur n’est trouvé correspondant à la propriété Kafka auto.offset.reset. L’un des éléments suivants : le plus ancien / le plus récent. Valeur par défaut : latest

Oui

Section To Table Map

Ce paramètre facultatif permet à l’utilisateur de spécifier quels sujets doivent être mappés à quelles tables. Chaque sujet et son nom de table doivent être séparés par le signe deux-points (voir exemple ci-dessous). Ce nom de table doit être un identificateur non spécifié Snowflake et valide. Les expressions régulières ne peuvent pas être ambiguës — toute rubrique correspondante doit correspondre à une seule table cible. S’il est vide ou si aucune correspondance n’est trouvée, le nom de la rubrique sera utilisé comme nom de table. Remarque : le mappage ne peut pas contenir d’espaces après les virgules.

Non

Topic To Table Map exemples de valeurs :

  • topic1:low_range,topic2:low_range,topic5:high_range,topic6:high_range

  • topic[0-4]:low_range,topic[5-9]:high_range

  • .*: destination_table - mappe tous les sujets vers destination_table

Configurer les paramètres spécifiques à la variante

Après avoir configuré les paramètres communs, vous devez configurer les paramètres spécifiques à la variante de connecteur que vous avez choisie :

Pour les connecteurs Apache Kafka pour le format de données JSON et Apache Kafka pour le format de données AVRO :

Voir Apache Kafka pour le format de données JSON/AVRO pour les paramètres spécifiques à JSON/AVRO.

Pour Apache Kafka avec DLQ et le connecteur de métadonnées:

Voir Apache Kafka avec DLQ et métadonnées pour les paramètres avancés, notamment la configuration de DLQ, les paramètres de schématisation, la prise en charge de la table Iceberg et les options de format de message.

Authentification

Toutes les variantes de connecteur prennent en charge l’authentification SASL configurée par le biais de contextes de paramètres, comme décrit dans Paramètres de la source Kafka (authentificationSASL).

Pour les autres méthodes d’authentification, y compris mTLS et AWS MSK IAM, voir Configurer d’autres méthodes d’authentification pour le connecteur Openflow pour Kafka.

Exécutez le flux

  1. Cliquez avec le bouton droit de la souris sur l’avion et cliquez sur Activer tous les Controller Service.

  2. Faites un clic droit sur l’avion et cliquez sur Démarrer. Le connecteur commence l’ingestion des données.