Utilisez un cache de recherche dynamique pour conserver la synchronisation du cache avec la cible.
Vous pouvez utiliser un cache dynamique avec une recherche relationnelle, une recherche de fichier plat ou une recherche de pipeline.
Vous pouvez utiliser un cache dynamique avec une recherche relationnelle ou une recherche de fichier plat.
Le service d'intégration génère le cache de recherche dynamique lorsqu'il traite la première demande de recherche. Il interroge le cache en fonction de la condition de recherche de chaque ligne transmise à la transformation. Le service d'intégration met à jour le cache de recherche lors du traitement de chaque ligne.
Lorsqu'il lit une ligne de la source, le service d'intégration effectue l'une des actions suivantes dans le cache de recherche dynamique en fonction des résultats de la requête de recherche, du type de ligne et des propriétés de la transformation Recherche :
Il insère la ligne dans le cache.
Le service d'intégration insère la ligne lorsque celle-ci ne se trouve pas dans le cache et que vous avez configuré la transformation Recherche pour qu'elle insère des lignes dans le cache. Vous pouvez configurer la transformation de manière à insérer des lignes dans le cache en fonction des ports d'entrée ou des ID de séquence générés. Le service d'intégration marque la ligne comme « insertion ».
Il met à jour la ligne dans le cache.
Le service d'intégration met à jour la ligne lorsque celle-ci existe dans le cache et que vous avez configuré la transformation Recherche pour qu'elle mette à jour les lignes dans le cache. Le service d'intégration met à jour la ligne dans le cache en fonction des ports d'entrée. Le service d'intégration marque la ligne comme « mise à jour ».
Il n'apporte aucune modification au cache.
Le service d'intégration n'effectue aucune modification lorsque la ligne existe dans le cache et que vous avez configuré la transformation Recherche pour qu'elle n'insère que de nouvelles lignes. Ou bien, la ligne n'est pas dans le cache, et vous avez configuré les paramètres de manière à mettre à jour les lignes existantes uniquement. Ou alors, la ligne existe dans le cache, mais selon la condition de recherche, aucune modification n'est apportée. Le service d'intégration marque la ligne comme « non modifiée ».
En fonction de la valeur de NewLookupRow, vous pouvez également configurer une transformation Routeur ou Filtre avec la transformation Recherche dynamique pour acheminer des lignes de type « insertion » ou « mise à jour » vers la table cible. Vous pouvez acheminer les lignes non modifiées vers une autre table cible ou vers un fichier plat, ou vous pouvez les annuler.
La figure suivante montre un mappage avec une transformation Recherche utilisant un cache de recherche dynamique :