Índice

Search

  1. Preface
  2. Introducción a las transformaciones
  3. Puertos de transformación
  4. Memorias caché de transformaciones
  5. Transformación del validador de direcciones
  6. Transformación de agregación
  7. Transformación de asociación
  8. Transformación de excepción de registros incorrectos
  9. Transformación de conversión de mayúsculas y minúsculas
  10. Transformación de clasificador
  11. Transformación de comparación
  12. Transformación de consolidación
  13. Transformación de enmascaramiento de datos
  14. Transformación del Procesador de datos
  15. Transformación de decisión
  16. Transformación de excepción de registros duplicados
  17. Transformación de expresión
  18. Transformación de filtro
  19. Transformación de jerárquica a relacional
  20. Transformación de Java
  21. Referencia API de transformación de Java
  22. Expresiones de Java
  23. Transformación de incorporación
  24. Transformación de generador de claves
  25. Transformación de etiquetador
  26. Transformación de búsqueda
  27. Memorias caché de búsqueda
  28. Memoria caché de búsqueda dinámica
  29. Transformación de coincidencia
  30. Transformaciones de coincidencia en el análisis de campos
  31. Transformaciones de coincidencia en el análisis de identidad
  32. Transformación de fusión
  33. Transformación de normalizador
  34. Transformación de analizador
  35. Transformación de Python
  36. Transformación de rango
  37. Transformación de lectura
  38. Transformación de relacional a jerárquica
  39. Transformación de consumidor de servicio web REST
  40. Transformación de enrutador
  41. Transformación de generador de secuencia
  42. Transformación de ordenación
  43. Transformación de SQL
  44. Transformación de estandarizador
  45. Transformación de unión
  46. Transformación de estrategia de actualización
  47. Transformación de consumidor de servicio web
  48. Análisis de mensajes SOAP del servicio web
  49. Generación de mensajes SOAP del servicio web
  50. Transformación de media ponderada
  51. Transformación de escritura
  52. Delimitadores de transformación

Developer Transformation Guide

Developer Transformation Guide

Reemplazo de SQL y memoria caché de búsqueda dinámica

Reemplazo de SQL y memoria caché de búsqueda dinámica

Puede añadir una cláusula WHERE en la consulta de búsqueda para filtrar los registros utilizados para generar la memoria caché y para realizar una búsqueda en la tabla de base de datos para una búsqueda no almacenada en caché. Sin embargo, el servicio de integración no utiliza la cláusula WHERE al insertar filas en una memoria caché dinámica.
Cuando añada una cláusula WHERE en una transformación de búsqueda mediante una memoria caché dinámica, conecte una transformación de filtro antes de la transformación de búsqueda para filtrar las filas que no desea insertar en la memoria caché o en la tabla de destino. Si no incluye la transformación de filtro, podría obtener resultados inconsistentes entre la memoria caché y la tabla de destino.
Por ejemplo, quiere configurar una transformación de búsqueda para realizar una búsqueda dinámica en la tabla de empleados, EMP, de las filas coincidentes por EMP_ID. Puede definir el siguiente reemplazo de SQL de búsqueda:
SELECT EMP_ID, EMP_STATUS FROM EMP ORDER BY EMP_ID, EMP_STATUS WHERE EMP_STATUS = 4
Cuando se ejecuta por primera vez la
asignación
de
sesión
, el servicio de integración genera la memoria caché de búsqueda a partir de la tabla de destino según el reemplazo de SQL de búsqueda. Todas las filas de la memoria caché coinciden con la condición de la cláusula WHERE,
EMP_STATUS = 4
.
Por ejemplo, el servicio de integración lee una fila de origen que cumple la condición de búsqueda que ha especificado, pero el valor de EMP_STATUS es de 2. Aunque el destino podría tener la fila en la que EMP_STATUS es 2, el servicio de integración no encuentra la fila en la memoria caché debido al reemplazo de SQL. El servicio de integración inserta la fila en la memoria caché y pasa la fila para la tabla de destino. Cuando el servicio de integración inserta esta fila en la tabla de destino, podría obtener resultados inconsistentes cuando la fila ya existe. Además, no todas las filas de la memoria caché coinciden con la condición de la cláusula WHERE en el reemplazo de SQL.
Para comprobar que solo se insertan filas en la memoria caché que coinciden con la cláusula WHERE, añada una transformación de filtro antes de la transformación de búsqueda y defina la condición de filtro como la condición de la cláusula WHERE en el reemplazo de SQL de búsqueda.
Para el ejemplo anterior, introduzca la siguiente condición de filtro en la transformación de filtro y la cláusula WHERE en el reemplazo de SQL:
EMP_STATUS = 4