Une application commune pour MapForce sont des données migrantes entre les bases de données MySQL et PostgreSQL. MapForce rend le tout facile avec les outils de mappage de données drag-and-drop graphiques, y compris une bibliothèque de filtres enrichie et des fonctions de traitement des données pour transformer les données source.
L’assistant de connexion de la base de données dans MapForce facilite la connexion. Les connexions SQLite sont prises en charge comme des connexions natives, directes dans le fichier de base de données SQLite. Aucun pilote séparé n’est requis. Les connexions PostgreSQL sont prises en charge comme connexions natives et comme connexions basées sur pilote à travers les interfaces (pilotes) telles que ODBC ou JDBC. Les connexions natives ne requièrent aucun pilote.
Lorsque vous chargez les structures de base de données MySQL et PostgreSQL dans le volet de mappage, MapForce interprète automatiquement le schéma de base de données, vous permet de choisir des tables et modes de base de données disponibles et reconnait des relations de table.
Une fois que vous avez chargé tous les modèles de contenu nécessaires pour votre mappage de base de données, terminez le mappage en glissant les lignes de connexion entre les structures de source et de cible.
En utilisant une approche MapForce no-code, il est facile de répondre aux exigences de transformation des données communes, par exemple :
De nombreux mappages de base de données nécessitent la transformation de données entre la source et la cible sur la base de conditions booléennes ou d'instructions SQL et SQL/XML. Vous devrez éventuellement effectuer des comparaisons logiques, des calculs mathématiques ou des opérations de strings, contrôler les données de base de données d'une valeur particulière et procéder à d'autres modifications des données. Dans la capture d'écran ci-dessus, les fonctions de traitement des données apparaissent comme des cadres entre les lignes reliant le modèle de données source et cible.
Les fonctions de traitement des données vous permettent d'effectuer des mappages de base de données avancés très rapidement pour une multitude d'exigences de transformations concrètes
Une fois que votre mappage a été défini, le moteur intégré de MapForce vous permet de consulter et d'enregistrer les résultats en un clic.
Votre mappage MySQL en PostgreSQL produira la sortie sous forme de scripts SQL (par ex., instructions SELECT, INSERT, UPDATE et DELETE) qui sont exécutés par rapport à la base de données cible directement depuis l’intérieur de MapForce.
Après avoir consulté la sortie, vous aurez l’option d’automatiser le processus de transformation des données via MapForce Server.
Le traçage de sortie de base de données permet de consigner dans un fichier journal tous les changements effectués par un projet de mappage dans la base de données PostgreSQL ou MySQL lorsque le mappage est exécuté.
Lorsque le traçage est activé, des événements comme des insertions de base de données ou des actions de mise à jour, ou bien des erreurs sont enregistrées dans un fichier XML que vous pouvez analyser ultérieurement ou traiter de manière autonome.
Le traçage de base de données peut être activé au niveau du composant de base de données, de table, de procédure stockée, ou de champ de base de données. Vous pouvez choisir de tracer tous les messages ou seulement des erreurs, ou vous pouvez désactiver le traçage complètement.
Une fois que vous avez déterminé le niveau de traçage souhaité, le composant de base de données touché dans le projet de mappage est étendu par le biais d’une arborescence XML montrant la structure de journal. Si vous souhaitez un autre format que XML pour votre fichier journal, vous pouvez mapper des données depuis ce fichier vers un autre format de données pris en charge par MapForce (par exemple, un fichier de texte ou même une autre base de données).
En cliquant sur la touche Sortie pour consulter le résultat du mappage, le développeur peut aussi consulter un exemple d’un journal de traçage lorsque le mappage est exécuté.
MapForce propose une gestion de transaction de base de données pour annuler la partie touchée de la conversion de base de données lorsqu’une erreur est lancée et traitée en option avec le reste du mappage.
Parfois une erreur se produit qui n’empêche pas de poursuivre avec le reste d’un mappage de base de données, comme par exemple si certaines contraintes de base de données empêchent l’insertion ou la mise à jour de données invalides.
L’activation de la gestion de transaction de base de données contiendra tous les changements effectués par le composant de base de données dans une transaction qui sera annulée en cas d’erreur, et vous pouvez choisir soit de continuer avec le reste du mappage soit d’arrêter l’exécution du mappage. Vous pouvez activer des transactions au niveau du composant de base de données au niveau d’action de table.
Cela est très utile lorsque le designer de mappage souhaite capturer des données entrantes valides et simplement ignorer des données invalides.
Afin de compléter ses fonctions de mappage de base de données et d'intégration, MapForce contient un onglet de Requête de base de données pour l'exécution directe de requêtes de bases de données. Lorsque vous vous connectez à une base de données à l'aide de l'onglet de Requête de base de données, MapForce affiche ses tables dans une arborescence hiérarchique dans le panneau de navigation. MapForce ne migre non suelement MySQL et PostgreSQL. La prise en charge spécialisée est disponible pour :
Vous pouvez ensuite utiliser l'onglet d'éditeur SQL pour afficher, éditer et exécuter les instructions SQL, soit en ouvrant des fichiers SQL existants, soit en créant des instructions SQL à partir de zéro en utilisant les fonctions glisser/déposer et de remplissage automatique.
Vous pouvez exécuter votre script SQL et afficher les résultats de manière tabulaire et vous pouvez enregistrer les données extraites et le script SQL individuellement dans des fichiers séparés.
Les paramètres clés de base de données MapForce vous permettent de personnaliser comment ajouter les valeurs clé primary et foreign à une base de données qui est une cible de mappage de données. Vous pouvez soit fournir des valeurs pour les clés depuis MapForce, soit laisser le système de base de données gérer la génération des valeurs automatiques.
Dans des situations où les relations clé primary et/ou foreign ne sont pas définies explicitement dans vos tables de base de données, MapForce vous permet de définir ces relations inline, sans effet sur les données de source.
Lorsque vous mappez sur une base de données, MapForce vous permet de sélectionner les actions de tables de base de données pour contrôler la manière dont les données sont écrites dans la base de données MySQL ou PostgreSQL. Cela vous confère une pleine flexibilité pour automatiser les tâches de gestion de données les plus avancées.
La fenêtre de dialogue conviviale Actions de table de base de données vous permet de définir les colonnes dans lesquelles la table sélectionnée sera utilisée afin de déterminer quelle action (INSERT, UPDATE, DELETE) doit être exécutée dans la base de données.
Cela vous confère une flexibilité inouïe dans la manipulation des lignes de base de données en réponse aux données XML, base de données, EDI, XBRL, fichier plat, Excel, JSON, services Web ou autres données de base de données par le biais de MapForce.
MapForce offre une prise en charge robuste pour les procédures stockées en tant que composants d'entrée (des procédures qui fournissent des résultats) ou en tant que composants de sortie (des procédures qui insèrent ou mettent à jour des données). Ou bien encore, les procédures stockées peuvent être insérées en tant qu'un appel semblable à une fonction permettant aux utilisateurs de fournir des données d'entrée, d'exécuter la procédure stockée et de lire/mapper les données de sortie en d'autres composants.
Cette capture d'écran montre le mappage d'une procédure stockée dans un serveur SQL Server pour créer un fichier XML. La procédure retourne une table de données affichant tous les managers contenus dans la chaîne de commande situés au-dessus de l'ID de l'employé spécifié, fournie en tant que paramètre d'entrée. Dans cet exemple, la constante 67.
Le paramètre peut aussi être fourni en tant que valeur calculée ou en tant qu'élément de données extrait d'un autre endroit dans la base de données.
MapForce fournit un menu contextuel qui permet aux utilisateurs d'exécuter la procédure stockée pour révéler la structure de données pour le mappage. L'exécution du mappage illustré génère la sortie XML.
Les requêtes SQL qui fonctionnent dans la base de données ne sont pas toujours suffisantes pour les tâches de mappage de données complexes. MapForce fournit des fonctions de tri de base de données supplémentaires par le biais du composant SQL-WHERE/ORDER pour l'entrée de base de données qui nécessite un traitement supplémentaire.
Le dialogue Actions de table de base de données prend en charge la comparaison de valeur NULL. Les comparaisons NULL-aware permettent de mieux gérer des BD qui contiennent des valeurs null. Les utilisateurs de MapForce peuvent configurer un mappage de BD pour faire une comparaison de données de manière NULL-aware.
Le mappage de données à droite a pour but de mettre à jour la table cible sans insérer des entrées doubles. Les deux tables sont définies, permettant au champ d'e-mail d'être NULL, donc les entrées de nom correspondantes avec des champs d'e-mail NULL peuvent exister dans chaque table.
Cliquer sur l'icône Actions à côté de la table de base de données CIBLE. La case à cocher NULL égal située à côté du champ E-mail permet à MapForce de traiter les valeurs NULL dans la source et la cible de manière égale, même si elles ne sont pas considérées comme égales de par les règles de base de données.
Altova MapForce Server contient le moteur de transformation de données intégré développé pour MapForce et fonctionne dans les environnements de serveur. MapForce Server réalise des transformations de données pour PostgreSQL à MySQL ou toutes les combinaisons de XML, base de données, EDI, XBRL, fichier plat, Excel JSON et/ou service web à l'aide des mappages de données prétraités et optimisés stockés dans les fichiers d'exécution basés sur des mappages de données définis dans MapForce Server. MapForce Server révolutionne la transformation de données avec des capacités de serveur permettant un traitement parallèle et un multi-threading, une fusion bulk SQL, prise en charge multi-plateforme, etc.
Le pré-traitement permet d'accélérer la performance et de réduire l'empreinte mémoire pour la plupart des mappages de données. MapForce Server fonctionne sous la gestion de FlowForce Server, dans une configuration individuelle exécutée depuis une ligne de commande ou par programmation via un API.
Une fois qu'un mappage MapForce a été conçu et testé, il peut être exécuté par MapForce Server pour automatiser les processus à transformations répétitives.
MapForce pré-traite et optimise les mappages de données, les stocke dans des fichiers d'exécution MapForce Server pour une exécution par ligne de commande par MapForce Server, et les charge dans les tâches FlowForce Server.
Lorsque MapForce Server fonctionne sous la gestion de FlowForce Server, les mappages de données sont exécutés en tant qu'étapes de tâche de FlowForce Server, sur la base de déclencheurs définis en tant que partie intégrante de la tâche de FlowForce Server. Par exemple, un nouveau document d'instance XBRL atterrit dans un répertoire qui déclenche une tâche à plusieurs étapes FlowForce Server qui validera tout d'abord le fichier avec RaptorXML+XBRL Server, puis exécutera MapForce Server pour extraire certaines données depuis XBRL et l'insèrera dans une base de données.