Puede usar una memoria caché de búsqueda dinámica para insertar y actualizar filas en el destino. Cuando utilice una memoria caché de búsqueda dinámica, podrá insertar y actualizar las mismas filas en la memoria caché que se inserten y se actualicen en el destino.
Por ejemplo, debe actualizar una tabla que contiene los datos de los clientes. Los datos de origen contienen filas de datos de clientes para insertar o actualizar en el destino. Cree una memoria caché dinámica que represente el destino. Configure una transformación de búsqueda para buscar clientes en la memoria caché dinámica.
La siguiente imagen muestra una asignación que tiene una transformación de búsqueda con una memoria caché de búsqueda dinámica:
La transformación de enrutador se divide en dos ramificaciones. La transformación de enrutador pasa las filas para inserción por una ramificación y las filas para actualización por la otra ramificación. Cada ramificación contiene una transformación de estrategia de actualización que escribe las filas en el destino. Las dos ramificaciones contienen el mismo destino.
Cuando se inicia la asignación, el Servicio de integración genera la memoria caché de búsqueda a partir de la tabla de destino. Cuando el Servicio de integración lee una fila que no está en la memoria caché de búsqueda, inserta la fila en la memoria caché.
La transformación de búsqueda devuelve cada fila a una transformación de enrutador. Dependiendo de si la fila está marcada para inserción o actualización, la transformación de enrutador dirige la fila a una de las transformaciones de estrategia de actualización. La transformación de enrutador determina si las filas están marcadas para inserción o actualización según la propiedad NewLookupRow. Las transformaciones de estrategia de actualización marcan cada fila como de inserción o actualización antes de pasarlas al destino.
La tabla de destino de clientes cambia a medida que se ejecuta la asignación. El Servicio de integración inserta filas nuevas y actualiza las filas existentes en la memoria caché de búsqueda. El Servicio de integración mantiene sincronizadas la memoria caché de búsqueda y la tabla de destino de clientes.
Para generar claves para el destino, utilice Sequence-ID en el puerto asociado. El Servicio de integración utiliza el ID de secuencia como clave principal para cada nueva fila insertada en la tabla de destino.
El rendimiento de la sesión aumenta cuando se utiliza una memoria caché de búsqueda dinámica porque la memoria caché se genera desde la base de datos solo una vez.