Utilisation de l'itération avec un dataflow intégré
Les paramètres d'itération indiquent la manière dont un dataflow intégré doit traiter les enregistrements entrants. Par défaut, un dataflow intégré traite individuellement chaque enregistrement, exactement comme le ferait tout autre stage du dataflow. En revanche, si vous utilisez l'itération, vous pouvez traiter des groupes d'enregistrements ensemble, ce qui peut s'avérer utile lorsque, par exemple, vous effectuez des comparaisons ou des calculs en fonction de groupes d'enregistrements et non de l'ensemble des données d'entrée. Vous pouvez également utiliser l'itération pour appliquer des options de stage en fonction des données de chaque enregistrement.
Il existe deux types d'itération : l'itération par enregistrement et l'itération par groupe. Dans l'itération par enregistrement, un dataflow intégré traite un enregistrement à la fois et le résultat est envoyé au stage suivant du dataflow intégré. L'itération par enregistrement s'avère utile si vous souhaitez définir des options de stage par enregistrement à l'aide de valeurs de champ.
Dans l'itération par groupe, les enregistrements sont regroupés par un champ clé et le dataflow intégré traite chaque groupe. Tous les enregistrements d'un groupe sont traités en une itération, puis le groupe est écrit dans le stage suivant du dataflow intégré. Utilisez l'itération par groupe pour traiter des groupes d'enregistrements associés, ainsi que pour définir des options de stage à utiliser lors du traitement du groupe d'enregistrements. Par exemple, vous souhaitez peut-être regrouper des enregistrements par ID client pour pouvoir analyser les enregistrements de chaque client, pour déterminer, par exemple, le magasin dans lequel chaque client se rend le plus souvent.
Si vous utilisez l'itération, vous devez tenir compte de son impact sur les performances. À chaque lancement d'une nouvelle itération, l'initialisation du dataflow intégré requiert davantage de mémoire. Ce besoin accru en mémoire peut être considérable, en particulier si vous disposez de dataflows intégrés au sein d'autres dataflows intégrés. Par exemple, si un dataflow intégré effectue 1 000 itérations et qu'il contient un autre dataflow qui lui aussi effectue 1 000 itérations, le nombre total d'itérations est de 1 000 000. L'utilisation de l'itération par enregistrement a un impact plus important sur les performances, car chaque enregistrement déclenche une nouvelle itération.