Table des matières
- Introduction à SSIS
- 1. Présentation de SSIS
- 1.1 Concepts ETL et ELT
- 1.2 Architecture
- 1.3 Les éditions SQL Server
- 2. Installation et outils
- 2.1 Installation de SSIS
- 2.1.1 Installation étape par étape de SSIS
- 2.1.2 Installation en ligne de commande de SSIS
- 2.1.3 Finalisation de l’installation
- 2.2 Installation des outils de développement
- 2.1 Installation de SSIS
- 1. Présentation de SSIS
- Nouveautés SSIS
- 1. Introduction
- 2. Installation et administration
- 2.1 Installation sur Linux
- 2.2 Installation distribuée (Scale Out)
- 2.2.1 Architecture générale
- 2.2.2 Installation d’un nœud Master
- 2.2.3 Installation d’un Worker
- 2.2.4 Configuration et surveillance du cluster
- 2.3 Support Always-On de la base SSISDB
- 2.4 Nouveau rôle SSIS_logreader
- 2.5 Personnalisation du niveau de journalisation
- 2.6 Support d’Always Encrypted
- 2.7 Déploiement incrémental des packages
- 2.8 Choix de la version de déploiement
- 3. Composants et tâches
- 3.1 Les tâches Cloud
- 3.1.1 Tâche Azure Blob Download Task
- 3.1.2 Tâche Azure Blob Upload Task
- 3.1.3 Tâche Azure HDInsight Create Cluster
- 3.1.4 Tâche de suppression d’un cluster Azure HDInsight
- 3.1.5 Tâche Hive Azure HDInsight
- 3.1.6 Tâche Azure HDInsight Pig
- 3.1.7 Tâche de chargement Azure SQL Data Warehouse (DW)
- 3.1.8 Tâche de système de fichiers Azure Data Lake Store
- 3.2 Nouveaux énumérateurs Foreach
- 3.2.1 Énumérateur HDFS
- 3.2.2 Énumérateur ADLS
- 3.2.3 Énumérateur Azure Blob
- 3.3 Composants Cloud de flux de données
- 3.3.1 Source Azure Blob
- 3.3.2 Destination Azure Blob
- 3.3.3 Source Azure Data Lake Store
- 3.3.4 Destination Azure Data Lake Store
- 3.4 Les composants Big Data
- 3.4.1 Tâche du système de fichiers Hadoop
- 3.4.2 Tâche Hadoop Hive
- 3.4.3 Tâche Hadoop Pig
- 3.4.4 Composant source de fichier HDFS
- 3.4.5 Composant destination de fichier HDFS
- 3.5 Les autres composants
- 3.5.1 Composant de publication de flux de données
- 3.5.2 Distributeur de données équilibrées
- 3.5.3 Les parties de package
- 3.5.4 Déploiement SSIS dans Azure
- 3.1 Les tâches Cloud
- Les bases de l’ETL
- 1. Présentation et installation de la solution de développement de ce livre
- 2. Les bases avant une première implémentation
- 2.1 Généralités
- 2.2 Le flux de contrôle : généralités
- 2.2.1 Définition
- 2.2.2 Le concepteur de flux de contrôle
- 2.3 Le flux de données : généralités
- 2.3.1 Objectifs
- 2.3.2 Le concepteur de flux de données
- 2.4 Contraintes de précédence versus Pipeline
- 2.4.1 Contraintes de précédence
- 2.4.2 Pipeline : les bases
- 2.5 Gestionnaires de connexions
- 2.5.1 Définition
- 2.5.2 Configuration d’un gestionnaire de connexions pour base de données
- 2.5.3 Configuration d’un gestionnaire de connexions vers des fichiers plats
- 2.6 Les variables
- 3. Première implémentation
- 3.1 Conteneurs
- 3.1.1 Principes de fonctionnement
- 3.1.2 Conteneur de boucles ForEach
- 3.1.3 Conteneur de boucles For
- 3.1.4 Portée et cloisonnement
- 3.2 Les expressions
- 3.2.1 Générateur d’expression
- 3.2.2 Les bases de la syntaxe
- 3.2.3 Expressions et gestionnaire de connexions
- 3.3 Extraire les données : composants source
- 3.3.1 Composant Source du fichier plat (Flat File Source)
- 3.3.2 Composant Source OLE DB
- 3.3.3 Éditeur avancé des composants source
- 3.4 Transformer les données
- 3.4.1 Colonne dérivée (Derived column)
- 3.4.2 Composant Recherche (Lookup)
- 3.4.3 Composant Transformation du cache
- 3.5 Charger les données : composants destination
- 3.6 Entrée et sortie des composants
- 3.6.1 Définition
- 3.6.2 Fractionnement conditionnel
- 3.6.3 Éditeur du chemin d’accès au flux de données
- 3.7 Les types de données sur SSIS
- 3.1 Conteneurs
- 4. Patterns de développement
- 4.1 Éviter le composant Tri
- 4.2 Éviter le composant OLE DB Command
- 4.2.1 Configuration du composant OLE DB Command
- 4.2.2 Configuration de la Tâche d’exécution de requêtes SQL
- 4.3 Jointure SQL versus composant Jointure de fusion
- 4.3.1 Composant Jointure de fusion (Merge Join)
- 4.3.2 Composant Fusionner
- 4.4 Stocker temporairement des données
- 4.4.1 En base de données
- 4.4.2 Destination de fichier brut
- 4.5 Pattern Ignorer l’échec pour le composant Recherche
- 4.5.1 Composant Unir tout
- 4.5.2 Ignorer l’échec et colonne dérivée
- 4.6 Lot SSIS Parent-Enfant
- 4.6.1 Référence du projet
- 4.6.2 Référence externe
- Concepts de développement avancés
- 1. Gestion de la qualité et du changement dans les données
- 1.1 Data Quality Services (DQS)
- 1.1.1 Considérations sur DQS
- 1.1.2 Nettoyage DQS
- 1.2 CDC
- 1.2.1 Qu’est-ce que le CDC ?
- 1.2.2 Mise en place du CDC
- 1.1 Data Quality Services (DQS)
- 2. Interactions avec SQL Server et SSAS
- 2.1 Insertion en bloc
- 2.2 Tâches de maintenance et de transfert d’objets de la base de données
- 2.3 Tâches relatives à SQL Server Analysis Services (SSAS)
- 2.3.1 Tâche de traitement Analysis Services
- 2.3.2 Tâche d’exécution de DDL Analysis Services
- 2.3.3 Tâche de requête de Data Mining
- 3. Checkpoints
- 3.1 Principe général
- 3.1.1 Cas d’usage classique
- 3.1.2 Mise en place
- 3.1.3 Lien entre échec et création de checkpoint
- 3.1.4 Fonctionnement
- 3.2 Limitations
- 3.2.1 Conteneurs mal gérés
- 3.2.2 Mauvaise gestion du parallélisme
- 3.2.3 Gestionnaires d’évènements
- 3.3 Conclusion
- 3.1 Principe général
- 4. Transactions
- 4.1 Principe des transactions
- 4.1.1 A.C.I.D.
- 4.1.2 Transactions distribuées
- 4.1.3 Cas du DTC en réseau
- 4.2 Mise en place d’une transaction MSDTC dans SSIS
- 4.2.1 TransactionOption pour activer les transactions
- 4.2.2 IsolationLevel pour gérer l’interaction avec les autres transactions
- 4.2.3 Comportement à l’exécution
- 4.2.4 Analyse des problèmes
- 4.2.5 Conseils de design de Control Flow dans un cas transactionnel
- 4.3 Utilisation de transactions natives
- 4.3.1 BEGIN/ROLLBACK/COMMIT
- 4.3.2 Implémentation avec des Execute SQL Task et RetainSameConnection
- 4.3.3 Bonnes pratiques
- 4.4 Conclusion
- 4.1 Principe des transactions
- 1. Gestion de la qualité et du changement dans les données
- Déploiement et administration
- 1. Introduction
- 2. Le catalogue SSISDB
- 2.1 Configuration du catalogue
- 2.2 Rapports de supervision
- 3. Les objets du catalogue SSIS
- 3.1 Dossier
- 3.2 Environnement
- 3.3 Projet
- 3.3.1 Les fichiers de déploiement ISPAC
- 3.3.2 Déployer à l’aide de l’assistant
- 3.3.3 Déployer en T-SQL
- 3.3.4 Déployer en PowerShell
- 3.3.5 Configuration de projet
- 3.4 Package
- 3.4.1 Exécution de package
- 3.4.2 Planification de package
- 4. La sécurité
- 4.1 Sécurité niveau SSISDB
- 4.2 Sécurité niveau dossier
- 4.3 Sécurité niveau Projet
- 4.4 Sécurité niveau Environnement
- Notions avancées et optimisations
- 1. Introduction
- 2. Les fondements du flux de données
- 2.1 La mémoire tampon (buffer)
- 2.2 Execution Tree et threading
- 2.3 Les types de composants
- 2.4 Incidences sur les performances
- 3. Mesure des performances et diagnostic
- 3.1 Utilisation des journaux SSISDB
- 3.2 Utilisation de rapport SSIS
- 3.3 Journalisation personnalisée
- 3.4 Utilisation du moniteur de performance
- 4. Des packages performants
- 4.1 Utilisation des moteurs relationnels
- 4.2 Particularités sur les Lookup
- 4.3 Particularités de Fusion et Jointure de fusion
- Bases de la programmation de composants
Soyez le premier à donner votre avis sur “SQL Server Integration Services 2017 Mise en oeuvre d’un projet ETL avec SSIS”