Qu’est-ce que Microsoft SSIS ?
Microsoft SSISou Services d'intégration SQL Server est un outil de migration et d'intégration de données fourni avec la base de données Microsoft SQL Server qui peut être utilisé pour extraire, intégrer et transformer des données. SSIS est unExtraire, transformer et charger(ETL) solution.
SSIS est une mise à niveau de Data Transformation Services (DTS), qui était une ancienne solution de transformation de données incluse avec SQL Server. L'outil est livré avec la base de données Microsoft SQL Server et est utilisé pour extraire des données de bases de données relationnelles et de fichiers afin de pouvoir les transformer.
Les types de fichiers pris en charge par SSIS incluent XML, les fichiers plats et Microsoft Excel. De nombreuses entreprises utilisent le logiciel comme solution d'entreposage de données. Certaines des tâches que vous pouvez effectuer avec SSIS incluent :
- en cours d'analyse
- Nettoyage
- Chargement
- Transformation
- Agrégation
- Fusion
- Extraction
Historique des versions SSIS
SSIS existe peut-être depuis de nombreuses années, mais il s'agit en fait du successeur d'un autre programme appeléServices de transformation de données(ETD). DTS était un composant de SQL Server 7 et 2000 avant que Microsoft ne décide de mettre à niveau la plate-forme vers la plate-forme SSIS utilisée aujourd'hui par les entreprises. Les versions de SSIS sont les suivantes :
SSIS2005 | La première version de SSIS qui a remplacé DTS. |
SSIS2008/2008 R2 | Amélioration des performances de la version précédente et introduction de nouvelles sources. |
SSIS2012 | Introduction du modèle de déploiement de projet, permettant aux utilisateurs de déployer des projets et des packages entiers sur un serveur plutôt que de se limiter à des packages individuels. |
SSIS2014 | Aucun changement mais ajout de nouvelles sources et transformations via CodePlex et le SQL Server Feature Pack. |
SSIS2016 | SSIS mis à jour afin que l'utilisateur puisse déployer des packages entiers et ajouté des sources cloud et Big Data supplémentaires. |
Pourquoi SSIS est-il important ?
SSIS est important car il fournit à l'utilisateur une plate-forme pour déplacer des données d'une source à une autre. L'utilisateur peut extraire des données de sources telles queBases de données SQL,Bases de données Oracle,Bases de données DB2, etFichiers Microsoft Excelavant de les exporter vers un autre emplacement. D'autres fonctionnalités d'intégration et d'extraction de données rendent la transition plus gérable.
L’une des raisons pour lesquelles SSIS est si largement utilisé est sa polyvalence. La prise en charge du programme pour une gamme de bases de données et son interface utilisateur graphique (GUI) simple aident les nouveaux utilisateurs à effectuer des transformations et des tâches d'entreposage de données. Les utilisateurs ont le contrôle total pour concevoir un processus ETL en fonction de leurs propres exigences.
Article similaire: Outils de surveillance du serveur SQL
Le composant principal SSIS
Un certain nombre de composants principaux constituent l'interface graphique SSIS dans le concepteur SSIS. Ceux-ci inclus:
- Flux de contrôlelanguette– Les flux de contrôle font partie d’un package qui fournit des contraintes de structure, de tâches et de priorité.
- Onglet Flux de données– Extrayez et transformez des données provenant de diverses sources sur l’appareil. Les composants du flux de données incluent les sources, les transformations et les destinations.
- Gestionnaires d'événementslanguette– Créez des tâches en réponse aux événements au moment de l’exécution.
- Onglet Explorateur de packages– Afficher une perspective descendante des éléments du package.
Flux de contrôle
Le flux de contrôle est l'endroit où vous contrôlez le flux de travail des tâches à l'intérieur d'un package et l'ordre dans lequel ces tâches seront exécutées. Vous pouvez l'utiliser via l'onglet Control Flow. Dans SSIS, les flux de contrôle font partie de packages et permettent à l'utilisateur d'exécuter différentes tâches.
Les types de tâches que vous pouvez exécuter incluentexécuterTâches SQL,tâches de flux de données,exécuter des tâches de package,tâches de script,envoyer des tâches de courrier, et plus encore (nous avons discuté des tâches plus en détail ci-dessous). Les flux de contrôle incluent également des contraintes de priorité qui relient les exécutables, les conteneurs et les tâches tout en dictant l'ordre dans lequel effectuer les tâches.
Flux de données
Un flux de données est essentiellement un élément qui vous permet de récupérer des données d'une source, de les transformer et de les placer vers une autre destination. Par exemple, vous pouvez utiliser une tâche de flux de données pour extraire les données d'une base de données et les transformer en fichier Microsoft Excel. Vous pouvez gérer les flux de données via l'onglet Flux de données et les ajouter au flux de contrôle.
Trois composants composent le flux de données :
- Sources– Extrayez des données à partir de sources, notamment de fichiers, de bases de données et d’autres emplacements.
- Transformations– Traitez les données après leur extraction de la source.
- Destinations– Écrivez les données dans leur destination finale.
Dans le cadre du flux de données, vous pouvez choisir les transformations avec lesquelles vous souhaitez préparer les données pour atteindre leur emplacement final et terminer le cycle ETL. Les transformations gèrent des tâches telles quenettoyage des données,fusion,tri,joindre, etdistribuerafin que vous puissiez utiliser les données là où vous en avez besoin.
Gestionnaires d'événements
Les exécutables créent des événements au moment de l'exécution et vous pouvez utiliser le gestionnaire d'événements pour effectuer des tâches en réponse. Les tâches que vous pouvez effectuer incluent le nettoyage du stockage de données temporaire, la récupération des informations système, l'actualisation des données dans un tableau et l'envoi d'e-mails pour vous avertir en cas d'erreur ou d'échec d'une tâche.
Les gestionnaires d'événements sont similaires aux packages dans le sens où ils ont des tâches et des conteneurs. Tu peuxcréer des gestionnaires d'événements personnalisésdans l’onglet Gestionnaires d’événements, puis ajoutez-les à un package.
Explorateur de packages
Dans l'onglet Explorateur de packages, vous pouvez afficher la hiérarchie des éléments d'un package, notamment les gestionnaires de connexions, les fournisseurs de journaux, les exécutables, les contraintes de priorité, les paramètres, les gestionnaires d'événements, les variables, les tâches et les conteneurs. L'explorateur de packages est important pour vérifier le contenu d'un package.
Article similaire: Optimisation des performances SQL
Forfaits SSIS
L'une des tâches fondamentales que vous devrez apprendre lors de l'utilisation de SSIS est de savoir comment créer un package. Un package est un ensemble de connexions, d'éléments de flux de contrôle, d'éléments de flux de données, de gestionnaires d'événements, de paramètres et de configurations que vous utilisez pour traiter les données. Le contenu d’un package peut être décomposé en trois éléments :
- Flux de contrôle (tâches et conteneurs)– Le flux de contrôle inclut les tâches et les conteneurs qui s'exécutent lors de l'exécution du package.
- Flux de données (sources de données et destinations)– Le flux de données détermine la manière dont les données sont traitées et transformées de la source à la destination.
- Gestionnaires de connexions– Le lien entre le package et une source de données qui définit la chaîne de connexion que d'autres composants du package utilisent pour interagir avec les données source.
Tâches SSIS
Dans SSIS, vous pouvez ajouter des tâches au flux de contrôle. Il existe une gamme de tâches différentes que vous pouvez configurer. Certaines des tâches principales que vous pouvez effectuer sont :
- Exécuter la tâche SQL– Vous permet d'exécuter une ou plusieurs instructions SQL à partir d'un package.
- Tâche de flux de données– Extrait, transforme et charge des données à partir d’une ou plusieurs sources. Nettoie et modifie les données en transit.
- Tâche de traitement Analysis Servicesk – Objets Processes Analysis Services (modèles tabulaires, cubes, dimensions, etc.). Traite un ou plusieurs objets à la fois.
- Exécuter la tâche du package– Permet à un package d'exécuter un autre package dans le cadre du flux de travail. Souvent utilisé pour diviser des flux de travail complexes en plusieurs packages.
- Exécuter la tâche de processus– Utilisé pour exécuter une application ou un fichier batch dans le cadre d’un package SSIS.
- Tâche FTP– Télécharge et télécharge des fichiers de données avec FTP. Permet également à l'utilisateur de copier des fichiers vers un répertoire de destination.
- Tâche de script– Entrez le code pour effectuer une tâche qui n'est pas incluse dans SSIS. Peut combiner plusieurs tâches dans un seul script.
- Envoyer une tâche de courrier– Envoie des e-mails à l'utilisateur si un workflow de package réussit, échoue ou si un événement (par exemple si une sauvegarde de base de données échoue) a lieu.
- Tâche XML– Accéder, fusionner, valider et modifier des fichiers XML. Peut être utilisé pour fusionner plusieurs sources de données XML en un seul document.
Avantages et inconvénients de SSIS
Comme tout autre outil, SSIS présente ses propres avantages et inconvénients en tant qu'outil ETL. En fin de compte, leur importance dépend de la manière dont vous souhaitez utiliser l’outil au sein de votre organisation.
Les principaux avantages de SSIS
La flexibilité
SSIS apporte un haut degré de flexibilité en tant qu'outil ETL et de transformation de données. L'utilisateur peut importer des données à partir de sources de données hétérogènes, puis les transformer comme bon lui semble. Les options de configuration telles que les flux de contrôle et les flux de données donnent à l'utilisateur un contrôle total sur le processus.
Facilité d'utilisation
Se familiariser avec l’interface utilisateur et configurer SSIS est simple. Tout ce dont vous avez besoin est facile à trouver et vous pouvez cliquer sur les onglets de flux de contrôle et de flux de données sans chercher indéfiniment. Si vous n'êtes jamais sûr de la structure, vous pouvez vérifier via l'explorateur de packages.
Documentation
SSIS offre un certain nombre de fonctionnalités qui vous permettent de créer de la documentation à mesure que vous transformez vos données. Vous pouvez ajouter des packages annotés, des flux de contrôle et des flux de données. La rédaction de descriptions pour les éléments SSIS vous permet de créer un enregistrement au fur et à mesure.
Les inconvénients du SSIS
Prise en charge limitée du système d'exploitation
L'une des plus grandes limitations de SSIS est qu'il ne prend en charge que Microsoft Windows. Même avec les intégrations, le manque de prise en charge par SSIS d’autres systèmes d’exploitation limite ses capacités d’intégration de données dans de nombreux environnements. Si votre environnement est principalement basé sur Windows alors cet inconvénient sera moins important.
Manque d'options d'intégration
La prise en charge limitée du système d’exploitation est aggravée par l’intégration limitée de SSIS avec d’autres outils. Bien qu'il existe des extensions que vous pouvez utiliser, elles sont dérisoires par rapport à la polyvalence des outils open source comme Python. SSIS n'est pas nécessairement adapté à tous les environnements, surtout si vous ne voulez pas vous limiter aux services Windows.
SSIS est un outil ETL « indispensable »
Si vous souhaitez transmettre des données via un processus ETL, SSIS est un incontournable. Extraire des données de sources et les transformer afin qu’elles puissent être chargées vers une autre destination est le pain quotidien de SSIS. Le logiciel convient aux entreprises, qu'elles souhaitent intégrer une ou plusieurs sources de données.
Bien que la création de tâches pour nettoyer et traiter les données puisse être un défi au début, les avantages de l'adoption de l'outil sont également importants. Prendre le temps d'apprendre SSIS garantira que vous pouvez préparer vos données pour qu'elles soient disponibles là où vous en avez besoin, quand vous en avez besoin.
FAQ SSIS
Qu’est-ce que SSIS et pourquoi est-il utilisé ?
SSIS signifie SQL Server Integration Services. Il s'agit d'un environnement de développement pour la création de systèmes de transfert de données qui déplacent les informations d'un magasin à un autre, en traversant les formats et les structures. Les données peuvent être déplacées vers ou depuis des fichiers et des entrepôts de données et elles peuvent être reformatées, résumées, triées ou filtrées au cours du processus.
SSIS est-il un outil ETL ?
Microsoft SQL Server Integration Services (SSIS) est un type de système connu sous le nom de package d'extraction, de transformation et de chargement (ETL). Il est couramment utilisé pour les entrepôts de données.
Quelle est la différence entre SSIS et SQL ?
SSIS est un service ETL (Extraction, Transformation, Chargement), qui manipule les données pour les déplacer d'un format à un autre. SQL Server est une base de données relationnelle qui contient des données dans des tables et permet d'y accéder via des requêtes SQL. Il est possible de créer un script avec SQL pour extraire des données d'une base de données ou insérer des données dans une base de données. Dans ce cas, vous écririez votre propre ETL.