Accéder au contenu principal Passer au contenu complémentaire

Messages de métadonnées et de données

Cette rubrique décrit la structure et le contenu des messages de métadonnées et de données produits par le connecteur cible Kafka.

Message de métadonnées

Message de métadonnées
Champ Type Description
schemaId Chaîne Identifiant unique du schéma Avro.
lineage Structure Informations sur l'origine des données (serveur Qlik Talend Data Integration, tâche, table, etc.)

server

Chaîne Nom du serveur Qlik Talend Data Integration.

task

Chaîne Nom de la tâche.

schema (Nom de schéma)

Chaîne Nom du schéma de la base de données.

table (Nom de table)

Chaîne Nom de la table.

tableVersion

Entier Qlik Talend Data Integration maintient un numéro de version de la structure de la table source. Lors d'une modification DDL sur la source, la version est incrémentée et un nouveau message de métadonnées est produit.

timestamp

Chaîne Date et heure du message de métadonnées.
tableStructure Structure Décrit la structure de la table.

tableColumns

Structure Contient la liste des colonnes et leurs propriétés.

{columns}

Structure Pour chaque colonne, enregistrement avec les propriétés ci-dessous.

ordinal

Entier Position de la colonne dans l'enregistrement.

type

Chaîne Type de données de la colonne.

length

Entier Taille maximale des données (en octets) autorisée pour la colonne.

precision

Entier Pour le type de données NUMERIC, nombre maximal de chiffres requis pour représenter la valeur.

scale

Entier Pour le type de données NUMERIC, nombre maximal de chiffres à droite du point décimal autorisé pour un nombre.

primaryKeyPosition

Entier Position de la colonne dans la clé primaire ou l'index unique de la table. La valeur est zéro, si la colonne ne fait pas partie de la clé primaire de la table.
dataSchema Chaîne Schéma Avro pour la désérialisation des messages de données.

Message de données

Message de données
Champ Type Description
schema (Nom) Chaîne Nom du schéma de base de données source contenant la ou les tables sources répliquées.
table (Nom) Chaîne Nom de la table source.

headers

Structure Informations sur l'enregistrement actuel.

operation (Opération)

Enum Type d'opération.

Chargement complet - Chargement initial des données sources dans le ou les topics cibles

REFRESH – Insertion d'un enregistrement dans la cible lors de l'opération Chargement complet

CDC - Applique les modifications de la table source au topic pertinente

INSERT – Insertion d'un nouvel enregistrement cible

UPDATE – Mise à jour d'un enregistrement cible existant

DELETE – Suppression d'un enregistrement cible

changeSequence (Séquence de modifications)

Chaîne

Séquenceur de modifications à croissance monotonique commun à toutes les tables de modifications d'une tâche.

Utilisez ce champ pour classer les enregistrements dans l'ordre chronologique.

Applicable uniquement aux opérations CDC.

timestamp (Horodatage)

Chaîne

Horodatage UTC de la modification initiale.

Applicable uniquement aux opérations CDC.

streamPosition

Chaîne

Position du flux CDC source.

Applicable uniquement aux opérations CDC.

transactionId (ID de transaction)

Chaîne

ID de la transaction à laquelle appartient l'enregistrement de modifications.

Utilisez ce champ pour rassembler toutes les modifications d'une transaction spécifique.

Applicable uniquement aux opérations CDC.

changeMask (Masque de modifications)

Chaîne

Indique les colonnes de données qui ont été modifiées dans la table source.

Le masque de modifications est une chaîne de chiffres hexadécimaux représentant un masque de bits de colonnes de données dans l'ordre little-endian (petit-boutiste). La position du bit dans le masque de modifications est basée sur l'ordinal de la colonne dans le message de métadonnées de cette table.

Cela signifie que s'il existe 10 colonnes de données, elles occupent les bits 0 à 9 dans le masque de bits.

Si le masque UPDATE est 0B hexadécimal, soit 1011 binaire, cela signifie que les colonnes aux ordinaux 1, 2 et 4 ont été modifiées.

Voici une description de la sémantique des bits :

  • Pour les enregistrements INSERT, l'ensemble des colonnes insérées ont l'ensemble de bits associé.
  • Pour les enregistrements DELETE, seules les colonnes de clé primaire (ou d'index unique) ont l'ensemble de bits associé. Cela permet à un applicateur de créer une instruction DELETE sans avoir à rechercher les champs de clé primaire auprès d'une autre source.
  • Pour les enregistrements UPDATE, chaque colonne dont la valeur a changé aura l'ensemble de bits associé.
Note Informations

Les colonnes LOB ne sont pas incluses dans le bit changeMask.

columnMask (Masque de colonnes)

Chaîne

Indique les colonnes de données qui sont présentes dans le message. Généralement, cela inclura toutes les colonnes de la table.

Note Informations

Lors d'une opération déplacement depuis une source Oracle sans journalisation supplémentaire complète, il se peut que certaines colonnes ne soient pas présentes dans les données, car l'opération déplacé n'a pas pu leur être appliquée.

Le masque de colonne est une chaîne de chiffres hexadécimaux représentant un masque de bits de colonnes de données dans l'ordre little-endian (petit-boutiste). La position du bit dans le masque de colonne est basée sur l'ordinal de la colonne dans le message de métadonnées de cette table.

Cela permet à l'applicateur de distinguer une valeur nulle qui est la valeur réelle de la colonne d'une valeur nulle qui représente une colonne à laquelle une opération déplacé depuis la base de données source n'a pas pu être appliquée.

externalSchemaId

Chaîne

ID de schéma. Cela ne sera affiché que si la case d'en-tête Inclure l'ID de schéma externe est cochée.

Étant donné que l'ID de schéma change chaque fois qu'une opération DDL est effectuée sur la table source, les applications consommatrices peuvent utiliser ces informations pour déterminer si le schéma de message a changé.

transactionEventCounter (Compteur d'événements de transaction)

Long

Numéro de séquence de l'opération actuelle dans la transaction.

Cela peut être utilisé pour déterminer l'ordre des opérations au sein d'une transaction.

transactionLastEvent (Dernier événement de transaction)

Booléen

True indique qu'il s'agit du dernier enregistrement de la transaction, tandis que False indique que tous les enregistrements n'ont pas été traités.

data

Structure Données de l'enregistrement de la table.

{columns}

  Noms de colonne et valeurs de l'enregistrement actuel.

beforeData

Structure Données de l'enregistrement de la table avant la modification

{columns}

 

Noms de colonne et valeurs avant la modification.

Applicable à l'opération UPDATE.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.