Apache Kafka pour le format de données JSON/AVRO¶
Note
Le connecteur est soumis aux conditions d’utilisation du connecteur.
Cette rubrique décrit les connecteurs Apache Kafka pour les formats de données JSON et AVRO. Il s’agit de connecteurs simplifiés optimisés pour l’ingestion de messages de base avec des capacités d’évolution du schéma et de mappage sujet-table.
Variantes de connecteur¶
Connecteur de format de données JSON¶
Apache Kafka pour connecteur de format de données JSON est conçu pour l’ingestion directe de messages JSON depuis des sujets Kafka vers des tables Snowflake Connector.
Fonctionnalités clés :
Prise en charge du format des messages JSON
Évolution du schéma
Mappage sujet-table
Authentification SASL
Connecteur de format de données AVRO¶
Apache Kafka pour connecteur de format de données AVRO est conçu pour l’ingestion directe de messages AVRO depuis des sujets Kafka vers des tables Snowflake avec prise en charge du registre des schémas.
Fonctionnalités clés :
Prise en charge du format des messages AVRO
Intégration du registre des schémas
Évolution du schéma
Mappage sujet-table
Authentification SASL
Paramètres spécifiques¶
Outre les paramètres communs décrits dans Paramétrage du connecteur Openflow pour Kafka, ces connecteurs ont des contextes de paramètres spécifiques.
Paramètres du registre des schémas (uniquement pour le connecteurAVRO)¶
Le connecteur AVRO comprend des paramètres supplémentaires pour l’intégration du registre des schémas :
Paramètre |
Description |
Obligatoire |
---|---|---|
Type d’authentification du registre du schéma |
La méthode d’authentification au registre des schémas, si elle est utilisée. Sinon, utilisez NONE. Une des options : NONE / BASIC. Par défaut : NONE |
Oui |
URL du registre des schémas |
L’URL du registre des schémas. Exigence pour le format du message AVRO. |
Non |
Nom d’utilisateur du registre des schémas |
Le nom d’utilisateur pour le registre des schémas. Exigence pour le format du message AVRO. |
Non |
Mot de passe du registre des schémas |
Le mot de passe pour le registre des schémas. Exigence pour le format du message AVRO. |
Non |
Stratégie d’accès au schéma AVRO |
La méthode d’accès au schéma AVRO d’un message. Obligatoire pour AVRO. L’un des éléments suivants : embedded-avro-schema / schema-reference-reader / schema-text-property. Valeur par défaut : embedded-avro-schema |
Non |
Schéma AVRO |
Schéma Avro dans le cas où schema-text-property est utilisé dans la stratégie d’accès au schéma AVRO avec le format de message AVRO. Remarque : cette option ne doit être utilisée que dans le cas où tous les messages consommés à partir du ou des sujets Kafka configurés partagent le même schéma. |
Non |
Limitations¶
Ces connecteurs simplifiés présentent les limites suivantes par rapport au connecteur complet de DLQ et de métadonnées :
Pas de colonne RECORD_METADATA - Les métadonnées Kafka ne sont pas stockées dans les tables cibles
Pas de file d’attente de lettres mortes (DLQ) - Les messages qui échouent ne sont pas routés vers un sujet DLQ
Pas de support pour les tables Snowflake - Seules les tables Snowflake régulières sont supportées
Correction de la schématisation - La détection des schémas est toujours activée et ne peut pas être désactivée
Note
La détection des schémas est activée par défaut dans ces connecteurs et ne peut pas être désactivée. Cela signifie que les champs de messages sont automatiquement aplatis en colonnes de tables individuelles avec évolution automatique du schéma.
Cas d’utilisation¶
Ces connecteurs sont idéaux pour :
- Une ingestion simple des données
Lorsque vous n’avez besoin que du contenu du message sans les métadonnées Kafka.
- Scénarios à haut débit
Lorsque la structure simplifiée des données améliore les performances.
- Cas d’utilisation de l’évolution des schémas
Lorsque des mises à jour automatiques du schéma des tables sont exigées
- Formats de messages JSON ou AVRO
Avec des schémas cohérents
Si vous avez besoin de métadonnées Kafka, du support DLQ ou de l’ingestion de tables Iceberg, utilisez plutôt le connecteur Apache Kafka avec DLQ et métadonnées.
Détection et évolution des schémas¶
Ces connecteurs prennent en charge la détection et l’évolution automatiques des schémas. La structure des tables dans Snowflake est définie et évolue automatiquement pour supporter la structure des nouvelles données chargées par le connecteur.
Lorsque la détection des schémas est activée (ce qui est toujours le cas pour ces connecteurs), Snowflake peut détecter le schéma des données en flux et charger les données dans des tables qui correspondent automatiquement à tout schéma défini par l’utilisateur. Snowflake permet également d’ajouter de nouvelles colonnes ou de supprimer la NOT NULL
contrainte des colonnes manquantes dans les nouveaux fichiers de données.
La détection des schémas avec le connecteur est possible avec ou sans registre de schémas fourni. Si vous utilisez le registre des schémas (Avro), la colonne sera créée avec les types de données définis dans le registre des schémas fourni. En l’absence de registre de schéma (JSON), le type de données sera déduit sur la base des données fournies.
Le ARRAY JSON n’est pas pris en charge pour une schématisation plus poussée.
Comportement de l’évolution des schémas¶
Si le connecteur crée la table cible, l’évolution du schéma est activée par défaut.
Si vous souhaitez activer ou désactiver l’évolution du schéma sur une table existante, utilisez la commande ALTER TABLE afin d’ensemble le paramètre ENABLE_SCHEMA_EVOLUTION
. Vous devez également utiliser un rôle qui a le privilège OWNERSHIP
sur la table. Pour plus d’informations, voir Évolution du schéma de table.