Tables de modifications
Vous pouvez utiliser les outils de votre point de terminaison cible pour obtenir des informations via les métadonnées des tables de modifications. Ces données sont définies par les colonnes d'en-tête ajoutées au schéma de table de modifications. Ces en-têtes sont décrits dans le tableau ci-dessous.
Pour chaque table cible de la tâche de réplication, une table de modifications portant le nom correspondant est gérée dans la base de données avec les tables cibles. Pour plus d'informations, consultez Utilisation de tables de modifications. Une table de modifications contient les colonnes de table d'origine, ainsi que des colonnes d'en-tête. Les colonnes d'en-tête contiennent un préfixe afin que le nom ne soit pas en conflit avec les noms de colonne de table source. Le préfixe par défaut est header__
. Pour savoir comment modifier ce préfixe, voir la liste Tables de modifications sous Métadonnées dans les paramètres de tâche. Le tableau suivant répertorie les colonnes d'en-tête de table de modifications par défaut.
Nom de colonne | Type | Description |
---|---|---|
varchar (35) |
Séquenceur de modifications à croissance monotonique commun à toutes les tables de modifications d'une tâche. Le format de la séquence de modifications est le suivant : YYYYMMDDHHmmSShhxxxxxxxxxxxxxxxxxxx où :
La partie horaire fait généralement référence à l'heure de validation de la transaction qui inclut l'enregistrement de modification. Qlik Talend Data Integration contient la logique qui maintient la monotonicité du numéro séquentiel de sorte que la modification ou l'ajustement de l'heure du point de terminaison puisse entraîner le fait que plusieurs modifications semblent se produire au même horodatage, mais avec un numéro de modification croissant. La valeur xxx...xxx est généralement le numéro de modification interne de l'enregistrement de données, à l'exception du fait que, pour les enregistrements BEFORE-IMAGE, il s'agit du même numéro de modification que celui de l'enregistrement UPDATE correspondant (par exemple, si le numéro de modification de BEFORE-IMAGE est 1000 et si le numéro de modification de UPDATE est 1001, les deux ont 1001). Cela permet une simple jointure gauche externe entre la table et la valeur elle-même lorsqu'à gauche on scanne jusqu'au point dans le temps, mais qu'on filtre |
|
|
varchar (1) |
Type d'opération. Il peut s'agir de l'un des types suivants :
|
|
varbinary (128) |
Le masque de modifications indique les colonnes de données de la table de modifications associées aux colonnes modifiées dans la table source. La position du bit dans le masque de modifications est basée sur l'ordinal de colonne de la table de modifications. Cela signifie que s'il existe 5 colonnes d'en-tête, elles occupent les bits 0 à 4 et la première colonne de données est le bit 5 dans le masque de modifications. Le masque de modifications est une colonne binaire (un tableau d'octets) représentant le masque de modifications dans l'ordre petit-boutiste (little endian) : Octet 0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 Octet 1 bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 Dans cet exemple, Voici une description de la sémantique des bits :
Pour l'efficacité de l'espace et du traitement, les valeurs nulles peuvent être retirés du nombre effectif d'octets stockés dans le masque de modifications. Cela signifie qu'il n'est pas nécessaire de stocker les zéros de fin. La logique de traitement doit tenir compte de ce point. |
|
varchar (128) |
Position du flux CDC source. |
|
varchar (12) |
Opération associée à l'enregistrement de modification. Il peut s'agir de l'une des valeurs suivantes :
|
|
varchar (32) |
ID de la transaction à laquelle appartient l'enregistrement de modification. La valeur est une chaîne hex de l'ID de transaction de 128 bits. |
|
timestamp |
Horodatage UTC de la modification d'origine (il se peut que la valeur soit approximative). Note Informations Avec la source PostgreSQL, l'horodatage est connu uniquement après la validation. Par conséquent, tant que les modifications ne sont pas validées dans les tables sources, la date par défaut est affichée (par ex., 1970-01-01).
|
[header__] |
chaîne |
Nom de la partition créée sur la cible lorsque Modifier la partition de données est activé. Le nom de partition se compose de l'heure de début et de l'heure de fin de la partition. Exemple : 20170313T123000_20170313T170000 |