Comparaisons entre les fonctions de routage
Cette documentation présente des comparaisons quantitatives entre les fonctions de routage des données. Elle décrit le résultat de la comparaison entre les fonctions RUN() et PUT().
Dans cet exemple, les deux mappes exécutées tentent d'effectuer le routage des données d'entrée vers l'une des 20 cibles de sortie possibles. La différence entre les deux mappes réside dans l'utilisation de la fonction RUN() ou PUT() pour effectuer le routage des éléments de données vers une cible de sortie.
Pour chaque mappe, deux scénarios ont été testés, chacun effectuant le traitement de données d'entrée de taille différente. La variation des données d'entrée a pour but d'indiquer l'évolutivité relative entre les deux fonctions dans un contexte de routage.
Le tableau suivant présente les exemples de résultat.
| Taille d'entrée (en octets) | ||
|---|---|---|
| Fonctions de mappage | 128 Ko | 4 Mo |
| PUT() | 0,74 | 13,43 |
| RUN() | 2,14 | 62,22 |
Ce tableau contient le temps d'exécution de chaque exemple de mappe, exprimé en secondes. Même dans le cas de données de taille inférieure, l'exécution de la fonction PUT() est plus rapide. Dans le cas de données d'entrée plus volumineuses, la surcharge liée aux mappes supplémentaires est nettement plus visible dans le traitement de la fonction RUN(). L'exécution de la mappe PUT s'accomplit dans un temps égal à environ un 1/5ème du temps d'exécution de la mappe RUN.
Comparaison des tailles de type
Que le routage des données soit effectué avec la fonction PUT() ou RUN(), une surcharge du temps d'exécution apparaît dans chaque opération de routage. La réduction du nombre de routages exécutés améliore le temps d'exécution. La sélection attentive de la mappe et de la conception de schéma permet de réduire le nombre de routages effectués.
Cette exemple montre l'avantage qu'il y a à réduire le nombre de tentatives de routage. Quatre mappes ont été exécutées, comportant chacune deux tailles de données d'entrée. La différence entre les mappes est visible dans deux aspects principaux. Ces mappes utilisent deux fonctions différentes, PUT() et RUN(), et deux conceptions de schéma distinctes.
Les deux conceptions de schéma différentes sont appliquées aux mêmes sources d'entrée. Dans la première conception de schéma, N1, la carte en entrée consiste en une simple série d'éléments (0:s). Dans la seconde conception de schéma, N100, la carte en entrée consiste en groupes d'éléments. Ces groupes constituent eux-mêmes des séries, (0:100). Le second schéma comprend donc deux niveaux de séries, alors que la première arborescence N1 n'en comporte qu'un.
Le tableau suivant présente les exemples de résultat.
| PUT() | RUN() | |||
|---|---|---|---|---|
| Conception des schémas | 128 Ko | 4 Mo | 128 Ko | 4 Mo |
| N1 | 0,74 | 13,43 | 2,14 | 62,22 |
| N100 | 0,36 | 0,75 | 0,41 | 1,83 |
Ce tableau contient le temps d'exécution des quatre mappes, exprimé en secondes. L'amélioration du temps d'exécution est significative, notamment avec les tailles de données d'entrée plus grandes. Que la mappe utilise la fonction RUN() ou PUT(), la réduction du nombre de routages améliore le temps d'exécution.
Le regroupement des données dans chaque mappe en vue d'augmenter la quantité de données routées n'est pas toujours réalisable. Le degré selon lequel la conception de la mappe ou du schéma permet de réduire le nombre de routages dépend des besoins du processus métier. Cet exemple montre comment améliorer potentiellement le temps d'exécution en réduisant le nombre de tentatives de routage.