Gestion des schémas dans Connexion au flux

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 3 minutes de lecture
  • Importez et créez des schémas pour envoyer et recevoir des messages au Apache format Avro. L’utilisation d’un format Avro peut réduire la taille de la charge utile et simplifier votre intégration à votre instance Kafka locale.

    Avro est un système de sérialisation de données open source qui utilise des schémas pour structurer les données codées. Avec un schéma Avro, les données peuvent être converties de JSON en texte brut à un format binaire Avro et inversement. Vous pouvez stocker des schémas dans ServiceNow, afin que vos producteurs et consommateurs Stream Connect puissent utiliser les schémas pour sérialiser les messages Avro.

    L’image suivante montre une vue d’ensemble de la gestion des schémas dans Stream Connect. Les schémas, stockés dans des registres de schémas, permettent de convertir les messages des producteurs et des consommateurs du texte brut au format Avro et inversement.

    Diagramme montrant comment Stream Connect utilise les schémas stockés dans les registres de schémas pour convertir des messages Kafka dans différents formats.

    Schémas

    Vous pouvez importer un schéma à partir du registre Confluent ou créer votre propre schéma autonome en téléchargeant un fichier JSON ou en saisissant un schéma directement en tant que chaîne au format JSON.

    Une fois votre schéma importé ou créé, vous pouvez l’afficher dans la table Schémas de connexion au flux [stream_connect_schema], qui stocke à la fois les schémas Confluent et autonomes. De plus, les schémas Confluent sont visibles sur la table Schéma de connexion au flux Confluent [confluent_stream_connect_schema]. Les schémas autonomes se trouvent dans la table Schéma de connexion au flux autonome [standalone_stream_connect_schema].

    Tous les schémas ont un ID de schéma, un identificateur unique global du schéma. Pour les schémas Confluent, l’ID du schéma est importé à partir du registre Confluent. Pour les schémas autonomes, l’ID de schéma est généré localement et est unique sur l’instance. Par défaut, la valeur d’ID de schéma générée est l’ID de schéma le plus élevé suivant sur l’instance. Par exemple, si vos schémas ont des numéros d’ID un à cinq, le schéma suivant que vous créez aura un ID de schéma de six. Vous pouvez modifier la valeur par défaut.

    Les ID de schéma sont uniques par registre. Par exemple, deux schémas peuvent tous deux avoir un ID d’un tant qu’ils se trouvent dans des registres différents.

    Registres de schémas

    Chaque schéma appartient à un registre. Il existe deux types de registres de schémas : ServiceNowle registre de schémas Confluent et le registre de schémas autonome.

    Les deux registres de schémas disposent d’une option de suivi dans l’ensemble de mises à jour. Lorsque cette option est activée, les schémas de ce registre sont enregistrés dans l’ensemble de mises à jour. L’enregistrement des schémas dans l’ensemble de mises à jour permet de les déplacer d’un environnement à l’autre. Par défaut, cette option est désactivée pour le registre de schémas Confluent, car les ID de schémas peuvent changer d’un environnement à l’autre. Cette option est activée pour le registre de schémas autonome, car si vous créez des schémas manuellement, l’ID de schéma est moins susceptible de changer d’un environnement à l’autre. Pour modifier le paramètre par défaut de l’un ou l’autre des registres, accédez à Tout > Centre d'intégration > Registres de schémas, sélectionnez le registre et modifiez l’option Suivre dans l’ensemble de mises à jour .

    Format de message au niveau des virements

    Pour l’interopérabilité, ServiceNow utilise un format de message filaire similaire à ceux utilisés par d’autres systèmes. Le premier octet est défini sur 0. Les 4 octets suivants sont utilisés pour l’ID de schéma. Les octets restants sont utilisés pour les données, sérialisées dans un format Avro.
    Octet 0 Octet magique.
    Octets 1 à 4 ID du schéma.
    Octets restants Données, sérialisées dans un format Avro.

    Producteurs et consommateurs

    Les producteurs et les consommateurs de Stream Connect peuvent être configurés pour utiliser un format Avro.

    Lors de la configuration d’un producteur, spécifiez simplement le schéma que vous souhaitez utiliser. Ensuite, lorsque vous exécutez le producteur, la charge utile du message est générée au format JSON et automatiquement convertie au format Avro à l’aide du schéma spécifié. Pour plus d’informations sur les producteurs, consultez ou Kafka Producer stepl’API ProducerV2.

    La configuration d’un consommateur est similaire. Spécifiez le format de sérialisation comme codé et sélectionnez un registre de schéma. Lorsque le consommateur reçoit un message au format Avro, il est automatiquement converti en JSON en fonction du schéma de l’ID de schéma reçu dans le message. Pour plus d’informations, consultez le déclencheur de message Kafka ou les consommateurs ETL,Carte de transformation ou Script .

    Module d'extension

    Les fonctionnalités de gestion des schémas nécessitent le module d’extension ServiceNow Stream Connect Installer [com.glide.hub.stream_connect.installer].