IBM InfoSphere DataStage - Import
Spécifications du pont
Fournisseur | IBM |
Nom de l'outil | InfoSphere DataStage |
Version de l'outil | 7.5 à 11.x |
Site Web de l'outil | http://www.ibm.com/software/data/infosphere/datastage/ (uniquement en anglais) |
Méthodologie supportée | [Intégration de données] Multimodèle, ETL (Data Stores sources et cibles, Lignage de transformation, parsage des expressions) via un fichier XML et DSX |
Profiling de données | |
Collecte incrémentale | |
Collecte multi-modèle | |
Navigation dans le référentiel distant pour sélectionner un modèle |
SPÉCIFICATIONS
Outil : IBM/InfoSphere DataStage version 7.5 à 11.x via un fichier XML et DSX
Consultez http://www.ibm.com/software/data/infosphere/datastage/
Métadonnées : [Intégration de données] Multimodèle, ETL (Data Stores sources et cibles, Lignage de transformation, Parsage d'expressions)
Composant : AscentialDataStage version 11.2.0
VUE D'ENSEMBLE
Ce pont d'import lit un fichier DSX ou XML généré par DataStage.
PRÉREQUIS
n/a
FOIRE AUX QUESTIONS
n/a
LIMITATIONS
Consultez les limitations générales connues à l'adresse MIMB Known Limitations ou dans Documentation/ReadMe/MIMBKnownLimitations.html où elles sont regroupées
Certains modèles contiennent des caractères spéciaux nécessitant un encodage pour un transfert optimal. En cas d'export de DataStage, le format XML présente souvent des problèmes, alors que DSX fournit des informations d'encodage correctes. Ce problème se manifeste généralement par des erreurs de parsing XML. Exportez des fichiers DSX de DataStage afin d'éviter ces désagréments.
SUPPORT
Fournissez un package de dépannage avec :
- le log de débogage (peut être défini dans l'UI ou dans conf/conf.properties avec MIR_LOG_LEVEL=6)
- la sauvegarde des métadonnées si disponible (peut être configurée dans le paramètre Divers avec l'option -backup, même si cette option commune n'est pas implémentée pour tous les ponts pour des raisons techniques).
Paramètres du pont
Nom du paramètre | Description | Type | Valeurs | Défaut | Périmètre | |||
Fichier | DataStage fournit deux formats d'export : XML et DSX. Ce pont d'import supporte les deux, mais XML peut présenter des problèmes. Pour créer un de ces fichiers : - Ouvrez un projet dans le client Designer. - Sélectionnez le dossier de Jobs que vous souhaitez exporter en tant que modèle. - Sélectionnez le menu Exporter. - Sélectionnez l'élément de menu de Composants DataStage... Si l'erreur "Échec de l'analyse" survient pour un fichier DataStage XML, elle provient probablement d'une erreur d'encodage dans le fichier XML. Pour contourner ce problème, exportez le modèle en tant que fichier DSX. |
Fichier |
|
Éléments obligatoires | ||||
Périmètre d'import | Ce paramètre est utilisé pour limiter le périmètre des métadonnées importées des sélections de fichiers XML. Les options comprennent : - Uniquement les définitions des tables - Les séquences et les Jobs standalone, y compris les définitions de tables utilisées dans ces éléments - Tous les objets présents dans le fichier XML sélectionné. Notez que pour quasiment toutes les applications, y compris l'analyse de lignage et d'impact, ce paramètre doit être défini sur Séquences et Jobs standalone, car cette configuration importera toutes les sources, destinations et transformations présentes dans le fichier DataStage. |
ÉNUMÉRATION |
|
Séquences et Jobs standalone | ||||
Fichier à valeurs variables | Pour n'importe quel job DataStage, les paramètres peuvent être définis dans un fichier Configuration.ini, et/ou dans des ensembles de paramètres (par ex. paramètres source vs cible) où chaque ensemble de paramètres offre plusieurs options de valeurs pour les mêmes variables (par ex. valeurs de développement vs de production). Ainsi, les paramètres d'un job DataStage donné peuvent être définis dans un répertoire pouvant contenir plusieurs fichiers de variables, comme suit : /home/DataStage/ .../ini/ ....../Project1.ini ....../Project2.ini .../ParameterSets/ .../project1_paramSets ....../ParameterSetName1/ .....,..../ParameterSet1Option1_valueFile ........../ParameterSet1Option2_valueFile ....../ParameterSetName2/ .....,..../ParameterSet2Option1_valueFile ........../ParameterSet2Option2_valueFile .../project2_paramSets ....../ParameterSetName3/ .....,..../ParameterSet3Option1_valueFile ........../ParameterSet3Option2_valueFile ....../ParameterSetName4/ .....,..../ParameterSet4Option1_valueFile ........../ParameterSet4Option2_valueFile Ce paramètre du pont d'import _Fichier de valeurs des variables_ peut être configuré par : - un fichier de variables unique, comme : /home/DataStage/Job1/configuration.ini /home/DataStage/Job1/ParameterSetName1/ParameterSetValueOption1/VariableValueFile /tmp/Job1/CustomerGeneratedCustomCompleteVariableValueFile - ou un répertoire, comme : /home/DataStage/Job1/ qui lit tous les fichiers, y compris le fichier configuration.ini à la racine et les éventuels fichiers de variables dessous. Avertissement 1 : aucun autre type de fichier ne doit se trouver dans ce répertoire, par exemple, pas de fichier job.dsx Avertissement 2 : si vous n'effectuez pas de copie et que vous supprimez les fichiers de paramètres des options que vous ne souhaitez pas conserver, alors les valeurs des paramètres seront celles définies dans le dernier fichier de valeurs des options lu. DataStage utilise des variables de substitution au sein de multiples paramètres susceptibles d'être spécifiés dans des Jobs et connexions. Très souvent, les valeurs devant être assignées à ces variables ne sont pas fournies par le fichier XML analysé par ce pont d'import. Dans ce cas, le pont d'import émet un avertissement dans le log énonçant qu'il lui est "impossible de déterminer la valeur d'une variable" et qu'il laissera ce nom de variable sans substitution dans le modèle généré. Afin de déterminer les valeurs de substitution appropriées pour ces variables, le pont d'import lit un fichier de valeurs de variables avec les noms de variables et conclut avec la valeur correcte de substitution. Saisissez le nom de chemin d'accès à un fichier de valeur de variable dans ce paramètre. Le répertoire spécifié doit contenir des fichiers de paramètres ou des ensembles de paramètres ordinaires. Ce répertoire ne doit pas contenir d'autres fichiers. Tous les fichiers ayant l'extension .ini doivent être des fichiers de paramètres ordinaires. Les autres fichiers seraient traités comme des fichiers de valeurs d'un ensemble de paramètres. Généralement, les fichiers d'un ensemble de paramètres n'ont pas d'extension et le nom défini s'appuie sur le nom du répertoire parent. En général, les noms de variables qui font référence aux variables d'environnement commencent par le symbole dollar ($). Les noms de variables ne sont pas sensibles à la casse et voient leurs espaces de début et de fin supprimés. Si une variable est trouvée et que sa valeur est introuvable dans le fichier de valeurs de variables, ou qu'aucun fichier de valeurs de variables n'est spécifié ici, le pont d'import essaie d'utiliser les variables d'environnement du système d'exploitation (au moment de l'exécution du pont d'import) pour résoudre la valeur. Le fichier de paramètres peut être utilisé pour spécifier le type système pour les noms de connexion. Utilisez le format : 'CONNECTION.'<ConnectionName>=<SystemType> <SystemType>:={'DB2/UDB'|'MICROSOFT SQL SERVER'|'ORACLE'|'TERADATA'|'SYBASE SQL SERVER'|'INFORMIX'|'HIVE'} Il est utile pour une connexion ODBC de savoir que le système de base de données réel est derrière une telle connexion. |
Fichier | *.* | |||||
Miscellaneous | INTRODUCTION Spécifiez les options Divers, commençant par un tiret et suivies éventuellement par des paramètres, par exemple : -connection.cast MyDatabase1="MICROSOFT SQL SERVER" Certaines options peuvent être utilisées plusieurs fois, si applicable, par exemple : -connection.rename NewConnection1=OldConnection1 -connection.rename NewConnection2=OldConnection2; La liste d'options pouvant être une longue chaîne, il est possible de la charger à partir d'un fichier qui doit être situé dans ${MODEL_BRIDGE_HOME}\data\MIMB\parameters et avoir l'extension .txt. Dans ce cas, toutes les options doivent être définies au sein de ce fichier comme seule valeur de ce paramètre, par exemple ETL/Miscellaneous.txt OPTIONS DE L'ENVIRONNEMENT JAVA -java.memory <taille maximale de la mémoire Java> (anciennement -m) 1 Go par défaut sur un JRE de 64 bits ou tel que défini dans conf/conf.properties, par exemple -java.memory 8G -java.memory 8000M -java.parameters <options de ligne de commande de Java Runtime Environment> (anciennement -j) Cette option doit être la dernière dans le paramètre Divers car tout le texte après -java.parameters est passé tel quel à la JRE. Par ex. -java.parameters -Dname=value -Xms1G L'option suivante doit être définie lorsqu'un proxy est utilisé pour accéder à Internet (cela est essentiel pour accéder à https://repo.maven.apache.org/maven2/ et exceptionnellement à quelques autres sites d'outils) afin de télécharger les bibliothèques logicielles tierces nécessaires. Note : La majorité des proxys sont relatifs au chiffrement (HTTPS) du trafic extérieur (à l'entreprise) et à la confiance en le trafic intérieur pouvant accéder au proxy via HTTP. Dans ce cas, une requête HTTPS atteint le proxy via HTTP où le proxy la chiffre en HTTPS. -java.parameters -java.parameters -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=3128 -Dhttp.proxyUser=user -Dhttp.proxyPassword=pass OPTIONS D'IMPORT DU MODÈLE -model.name <nom modèle> Écrase le nom du modèle, par ex. -model.name "My Model Name" -prescript <nom script> Cette option permet d'exécuter un script avant l'exécution du pont. Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh. Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..). Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec. Par exemple : -prescript "script.bat arg1 arg2" -postscript <nom script> Cette option permet d'exécuter un script après l'exécution réussie du pont. Le script doit se situer dans le répertoire bin (ou comme spécifié dans M_SCRIPT_PATH dans conf/conf.properties) et avoir une extension .bat ou .sh. Le chemin d'accès au script ne doit pas inclure de symbole relatif au répertoire parent (..). Le script doit retourner le code de sortie 0 pour indiquer un succès ou une autre valeur pour indiquer un échec. Par exemple : -postscript "script.bat arg1 arg2" -cache.clear Vide le cache avant l'import et va exécuter un import complet avec collecte incrémentale. Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée. Si le modèle n'a pas été modifié et que le paramètre -cache.clear n'est pas utilisé (collecte incrémentale), une nouvelle version ne sera pas créée. -backup <répertoire> Cette option permet de sauvegarder les métadonnées d'entrée du pont à des fins de débogage. Le <répertoire> fourni doit être vide. L'utilisation principale de cette option concerne les ponts d'import des data stores, en particulier les ponts d'import basés sur des bases de données JDBC. Notez que cette option n'est pas opérationnelle sur certains ponts, notamment : - les ponts d'import basés sur des fichiers (car des fichiers d'entrée peuvent être utilisés à la place) - les ponts d'import de référentiels d'intégration de données/BI (car les outils natifs de sauvegarde du référentiel peuvent être utilisés à la place) - Certains ponts d'import basés sur des API (par ex. basés sur COM) pour des raisons techniques. OPTIONS DES CONNEXIONS DE DONNÉES Les connexions de données sont produites par les ponts d'import, généralement à partir des outils ETL/DI et BI pour faire référence aux data stores sources et cibles qu'elles utilisent. Ces connexions de données sont ensuite utilisées par les outils de gestion des métadonnées pour connecter ces dernières (connexion des métadonnées) à leurs data stores réels (par exemple, bases de données, système de fichiers, etc.) afin de produire le lignage complet de flux de données et de l'analyse d'impact de bout en bout. Le nom des connexions de données doit être unique dans chaque modèle d'import. Les noms de connexion de données utilisés dans les outils de conception DI/BI sont utilisés quand cela est possible, sinon ils sont générés en étant courts mais significatifs, comme le nom de la base de données/du schéma, le chemin d'accès au système de fichiers ou l'URI (Uniform Resource Identifier). L'option suivante vous permet de manipuler les connexions. Ces options remplacent les options héritées -c, -cd et -cs. -connection.cast ConnectionName=ConnectionType Lance une connexion à une base de données générique (par exemple ODBC/JDBC) pour un type de base de données précis (par exemple ORACLE) pour une analyse SQL, par exemple -connection.cast "My Database"="MICROSOFT SQL SERVER". La liste des types de connexions aux data stores comprend : ACCESS APACHE CASSANDRA DB2/UDB DENODO GOOGLE BIGQUERY HIVE MYSQL NETEZZA ORACLE POSTGRESQL PRESTO REDSHIFT SALESFORCE SAP HANA SNOWFLAKE MICROSOFT SQL AZURE MICROSOFT SQL SERVER SYBASE SQL SERVER SYBASE AS ENTERPRISE TERADATA VECTORWISE HP VERTICA -connection.rename OldConnection=NewConnection Renomme une connexion existante, par exemple, par ex. -connection.rename OldConnectionName=NewConnectionName Plusieurs connexions de bases de données existantes peuvent être renommées et fusionnées en une nouvelle connexion de base de données, par exemple : -connection.rename MySchema1=MyDatabase -connection.rename MySchema2=MyDatabase -connection.split oldConnection.Schema1=newConnection Scinde une connexion de base de données en une ou plusieurs connexions de base de données. Une connexion de base de données peut être scindée en une connexion par schéma, par exemple : -connection.split MyDatabase Toutes les connexions de base de données peuvent être fractionnées en une connexion par schéma, par exemple : -connection.split * Une connexion de base de données peut être explicitement fractionnée en une nouvelle connexion de base de données en ajoutant un nom de schéma à une base de données, par exemple : -connection.split MyDatabase.schema1=MySchema1 -connection.map SourcePath=DestinationPath Mappe un chemin d'accès source à un chemin d'accès de destination. Cela est utile pour les connexions aux systèmes de fichiers lorsque différents chemins d'accès pointent vers le même objet (répertoire ou fichier). Sur Hadoop, un processus peut écrire dans un fichier CSV spécifié avec le chemin d'accès complet HDFS, tandis qu'un autre processus lit d'une table Hive implémentée (externe) par le même fichier spécifié à l'aide d'un chemin d'accès relatif avec un nom et une extension de fichier par défaut, par exemple : -connection.map /user1/folder=hdfs://host:8020/users/user1/folder/file.csv Sous Linux, il peut être fait référence à un répertoire (ou à un fichier) donné tel que /data par plusieurs liens symboliques tels que /users/john et /users/paul, par exemple : -connection.map /data=/users/John -connection.map /data=/users/paul Sous Windows, il peut être fait référence à un répertoire donné tel que C:\data par plusieurs lecteurs réseau tels que M: et N:, par exemple : -connection.map C:\data=M:\ -connection.map C:\data=N:\ -connection.casesensitive ConnectionName Écrase les règles de rapprochement insensibles à la casse par défaut pour les identifiants d'objets dans la connexion spécifiée, si le type du data store détecté supporte cette configuration (par ex. Microsoft SQL Server, MySQL etc.), par exemple : -connection.casesensitive "My Database" -connection.level AggregationLevel Spécifie le niveau d'agrégation pour les connexions externes, par exemple -connection.level catalog Liste des valeurs supportées : server (serveur) catalog (catalogue) schema (schéma) (par défaut) OPTIONS ETL Ces options sont disponibles dans tous les ponts d'import de scrit et d'outils d'intégration de données/d'ETL afin de : - traiter tous les parsages SQL - construire des modèles au moment de l'exécution à partir de modèles de conception et de variables d'exécution, - calculer un lignage de synthèse au moment de l'exécution. -etl.summary.add.ultimate (anciennement -ppus) Ajoute la dernière synthèse de lignage d'exécution (peut générer un modèle très volumineux). -etl.summary.only.ultimate (précédemment -ppsp) Produit uniquement la dernière synthèse de lignage d'exécution (peut générer un modèle très volumineux). -etl.connections.add.internal.design (précédemment -pppd) Ajoute les connecteurs internes de données de conception ETL (requis pour la conversion ETL). -etl.connections.remove.input (anciennement -ri) Supprime toutes les connexions de données d'entrée (source), afin de réduire la taille du modèle généré. -etl.transformations.enable.xml Cette option permet le parsage et le support des transformations XML dans des ponts d'import d'intégration de données/ETL comme Informatica PowerCenter, Informatica Developer, Microsoft SSIS, IBM DataStage et Talend Data Integration. Dans le cas d'Informatica, de telles transformations XML correspondent aux fonctionnalités suivantes de PowerCenter https://docs.informatica.com/data-integration/powercenter/10-5/xml-guide/midstream-xml-transformations.html https://docs.informatica.com/data-integration/powercenter/10-5/xml-guide/xml-source-qualifier-transformation.html Notez que cette option peut ralentir l'import de manière considérable. OPTIONS IBM DATA STAGE -Statistics <Statistics_file_path> Pour produire des statistiques d'import ETL, par exemple : -Statistics C:\Temp\Stats.csv -cd: fractionnez ou fusionnez les connexions au système de fichiers par un chemin d'accès au répertoire. Cette option est utile pour fractionner une connexion en au moins deux dossiers racine, qui peuvent être reliés à au moins deux magasins de fichiers. Pour fractionner la connexion "orig_con" en deux connexions : "a_con" se base sur le dossier "a" et le reste est conservé dns la connexion "orig_con" : -cd a_con=orig_con:/a Pour fractionner la connexion "orig_con" en deux connexions : "a_con" se base sur le dossier "root/a" : -cd a_con=orig_con:/root/a - Cette option est utile pour fusionner plusieurs connexions en une. Pour fusionner deux connexions "C:" avec un dossier racine "R1" et "B:" avec un dossier racine "R2" en une connexion "C:" avec deux dossiers racine : "R1" et "R2" : -cd C:\=B:\ |
Chaîne de caractères |
Mapping du pont
Meta Integration Repository (MIR) Métamodèle (se base sur le standard OMG CWM) |
"IBM InfoSphere DataStage" Métamodèle AscentialDataStage |
Mapping des commentaires |
Association | ForeignKey | |
AssociationRole | ForeignKey | |
Multiplicité | Se base sur les informations de clés étrangères | |
Source | Se base sur les informations de clés étrangères | |
AssociationRoleNameMap | ForeignKey | |
Attribut | Colonne | |
Description | Description | |
Name (Nom) | Name (Nom) | |
Facultatif | Nullable | |
BaseType | Colonne, Variable d'étape | |
DataType (TypeDeDonnées) | Type SQL | Voir le tableau de conversion des types de données |
Name (Nom) | Se base sur le type de données | |
PhysicalName | Dérivé du type de données | |
CandidateKey | Colonne | |
Classe | Définition de table | |
CppClassType | Configuré comme ENTITÉ | |
CppPersistent | Configuré à Vrai | |
Description | Description | |
Name (Nom) | Table name (Nom de table) | Nom de la classe Calculé si non configuré |
PhysicalName | Nom physique de la classe. Calculé depuis le champ "Nom" si non configuré | |
ClassifierMap | Étape | 1 pour les variables d'étape (s'il y en a), plus 1 par broche d'entrée ou de sortie |
Name (Nom) | Name (Nom) | |
Operation (Opération) | Constraint, SqlRef, SqlPrimary, SqlInsert | |
DataAttribute | Colonne, Variable d'étape | |
Description | Description | |
Name (Nom) | Name (Nom) | |
DataSet | Étape | 1 pour les variables d'étape (s'il y en a), plus 1 par broche d'entrée ou de sortie |
Name (Nom) | Name (Nom) | |
DatabaseSchema | Définition de table | |
Name (Nom) | Owner | dans l'identifiant de l'enregistrement |
DerivedType | Colonne, Variable d'étape | |
DataType (TypeDeDonnées) | Type SQL | Voir le tableau de conversion des types de données |
Length (Longueur) | Precision | |
Name (Nom) | Type SQL | |
PhysicalName | Dérivé du type de données | |
Échelle | Échelle | |
UserDefined | Configuré à Faux | |
DesignPackage | Catégories des Jobs, Catégories des conteneurs partagés, Catégories des définitions des tables | |
Name (Nom) | Nom, Source.DBDName | depuis la catégorie |
UserDefined | Configuré à Faux | |
FeatureMap | Colonne, Variable d'étape | |
Name (Nom) | Name (Nom) | |
Operation (Opération) | Expression, Dérivation, Valeur initiale | |
ForeignKey | ForeignKey | |
StoreModel | Fichier DataStage | |
Name (Nom) | Se base sur le nom du fichier |