Accéder au contenu principal Passer au contenu complémentaire

Microsoft SQL Server Integration Services (SSIS) (Fichier) - Import

Availability-note AWS

Prérequis du pont

Ce pont :
  • nécessite un accès à Internet vers https://repo.maven.apache.org/maven2/ et/ou d'autres sites d'outils permettant de télécharger des pilotes dans <TDC_HOME>/data/download/MIMB/.

Spécifications du pont

Fournisseur Microsoft
Nom de l'outil SQL Server Integration Services (SSIS)
Version de l'outil 9.0 (2005) à 15x (2019)
Site Web de l'outil https://docs.microsoft.com/fr-fr/sql/integration-services/ (uniquement en anglais)
Méthodologie supportée [Data Integration] Multi-Model, Metadata Repository, ETL (Source and Target Data Stores, Transformation Lineage, Expression Parsing) via .Net API
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 : Microsoft/SQL Server Integration Services (SSIS) version 9.0 (2005) à 15.x (2019) via un fichier DTSX XML
Consultez https://docs.microsoft.com/fr-fr/sql/integration-services/
Métadonnées : [Intégration de données] Multimodèle, ETL (Data Stores sources et cibles, Lignage de transformation, Parsage d'expressions)
Composant : MicrosoftSqlServerIs version 11.2.0

AVERTISSEMENT
Ce pont d'import requiert un accès à Internet pour télécharger les bibliothèques tierces :
- par exemple https://repo.maven.apache.org/maven2/ pour télécharger les bibliothèques tierces open source,
- et plus de sites pour d'autres logiciels tiers, comme les pilotes JDBC spécifiques pour les bases de données.

Les bibliothèques tierces téléchargées sont stockées dans $HOME/data/download/MIMB/
- Si le protocole HTTPS échoue, le pont d'import essaye ensuite avec HTTP.
- Si un proxy est utilisé pour accéder à Internet, vous devez configurer ce proxy dans l'environnement JRE (voir l'option -j dans le paramètre Divers).
- Si le pont d'import n'a pas d'accès à Internet, le répertoire $HOME/data/download/MIMB/ peut être copié depuis un autre serveur qui a accès à Internet, où la commande $HOME/bin/MIMB.sh (ou .bat) -d peut être utilisée pour télécharger en une fois toutes les bibliothèques tierces utilisées par tous les ponts.

En exécutant ce pont d'import, vous reconnaissez être responsable des conditions d'utilisation et de toute autre faille de sécurité potentielle liées au téléchargement de ces bibliothèques logicielles tierces.

VUE D'ENSEMBLE
Le pont d'import importe des packages SSIS à partir d'un fichier DTSX.

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

SUPPORT
Fournissez un package de dépannage avec :
- le log de débogage (configurable dans l'interface ou dans conf/conf.properties avec MIR_LOG_LEVEL=6)
- la sauvegarde des métadonnées si disponible (configurable 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).

Lorsqu'un problème est rencontré avec les paramètres SSIS, fournissez une sauvegarde des métadonnées comprenant le(s) paramètre(s). Cela nous permet de reproduire, d'expliquer et, si nécessaire, de corriger le(s) problème(s).


Paramètres du pont

Nom du paramètre Description Type Valeurs Défaut Périmètre
Fichier Spécifiez le chemin d'accès au fichier DTSX duquel réaliser l'import.
Tous les fichiers de connexion externes dépendants ayant une extension "conmg" doivent se trouver dans le même répertoire.
Fichier
*.xml
*.dtsx
   
Directory Chemin d'accès au répertoire contenant les fichiers DTSX à importer. Si vous utilisez le paramètre "Fichier", ne le renseignez pas.
Tous les fichiers de connexion externes dépendants ayant une extension "conmg" doivent se trouver dans le même répertoire.
RÉPERTOIRE      
Fichier à valeurs variables ÉCRASEMENT DE LA CONFIGURATION DE MICROSOFT SQL SERVER
Le fichier définit l'écrasement des variables et paramètres SSIS.

SSIS supporte les paramètres de niveaux des projets et packages (et variables). Le pont les comprend et les utilise pour construire le lignage. Nous supportons les paramètres depuis la version 2005 de SSIS.

Chaque définition consiste en une paire nom/valeur (p. ex. param_name=param_value_override).
Chaque nom doit contenir un préfixe NAMESPACE. Par exemple :
$Project::project_parameter_1=global_override_1
$Package::package_parameter_1=global_override_2
User::user_variable_1=global_override_3
System::system_variable_1=global_override_4

La paire de configurations peut être définie sur ROOT (début du fichier) ou séparée par CONTEXT([Project:project_name.]package_name[.task_name]). Par exemple :
$Project::project_parameter_1=global_override_1 // écrasement ROOT
[PackageName]
$Project::project_parameter_1=global_override_2 // écrasement de package spécifique
[PackageName.TaskName]
User::task_variable_1=global_override_3 // écrasement d'une tâche spécifique

Pour un import de plusieurs projets, CONTEXT nécessite un préfixe de projet. Par exemple :
$Project::project_parameter_1=global_override_1 // ROOT, écrasement de tous les projets
[Project:Project_1]
$Project::project_parameter_1=global_override_2 // project "Project_1" écrasement de package spécifique
[Project:Project_1.PackageName.TaskName]
$Project::project_parameter_1=global_override_3 // project "Project_1" écrasement de tâches et packages spécifiques
[Project:Project_2.PackageName]
$Project::project_parameter_1=global_override_4 // project "Project_2" écrasement de package spécifique

Pensez à utiliser le fichier si SSIS emploie des variables (sans valeur par défaut raisonnables) dans des instructions SQL. Il permet de comprendre le lignage dans les instructions SQL.

Lorsque la même variable est définie plusieurs fois dans un contexte, la dernière définition est utilisée. Toutefois, lorsque la même variable est définie dans les contextes [Package] et [Package.Task], la définition du contexte du niveau supérieur, [Package.Task], est utilisée.

Les noms de variables sont sensibles à la casse. Le fichier écrase les valeurs de variable par défaut si elles sont définies dans SSIS.
Fichier
*.txt
*.ini
*.var
*.properties
   
Encodage Spécifie le jeu de caractères d'encodage du fichier source pour "Exécuter la tâche SQL" lorsque la propriété "Type source SQL" est définie sur "Connexion au fichier". ÉNUMÉRATION
Européen central et oriental (ISO-8859-2)
Européen central et oriental (Windows-1250)
Chinois traditionnel (Big5)
Chinois simplifié (GB18030)
Chinois simplifié (GB2312)
Cyrillique (ISO-8859-5)
Cyrillique (Windows-1251)
DOS (IBM-850)
Grec (ISO-8859-7)
Grec (Windows-1253)
Hébreu (ISO-8859-8)
Hébreu (Windows-1255)
Japonais (Shift_JIS)
Coréen (KS_C_5601-1987)
Thaï (TIS620)
Thaï (Windows-874)
Turc (ISO-8859-9)
Turc (Windows-1254)
UTF-8 (UTF-8)
UTF-16 (UTF-16)
Européen occidental (ISO-8859-1)
Européen occidental (ISO-8859-15)
Européen occidental (Windows-1252)
Encodage de la locale
Aucune conversion d'encodage
windows-1252  
Password Valeur du mot de passe du package protégé. MOT DE PASSE      
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 MICROSOFT SQL SERVER IS
-s Activez la spécification des mappings entre les entrées et sorties externes des scripts de transformation. Les entrées vont dans une table de la base de données "_Script" et les sorties viennent d'une table de la base de données. Les relations des mappings entre les entrées et les sorties peuvent être spécifiées en définissant un mapping entre ces tables.

Par défaut, le pont d'import interconnecte toutes les entrées à toutes les sorties dans les scripts de transformation.

-p <chemin d'accès à dtutil.exe>

dtutil.exe est un utilitaire Microsoft qui permet de déchiffrer des fichiers protégés. Il n'est disponible que pour Windows. Cet utilitaire est une version spécialement conçue pour SQL Server. Lorsque différentes versions de SQL Server sont installées, utilisez la version d'utilitaire appropriée.
L'import tente de trouver et d'utiliser dtutil.exe automatiquement en recherchant le fichier exécutable dans l'emplacement par défaut des différentes versions de SQL Server, en commençant par la plus récente. Utilisez cette option si l'import ne parvient pas à localiser le dtutil.exe et rapporte une erreur. Par ex.
-p 'C:\Program Files\Microsoft SQL Server\120\DTS\Binn\dtutil.exe'

-connection.fullyqualifiedname

Ajoute un préfixe aux noms de connexions avec les mots-clés {$project_name}:{$package_name}:. Cela permet de distinguer les connexions du même nom dans les différents packages.

-connection.catalogname <booléen>

Contrôle le suffixe #{$catalog_name} avec les noms de connexions de bases de données relationnelles.
-connection.catalogname false

-environment <chaîne de caractères>

Spécifiez l'environnement utilisé au format "environment_folder\environment_name". Actif si la variable d'environnement est utilisée.

-cd <chaîne de caractères>

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)
"Microsoft SQL Server Integration Services (SSIS) (Fichier)"
Métamodèle
Microsoft SQL Server IS (Tâche de flux de données)
Mapping des commentaires
     
AggregationTransformation Aggregate (Agréger)  
Description Description  
Name (Nom) Name (Nom)  
ConnectionDataAttribute Variable, Colonne de résultat, Colonne externe  
Description Description  
Name (Nom) Name (Nom)  
ConnectionDataSet Variables, Table, Procédure stockée, Fichier  
Description Description  
Name (Nom) Name (Nom)  
ConnectionNamespace Directory  
Description Description  
Name (Nom) Name (Nom)  
ConnectionPackage Database Schema  
Description Description  
Name (Nom) Name (Nom)  
DiModel Tâche de flux de données  
Description Description  
Name (Nom) Name (Nom)  
ExpressionTransformation Mapping de caractères, Colonne dérivée, Conversion de données  
Description Description  
Name (Nom) Name (Nom)  
FilteringTransformation Séparateur CDC, Fractionnement conditionnel  
Description Description  
Name (Nom) Name (Nom)  
GenericConnectedTransformation Composant de script, Transformation de cache, Commande OLE DB, Dimension à évolution lente  
ConnectionName Connection Manager (Gestionnaire de connexions)  
Description Description  
Name (Nom) Name (Nom)  
GenericTransformation Échantillonnage du pourcentage, Import de colonne, Regroupement flou, Composant personnalisé, Générique, Export de colonne, Retrait du pivot, Requête d'exploration de données, Multidiffusion, Échantillonnage des lignes, Audit, Distributeur de données équilibrées, Pivot, Nombre de lignes, Copie de colonne @nativeType='Import Column', DataMiningQuery,MultiCast,ExportColumn,CopyColumn,ImportColumn,OleDbCommand
Description Description  
Name (Nom) Name (Nom)  
JoinTransformation Fusionner la jointure  
Description Description  
Name (Nom) Name (Nom)  
LookupTransformation Extraction de termes, Lookup, Lookup flou, Lookup de terme  
ConnectionName Connection Manager (Gestionnaire de connexions)  
Description Description  
Name (Nom) Name (Nom)  
ReaderTransformation Source ODBC, Source Excel, Source fichier plat, Source OLE DB, Source CDC, Source ADO NET, Source, Source XML, Source fichier brut  
ConnectionName Connection Manager (Gestionnaire de connexions)  
Description Description  
Name (Nom) Name (Nom)  
SortingTransformation Trier  
Description Description  
Name (Nom) Name (Nom)  
StoreConnection Connexion  
Description Description  
Name (Nom) Name (Nom)  
SystemType Type du système  
TransformationDataAttribute Colonne  
Description Description  
Name (Nom) Name (Nom)  
TransformationDataSet Entrée, Sortie conditionnelle, Sortie  
Description Description  
Name (Nom) Name (Nom)  
UnionTransformation Union sur tout, Fusionner  
Description Description  
Name (Nom) Name (Nom)  
WriterTransformation Destination, Destination du Streaming de données, Traitement des partitions  
ConnectionName Connection Manager (Gestionnaire de connexions)  
Description Description  
Name (Nom) Name (Nom)  

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.