Procesamiento DTM
Cuando ejecute una sesión, el proceso DTM leerá los datos de origen y los pasará a las transformaciones para su procesamiento. Para que entender mejor el procesamiento DTM, considere las siguientes acciones del proceso DTM:
- •Lectura de los datos de origen. El DTM lee los orígenes de una asignación en diferentes momentos, según cómo estén configurados los orígenes, las transformaciones y los destinos en la asignación.
- •Bloqueo de datos. En ocasiones, el DTM bloquea el flujo de datos en una transformación de la asignación mientras procesa una fila de datos de un origen diferente.
- •Procesamiento en bloque. El DTM lee y procesa un bloque de filas a la vez.
Lectura de datos de origen
Las asignaciones contienen uno o más grupos de orden de carga de destino. Un grupo de orden de carga de destino es una recopilación de calificadores de origen, transformaciones y destinos vinculados en una asignación. Cada grupo de orden de carga de destino contiene uno o más canales de origen. Un canal de origen consiste en un calificador de origen y todas las transformaciones e instancias del destino que reciben datos desde ese calificador de origen.
De forma predeterminada, DTM lee los orígenes en un grupo de orden de carga de destino de forma simultánea y procesa los grupos de orden de carga de destino de forma secuencial. Puede configurar el orden en que DTM procesa los grupo de orden de carga de destino.
La siguiente figura muestra una asignación que contiene dos grupos de orden de carga de destino y tres canales de origen:
En la asignación, DTM procesa los grupos de orden de carga de destino de forma secuencial. Primero procesa el Grupo de orden de carga de destino 1 leyendo el Origen A y el Origen B al mismo tiempo. Cuando finaliza de procesar el Grupo de orden de carga de destino 1, DTM comienza a procesar el Grupo de orden de carga de destino 2 leyendo el Origen C.
Bloqueo de datos
En una asignación, se pueden incluir transformaciones con varios grupos de entrada. El DTM pasa los datos a los grupos de entrada de forma simultánea. Sin embargo, a veces la lógica de transformación de una transformación con varios grupos de entrada requiere que el DTM bloquee los datos en un grupo de entrada mientras espera una fila de un grupo de entrada diferente.
El bloqueo consiste en la suspensión del flujo de datos hacia uno de los grupos de entrada de una transformación con varios grupos de entrada. Cuando el DTM bloquea los datos, lee los datos desde el origen conectado al grupo de entrada hasta que rellena los búferes de lectura y transformación. Una vez que el DTM rellena los búferes, no lee más filas de origen hasta que la lógica de transformación permite al DTM detener el bloqueo del origen. Cuando el DTM deja de bloquear un origen, procesa los datos de los búferes y continúa leyendo desde el origen.
El DTM bloquea los datos de un grupo de entrada cuando necesita una fila específica de un grupo de entrada diferente para llevar a cabo la lógica de transformación. Una vez que el DTM lee y procesa la fila que necesita, deja de bloquear el origen.
Procesamiento en bloque
El DTM lee y procesa un bloque de filas cada vez. El número de filas del bloque depende del tamaño de las filas y del tamaño del búfer DTM. El DTM procesa una fila de un bloque en las siguientes circunstancias:
- •Al registrar errores de fila. El DTM procesa una fila de un bloque cuando se registran errores de fila:
- •Al conectarse a CURRVAL. Cuando se conecta al puerto CURRVAL en una transformación de generador de secuencia, la sesión procesa una fila de un bloque. Para un rendimiento óptimo, conéctese únicamente al puerto NEXTVAL en las asignaciones.
- •Al configurar el modo basado en matriz para un procedimiento de transformación personalizada. Cuando se configura el modo de acceso a datos para un procedimiento de transformación personalizada de modo que esté basado en fila, el DTM procesa una fila de un bloque. De manera predeterminada, el modo de acceso a datos está basado en matriz y el DTM procesa varias filas de un bloque.