Operational Decision Manager (ODM) stage enlaces de búfer ( DataStage )

Si un enlace de entrada está marcado como enlace de búfer, el conector lee los registros de este enlace solo una vez y reutiliza los registros para cada ejecución del conjunto de reglas durante la ejecución del trabajo. Puede configurar un enlace de entrada en el DataStage® flujo como un enlace de búfer.

Cuando se configura el enlace del búfer, los registros capturados en el enlace del búfer se utilizan para generar valores de parámetros de conjunto de reglas fijos que se utilizarán en múltiples ejecuciones de conjuntos de reglas.

Si los registros llegan a la etapa en oleadas de transacciones, el conector lee los registros de los enlaces del búfer por separado en cada una de las oleadas y los reutiliza en las ejecuciones del conjunto de reglas de esa misma oleada.

Si no hay registros en el enlace del búfer, se toma una medida en función del tipo de parámetro del conjunto de reglas asociado al enlace del búfer. Si el parámetro del conjunto de reglas se basa en un tipo Java™ de matriz, el conector crea una matriz vacía y la utiliza como valor del parámetro del conjunto de reglas en todas las ejecuciones del conjunto de reglas. De lo contrario, el conector registra un error y el trabajo falla.

Cuando el parámetro del conjunto de reglas asociado al enlace del búfer no se basa en un tipo Java de matriz, o si la etapa está configurada para un conjunto de reglas basado en Dynamic XOM, el conector espera encontrar un único registro en el enlace del búfer y utilizarlo para producir el valor del parámetro del conjunto de reglas. Si hay varios registros disponibles en el enlace, el conector envía los registros que siguen al primer registro a un enlace de rechazo, si está definido para ese enlace de entrada y la opción Error de registro restante está habilitada. De lo contrario, el conector registra un mensaje de error y el trabajo falla.

Si un enlace secundario está configurado como enlace de búfer, independientemente del modo en el que se ejecute el conector y del tamaño del lote y las columnas clave especificadas para la etapa, el conector lee todos los registros disponibles en ese enlace de búfer.

Si el enlace primario está configurado como un enlace de búfer, el conector lee primero todos los registros disponibles en el enlace primario. A continuación, lee los registros de los enlaces secundarios restantes que no están configurados como enlaces de búfer de la siguiente manera:
  • Si el conector se ejecuta en modo por lotes y el modo clave está desactivado, el conector lee todos los registros disponibles en el enlace secundario, pero no más de n registros, donde n es el tamaño de lote especificado (0 para ilimitado). Después de ejecutar el conjunto de reglas, el conector continúa leyendo registros en este enlace para la siguiente ejecución del conjunto de reglas.
  • Si el conector se ejecuta en modo clave, se ignora el valor del tamaño del lote y el conector lee todos los registros del enlace secundario y espera que todos ellos tengan valores de columna clave que coincidan con los valores de columna clave de uno de los registros recuperados en el enlace del búfer primario. Se realiza una única ejecución del conjunto de reglas en el trabajo o en la oleada si los registros llegan en oleadas de transacciones. Los registros cuyos valores de columna clave no coinciden con los valores de columna clave de ninguno de los registros primarios se rechazan si se define el enlace de rechazo para ese enlace secundario y se selecciona la opción Error de discrepancia de clave para ese enlace de rechazo. De lo contrario, el conector registra un error y el trabajo falla.