Débogueur interactif pour les projets d'intégration de données

MapForce 2016 introduit un débogueur de mappage de données révolutionnaire qui permet aux développeurs travaillant sur des projets d'intégration de données d'examiner les résultats du mappage étape par étape, afin de diagnostiquer et de perfectionner des projets de toute complexité. MapForce.. outil de débogage de la correspondance des données Cela offre aux utilisateurs une compréhension approfondie du fonctionnement interne précis des projets d'intégration de données et d'ETL, d'une manière qui n'était jamais auparavant possible.

Le débogueur fonctionne avec toutes les correspondances de données MapForce, quelle que soit la combinaison de types de données utilisés : XML, XBRL, JSON, bases de données, fichiers plats, EDI, Excel ou services web, y compris les correspondances enchaînées, les correspondances avec plusieurs composants d'entrée ou de sortie, et les correspondances qui incluent des fonctions définies par l'utilisateur.

Le débogueur de mappage de données MapForce prend en charge les points d'arrêt et les points d'arrêt conditionnels, et propose plusieurs options de pas à pas manuels pour permettre aux utilisateurs de déboguer manuellement un mappage de données ou de reprendre l'exécution après avoir atteint un point d'arrêt, leur permettant ainsi d'accéder à tous les détails nécessaires.

Nous pouvons examiner une session de débogage type pour découvrir les nouvelles fonctionnalités et les améliorations apportées au débogueur de MapForce 2016. La capture d'écran ci-dessous illustre une transformation de données appelée "ClassifyTemperatures" qui est installée avec les fichiers d'exemple de MapForce. Cette transformation lit un fichier d'entrée contenant une liste de températures et de dates, et produit un fichier de sortie qui ajoute des descriptions de classification pour les températures élevées et basses.

La fonctionnalité de points d'arrêt du débogueur MapForce sera familière aux développeurs expérimentés dans le débogage de code source. Les points d'arrêt peuvent être placés sur n'importe quel nœud d'entrée ou de sortie, afin de suspendre l'exécution de la transformation à cet endroit, et les points d'arrêt conditionnels sont également pris en charge.

Définir un point d'arrêt

Nous allons préparer le débogage en ajoutant un point d'arrêt à la correspondance située à la sortie de la fonction "greater" (au centre de l'image ci-dessus). Pour cela, il suffit de cliquer avec le bouton droit de la souris sur la flèche de connexion. Le nouveau point d'arrêt est mis en évidence en rouge.

Le même menu contextuel permet aux utilisateurs d'ouvrir une fenêtre de dialogue pour définir cela comme un point d'arrêt conditionnel. Le résultat de la fonction sera soit vrai, soit faux. Nous pouvons définir le point d'arrêt de manière à ce que l'exécution de la correspondance des données ne s'arrête que si la fonction renvoie "vrai"

Débogage interactif

Une option du menu permet de démarrer le débogage interactif

Le moteur d'exécution intégré de MapForce commence le traitement de la transformation et continue jusqu'à ce que le point d'arrêt soit atteint et que la condition du point d'arrêt soit remplie. Toutes les valeurs intermédiaires sont affichées en rouge sur la conception de la transformation. Pour les transformations complexes et volumineuses, l'affichage des valeurs intermédiaires peut devenir très dense, il est donc possible de déplacer chaque valeur vers un emplacement plus pratique dans la fenêtre de la transformation.

Le mot mis en évidence, "true", indique la dernière valeur générée avant que l'exécution ne soit interrompue.

Les fenêtres d'aide au débogage s'ouvrent automatiquement et fournissent des informations plus détaillées sur tout ce qui s'est produit pendant l'exécution. La fenêtre "Contexte" affiche les nœuds qui ont été traités à partir du fichier d'entrée et les fonctions qui ont été évaluées.

L'entrée "data[7]" indique que sept valeurs de température ont été traitées.

La fenêtre d'aide à la débogage affiche automatiquement tous les résultats générés par la fonction concernée, là où le point d'arrêt est défini. Les six premiers résultats étaient faux. Lorsque la valeur sept a généré un résultat vrai, la condition a été remplie et l'exécution a été interrompue.

La fenêtre "Historique" est très performante. Nous pouvons sélectionner n'importe quel autre nœud de connexion dans le diagramme, et la fenêtre "Historique" affichera une liste de toutes les valeurs qui ont traversé ce nœud pendant l'exécution. Par exemple, nous pouvons sélectionner une connexion d'entrée pour la fonction "plus grand", comme illustré ci-dessous :

Maintenant, la fenêtre "Historique" affiche une liste de toutes les valeurs qui ont traversé ce nœud

Pendant la phase de débogage, nous pouvons passer de la fenêtre de mappage à la fenêtre de sortie et vice versa, afin d'examiner les résultats partiels générés jusqu'à présent, comme illustré ici :

À ce stade, nous avons plusieurs options pour poursuivre :

  • Arrêter la session de débogage
  • Continuez l'exécution jusqu'à ce que le prochain point d'arrêt de débogage soit atteint
  • Continuez le débogage en exécutant les étapes manuellement afin d'examiner attentivement davantage de valeurs intermédiaires

Si le débogage révèle des erreurs ou des défauts dans la conception de la transformation, nous pouvons immédiatement interrompre le processus, modifier la transformation si nécessaire, puis déboguer la version révisée. Nous pouvons définir de nouveaux points d'arrêt ou sélectionner une option de pas à pas manuel pour visualiser chaque valeur intermédiaire générée, ou pour avancer au-dessus de groupes de calculs logiques.

Après avoir avancé plusieurs fois, nous pouvons constater que la valeur "élevé" est générée par une fonction conditionnelle (if-else) et transmise au composant de sortie.

Nous avançons encore plusieurs fois et nous examinons à nouveau les résultats partiels.

La description complète de la température maximale initiale apparaît désormais à la ligne 12, et des résultats supplémentaires ont été générés.

Altova MapForce est un outil de cartographie, de conversion et d'intégration de données graphique, primé, qui permet de faire correspondre des données entre n'importe quelle combinaison de formats XML, bases de données, EDI, XBRL, fichiers plats, Excel, JSON et/ou services web. Le débogueur de cartographie de données MapForce est une fonctionnalité unique, intégrée à un concepteur de cartographie visuelle, et disponible à une fraction du coût d'un système traditionnel d'intégration de données.

Téléchargez une version d'essai gratuite et entièrement fonctionnelle pour l'essayer vous-même !