Tablas de cambios
Puede utilizar las herramientas de su conexión de destino para obtener información utilizando los metadatos en las tablas de cambios. Estos datos vienen definidos por las columnas de encabezado agregadas al esquema de la tabla de cambios. Estos encabezados se describen en la tabla siguiente.
Para cada tabla de destino en la tarea de replicación, se mantiene una tabla de cambios con el nombre correspondiente en la base de datos con las tablas de destino. Para más información, vea Trabajar con tablas de cambios. Una tabla de cambios contiene las columnas de la tabla original y las columnas de encabezado. Las columnas de encabezado contienen un prefijo para que el nombre no entre en conflicto con los nombres de las columnas de la tabla de origen. El prefijo predeterminado es header__
. Para obtener información sobre cómo cambiar este prefijo, consulte la lista Tablas de cambios en Metadatos, en Configuración de tareas. La siguiente tabla enumera las columnas de encabezado de la tabla de cambios predeterminada.
Nombre de la columna | Tipo | Descripción |
---|---|---|
varchar (35) |
Un secuenciador de cambios que aumenta monótonamente y que es común a todas las tablas de cambios de una tarea. La secuencia de cambios tiene el siguiente formato: AAAAMMDDHHmmSShhxxxxxxxxxxxxxxxxxxx Donde:
La parte de tiempo generalmente se refiere al tiempo de confirmación de la transacción que incluye el registro de cambios. Qlik Talend Data Integration contiene una lógica que mantiene la monotonicidad del número de secuencia, por lo que modificar o ajustar el tiempo del punto de conexión puede dar lugar a múltiples cambios para que parezca que están dentro de la misma marca de tiempo pero con un número de cambios creciente. El xxx...xxx suele ser el número de cambio interno del registro de datos, excepto que para los registros ANTES DE LA IMAGEN es el mismo que el número de cambio del registro ACTUALIZADO correspondiente (por ejemplo, si el número de cambio de ANTES DE LA IMAGEN es 1000 y el del ACTUALIZADO es 1001, entonces ambos tienen 1001). Esto permite una unión externa izquierda (left-outer-join) simple entre la tabla y ella misma, donde a la izquierda examinamos hasta el punto en el tiempo pero filtramos |
|
|
varchar (1) |
El tipo de operación. Puede ser una de las siguientes:
|
|
varbinary (128) |
La máscara de cambios indica qué columnas de datos en la tabla de cambios están asociadas con columnas que cambiaron en la tabla de origen. La posición del bit en la máscara de cambios se basa en el ordinal de columna de la tabla de cambios. Esto significa que si hay 5 columnas de encabezado, ocupan los bits 0 al 4 y la primera columna de datos es el bit 5 en la máscara de cambios. La máscara de cambios es una columna binaria (una matriz de bytes) que representa la máscara de cambios en orden little-endian: Byte 0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 Byte 1 bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 En este ejemplo, A continuación se describe la semántica de bits:
Por motivos de espacio y eficiencia de procesamiento, el número real de bytes almacenados en la máscara de cambios puede ser nulo. Esto significa que no es necesario almacenar los ceros finales. La lógica de manipulación debe tener esto en cuenta. |
|
varchar (128) |
La posición del flujo CDC de origen. |
|
varchar (12) |
La operación asociada con el registro de cambios. Puede ser una de las siguientes:
|
|
varchar (32) |
El ID de la transacción a la que pertenece el registro de cambios. El valor es una cadena hexadecimal del ID de transacción de 128 bits. |
|
timestamp |
La marca de tiempo UTC del cambio original (el valor puede ser aproximado). Nota informativa Con el código fuente de PostgreSQL, la marca de tiempo solo se conoce después de que se produce la confirmación. Por lo tanto, hasta que los cambios no se confirmen en las tablas de origen, se mostrará la fecha predeterminada (por ejemplo, 1970-01-01).
|
[header__] |
cadena de texto |
El nombre de la partición creada en el destino cuando está habilitado Cambiar partición de datos. El nombre de la partición se compone de la hora de inicio y hora de finalización de la partición. Ejemplo: 20170313T123000_20170313T170000 |