Índice

Search

  1. Prólogo
  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 macro
  30. Transformación de coincidencia
  31. Transformaciones de coincidencia en el análisis de campos
  32. Transformaciones de coincidencia en el análisis de identidad
  33. Transformación de normalizador
  34. Transformación de fusión
  35. Transformación de analizador
  36. Transformación de Python
  37. Transformación de rango
  38. Transformación de lectura
  39. Transformación de relacional a jerárquica
  40. Transformación de consumidor de servicio web REST
  41. Transformación de enrutador
  42. Transformación de generador de secuencia
  43. Transformación de ordenación
  44. Transformación de SQL
  45. Transformación de estandarizador
  46. Transformación de unión
  47. Transformación de estrategia de actualización
  48. Transformación de consumidor de servicio web
  49. Análisis de mensajes SOAP del servicio web
  50. Generación de mensajes SOAP del servicio web
  51. Transformación de media ponderada
  52. Transformación de ventana
  53. Transformación de escritura
  54. Apéndice A: Delimitadores de transformación

Guía de transformaciones de Developer

Guía de transformaciones de Developer

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 , 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