# Metadati e messaggi di dati

Questo argomento descrive la struttura e il contenuto dei metadati e messaggi di dati prodotti dal Kafka target connettore.

## Messaggio di metadati

Messaggio di metadati

| Campo | Tipo | Descrizione |
| --- | --- | --- |
| schemaId | Stringa | L'identificatore univoco dello schema Avro. |
| derivazione | Struttura | Informazioni sull'origine dei dati (server Qlik Talend Data Integration, attività, tabella e così via) |
| server | Stringa | Il nome del server Qlik Talend Data Integration. |
| attività | Stringa | Il nome dell'attività. |
| schema (Nome schema) | Stringa | Il nome dello schema del database. |
| tabella (Nome tabella) | Stringa | Il nome della tabella. |
| versione tabella | Numero intero | Qlik Talend Data Integration mantiene un numero di versione della struttura della tabella di origine. In caso di modifica DDL sull'origine, la versione viene incrementata e viene prodotto un nuovo messaggio di metadati. |
| data e ora | Stringa | La data e l'ora del messaggio di metadati. |
| tableStructure | Struttura | Descrive la struttura della tabella. |
| tableColumns | Struttura | Contiene l'elenco delle colonne e le relative proprietà. |
| {Colonne} | Struttura | Per ogni colonna, un record con le proprietà seguenti. |
| ordinale | Numero intero | La posizione della colonna nel record. |
| tipo | Stringa | Il tipo di dati delle colonne. |
| lunghezza | Numero intero | Le dimensioni massime dei dati (in byte) consentite per la colonna. |
| precisione | Numero intero | Per il tipo di dati NUMERIC, il numero massimo di cifre necessarie per rappresentare il valore. |
| scala: | Numero intero | Per il tipo di dati NUMERIC, il numero massimo di cifre a destra della virgola decimale consentito per un numero. |
| primaryKeyPosition | Numero intero | La posizione della colonna nella chiave primaria o indice univoco della tabella. Il valore è zero se la colonna non fa parte della chiave primaria della tabella. |
| dataSchema | Stringa | Lo schema Avro per la deserializzazione dei messaggi Data. |

## Messaggio di dati

Messaggio di dati

| Campo | Tipo | Descrizione |
| --- | --- | --- |
| schema (nome) | Stringa | Il nome dello schema del database di origine contenente la/e tabella/e di origine replicata/e. |
| tabella (nome) | Stringa | Il nome della tabella di origine. |
| intestazioni | Struttura | Informazioni sul record corrente. |
| operazione (Operation) | Enum | Il tipo di operazione.<br><br>Caricamento completo - Caricamento iniziale dei dati di origine nell'argomento/negli argomenti di destinazione<br><br>REFRESH – Inserimento di un record nella destinazione durante il caricamento completo<br><br>CDC - Applica le modifiche della tabella di origine all'argomento pertinente<br><br>INSERT – Inserimento di un nuovo record di destinazione<br><br>UPDATE – Aggiornamento di un record di destinazione esistente<br><br>DELETE – Eliminazione di un record di destinazione |
| changeSequence (Sequenza di modifica) | Stringa | Un sequencer di modifica monotonicamente crescente comune a tutte le tabelle di modifica di un'attività.<br><br>Utilizzare questo campo per ordinare i record in ordine cronologico.<br><br>Applicabile solo alle operazioni CDC. |
| timestamp (Timestamp) | Stringa | Il timestamp UTC della modifica originale.<br><br>Applicabile solo alle operazioni CDC. |
| flussoPosizione | Stringa | La posizione del flusso della CDC di origine.<br><br>Applicabile solo alle operazioni CDC. |
| IDtransazione (ID transazione) | Stringa | L'ID della transazione a cui appartiene il record di modifica.<br><br>Utilizzare questo campo per raccogliere tutte le modifiche di una transazione specifica.<br><br>Applicabile solo alle operazioni CDC. |
| changeMask (Maschera di modifica) | Stringa | Indica quali colonne di dati sono state modificate nella tabella di origine.<br><br>La maschera di modifica è una stringa di cifre esadecimali, che rappresenta una bitmask di colonne di dati in ordine little-endian. La posizione dei bit nella maschera di modifica si basa sul numero ordinale della colonna nel messaggio di metadati di quella tabella.<br><br>Questo significa che se vi sono 10 colonne di dati, queste occupano i bit da 0 a 9 nella bitmask.<br><br>Se la maschera UPDATE è 0B esadecimale, ovvero 1011 binario, significa che le colonne agli ordinali 1, 2 e 4 sono state modificate.<br><br>Per una descrizione della semantica dei bit, vedere di seguito:<br><br><ul> <li>Per i record INSERT, tutte le colonne inserite hanno i set di bit associati.</li> <li>Per i record DELETE, solo le colonne con chiave primaria (o indice univoco) hanno i set di bit associati. Ciò consente a un utente applicatore di creare un'istruzione DELETE senza dover cercare i campi della chiave primaria in un'altra sorgente.</li> <li>Per i record UPDATE, ogni colonna con un valore modificato avrà il set di bit associato.</li> </ul><br><br>Nota informatica<br><br>Le colonne LOB non sono incluse nel bit changeMask. |
| columnMask (Maschera colonna) | Stringa | Indica quali colonne di dati sono presenti nel messaggio. Di solito, questo includerà tutte le colonne della tabella.<br><br>Nota informatica<br><br>Quando spostamento da una sorgente Oracle senza logging supplementare completo, alcune colonne potrebbero non essere presenti nei dati, poiché non potrebbero essere spostato.<br><br>La maschera di colonna è una stringa di cifre esadecimali, che rappresenta una bitmask di colonne di dati in ordine little-endian. La posizione dei bit nella maschera di colonna si basa sull'ordinale della colonna nel messaggio di metadati per quella tabella.<br><br>Ciò consente all'applicatore di distinguere un valore nullo che è il valore *effettivo* della colonna, da un valore nullo che rappresenta una colonna che non è stato possibile spostato dal database di origine. |
| externalSchemaId | Stringa | L'ID dello schema. Verrà visualizzato solo se la casella di controllo Includi intestazione ID schema esterno è selezionata.<br><br>Poiché l'ID dello schema cambia ogni volta che viene eseguito un DDL sulla tabella di origine, le app consumer possono usare queste informazioni per determinare se lo schema del messaggio è cambiato. |
| transactionEventCounter (Contatore Eventi Transazione) | Lungo | Il numero di sequenza dell'operazione corrente nella transazione.<br><br>Questo può essere utilizzato per determinare l'ordine delle operazioni all'interno di una transazione. |
| transactionLastEvent (Ultimo Evento Transazione) | Boolean | "True" indica che è il record finale nella transazione, mentre "False" indica che non tutti i record sono stati elaborati. |
| dati | Struttura | I dati del record della tabella |
| {colonne} |  | I nomi e i valori delle colonne nel record corrente. |
| beforeData | Struttura | I dati del record della tabella, prima della modifica |
| {colonne} |  | I nomi e i valori delle colonne, prima della modifica.<br><br>Applicabile all'operazione di UPDATE. |