Alimentation du DataWarehouse
Sommaire Introduction Les outils ETL Les étapes
Introduction les projets de Business Intelligence Le processus général Développement Définition des besoins Définition de l’architecture  technique  Choix des outils Définition des indicateurs Modélisation dimensionnelle Définition des rapports / tableaux de bord Installation et paramétrage des outils Conception du  modèle physique Création  des « univers » Développement des rapports / tableaux de bord Déploiement Formation développement  des  alimentations
Introduction
Introduction Le processus d'alimentation des données du datawarehouse représente une part majeure des efforts de développement et nécessite une attention tout au long du cycle de vie du système Il est le garant de la qualité des données et doit superviser la gestion des rejets Il doit être pris très au sérieux le plus tôt possible Dans la pratique, il est souvent délaissé dans les phases de démarrage au détriment des aspect de restitution des données Il représente jusqu'à 40 % du budget total du projet
Introduction Le processus doit s'exécuter périodiquement, il doit donc être Optimisé Le temps du processus correspond au temps d’indisponibilité de l’entrepôt Les temps de réponse du datawarehouse dépendent principalement de la qualité des agrégats qui sont gérés par le processus Automatisé Il est nécessaire d’industrialiser le processus au maximum
Introduction Utilisation d'un outil ETL (Extraction – Transformation - Load) Non obligatoire mais recommandé car : Centralisation des scripts d'alimentation Utilisation d'un outil / langage unique et maîtrisé Suivi centralisé des exécutions Disponibilité de connecteurs => maîtrise des coûts d'évolution Outils spécialisés vs Outils généralistes Outils orientés BD vs Outils avec langage propre (standard ou propriétaire) Dans la pratique, laisser le maximum de traitements à la base de données Avantage : performances (quelquefois obligatoire) Inconvénient : spécifique à la base de données
Les outils ETL
Les outils ETL La problématique est aussi ancienne que les Systèmes d’Information Depuis toujours : le transfert de fichiers ETL  = Extraction /  Transfer (Transformation) / Load Pas   sécurisé Pas normalisé Cher à maintenir (les programmes d’extraction se sont multipliés de manière anarchique) Extraction Transfert Chargement
Les outils ETL Solution orientée Bases de données : la réplication Sécurisé Trop orienté Données Mise à jour Utilisation
Les outils ETL Outils ETL : services à valeur ajoutée Transformations <Champ1>;<Champ2>;<Champ3>;<Champ4> <Champ1>; <Champ3> <Champ2> + <Champ4> Centralisation du code de transformation Éditeur de formats Équipe d’administration des données et des flux
Les outils ETL Outils ETL : services à valeur ajoutée Connecteurs et passerelles Maintenus par les éditeurs Maîtrise des coûts d’évolution SAP Oracle Apps Oracle DB2 Websphere Web services
Les outils ETL Autres services Administration et suivi Des messages, des flux Des processus Sécurité Autorisations d’accès, habilitations, intégrité des données Montée en charge Répartition de la charge sur plusieurs processeurs, plusieurs serveurs
Les outils ETL Résumé des fonctionnalités Accès fichiers, Bases de données Transformations Connecteurs (accès natifs, ODBC, Web services, ...) Administration et suivi (processus, flux, déclencheurs) Sécurité Montée en charge
Les outils ETL TCP / IP Connecteurs ETL Référentiel Suivi des flux Administration référentiel Surveillance des processus Moteur  exécution Outil de  développement
Les outils ETL Les acteurs du marché Acteurs historiques Sunopsis : racheté par Oracle Datastage : racheté par IBM Microsoft SQL Server Integration Services, intégré dans l'offre SQL Server Cognos Data Integrator (racheté par IBM) DataExchanger Nouveaux venus (monde « open source ») Talend Pentaho
Les étapes de l'alimentation
Les étapes Extraction des données source Contrôle des données source Alimentation des tables de la staging area Alimentation des tables agrégées
Extraction des données source Analyse des tables / fichiers source, des formats de données Identification des données nécessaires Données de type référentiel => Dimensions Données de type mesures => Faits Filtrer les données pour n'extraire que les données nécessaires Ex : données ajoutées ou modifiées depuis la dernière extraction Appliquer des transformations de formats (dates, montants, codes)
Contrôle des données source Contrôle du référentiel Unicité du référentiel Transcodification des différentes sources Ex : N° de client, Matricules employés, Adresses clients Contrôle des données Contrôle des dates (ex : > 2000) Contrôle des montants (par rapport à une fourchette acceptable) Écriture des erreurs dans une table dédiée => à l'issue de l'alimentation, envoi des erreurs par mail à l'administrateur des données
Alimentation de la staging area Format des tables proche des tables sources Mise à jour des données existantes Création des nouvelles lignes Suppression des lignes  Ou modification de leur statut pour conserver l'historique Fusion de données provenant de sources différentes dans la même table (on conserve l'identification de la source) Peu de complexité
Alimentation des tables agrégées Mise au format « étoile » : dimensions / faits Dimensions (référentiel) Dénormalisation Ville – Département – Région – Pays => Ville Faits Calcul des agrégations Utilisation de vues, voire de procédures stockées ou de vues stockées (snapshots) pour améliorer les performances => délégation des traitements à la base de données Identifier les temps de traitement pour organiser l'exécution des flux d'alimentation
Organisation des flux Organiser les flux en fonction  des domaines concernés,  des fréquences d'alimentation Isoler les alimentations de référentiel (dimensions) et les alimentations de faits appeler les flux de référentiel correspondant à chaque alimentation de faits Découper au maximum les flux pour les rendre réutilisables
Des questions ? Des questions ? http://www.6it.fr [email_address] 06.24.91.02.03 04.84.25.17.94

Projet Bi - 3 - Alimentation des données

  • 1.
  • 2.
    Sommaire Introduction Lesoutils ETL Les étapes
  • 3.
    Introduction les projetsde Business Intelligence Le processus général Développement Définition des besoins Définition de l’architecture technique Choix des outils Définition des indicateurs Modélisation dimensionnelle Définition des rapports / tableaux de bord Installation et paramétrage des outils Conception du modèle physique Création des « univers » Développement des rapports / tableaux de bord Déploiement Formation développement des alimentations
  • 4.
  • 5.
    Introduction Le processusd'alimentation des données du datawarehouse représente une part majeure des efforts de développement et nécessite une attention tout au long du cycle de vie du système Il est le garant de la qualité des données et doit superviser la gestion des rejets Il doit être pris très au sérieux le plus tôt possible Dans la pratique, il est souvent délaissé dans les phases de démarrage au détriment des aspect de restitution des données Il représente jusqu'à 40 % du budget total du projet
  • 6.
    Introduction Le processusdoit s'exécuter périodiquement, il doit donc être Optimisé Le temps du processus correspond au temps d’indisponibilité de l’entrepôt Les temps de réponse du datawarehouse dépendent principalement de la qualité des agrégats qui sont gérés par le processus Automatisé Il est nécessaire d’industrialiser le processus au maximum
  • 7.
    Introduction Utilisation d'unoutil ETL (Extraction – Transformation - Load) Non obligatoire mais recommandé car : Centralisation des scripts d'alimentation Utilisation d'un outil / langage unique et maîtrisé Suivi centralisé des exécutions Disponibilité de connecteurs => maîtrise des coûts d'évolution Outils spécialisés vs Outils généralistes Outils orientés BD vs Outils avec langage propre (standard ou propriétaire) Dans la pratique, laisser le maximum de traitements à la base de données Avantage : performances (quelquefois obligatoire) Inconvénient : spécifique à la base de données
  • 8.
  • 9.
    Les outils ETLLa problématique est aussi ancienne que les Systèmes d’Information Depuis toujours : le transfert de fichiers ETL = Extraction / Transfer (Transformation) / Load Pas sécurisé Pas normalisé Cher à maintenir (les programmes d’extraction se sont multipliés de manière anarchique) Extraction Transfert Chargement
  • 10.
    Les outils ETLSolution orientée Bases de données : la réplication Sécurisé Trop orienté Données Mise à jour Utilisation
  • 11.
    Les outils ETLOutils ETL : services à valeur ajoutée Transformations <Champ1>;<Champ2>;<Champ3>;<Champ4> <Champ1>; <Champ3> <Champ2> + <Champ4> Centralisation du code de transformation Éditeur de formats Équipe d’administration des données et des flux
  • 12.
    Les outils ETLOutils ETL : services à valeur ajoutée Connecteurs et passerelles Maintenus par les éditeurs Maîtrise des coûts d’évolution SAP Oracle Apps Oracle DB2 Websphere Web services
  • 13.
    Les outils ETLAutres services Administration et suivi Des messages, des flux Des processus Sécurité Autorisations d’accès, habilitations, intégrité des données Montée en charge Répartition de la charge sur plusieurs processeurs, plusieurs serveurs
  • 14.
    Les outils ETLRésumé des fonctionnalités Accès fichiers, Bases de données Transformations Connecteurs (accès natifs, ODBC, Web services, ...) Administration et suivi (processus, flux, déclencheurs) Sécurité Montée en charge
  • 15.
    Les outils ETLTCP / IP Connecteurs ETL Référentiel Suivi des flux Administration référentiel Surveillance des processus Moteur exécution Outil de développement
  • 16.
    Les outils ETLLes acteurs du marché Acteurs historiques Sunopsis : racheté par Oracle Datastage : racheté par IBM Microsoft SQL Server Integration Services, intégré dans l'offre SQL Server Cognos Data Integrator (racheté par IBM) DataExchanger Nouveaux venus (monde « open source ») Talend Pentaho
  • 17.
    Les étapes del'alimentation
  • 18.
    Les étapes Extractiondes données source Contrôle des données source Alimentation des tables de la staging area Alimentation des tables agrégées
  • 19.
    Extraction des donnéessource Analyse des tables / fichiers source, des formats de données Identification des données nécessaires Données de type référentiel => Dimensions Données de type mesures => Faits Filtrer les données pour n'extraire que les données nécessaires Ex : données ajoutées ou modifiées depuis la dernière extraction Appliquer des transformations de formats (dates, montants, codes)
  • 20.
    Contrôle des donnéessource Contrôle du référentiel Unicité du référentiel Transcodification des différentes sources Ex : N° de client, Matricules employés, Adresses clients Contrôle des données Contrôle des dates (ex : > 2000) Contrôle des montants (par rapport à une fourchette acceptable) Écriture des erreurs dans une table dédiée => à l'issue de l'alimentation, envoi des erreurs par mail à l'administrateur des données
  • 21.
    Alimentation de lastaging area Format des tables proche des tables sources Mise à jour des données existantes Création des nouvelles lignes Suppression des lignes Ou modification de leur statut pour conserver l'historique Fusion de données provenant de sources différentes dans la même table (on conserve l'identification de la source) Peu de complexité
  • 22.
    Alimentation des tablesagrégées Mise au format « étoile » : dimensions / faits Dimensions (référentiel) Dénormalisation Ville – Département – Région – Pays => Ville Faits Calcul des agrégations Utilisation de vues, voire de procédures stockées ou de vues stockées (snapshots) pour améliorer les performances => délégation des traitements à la base de données Identifier les temps de traitement pour organiser l'exécution des flux d'alimentation
  • 23.
    Organisation des fluxOrganiser les flux en fonction des domaines concernés, des fréquences d'alimentation Isoler les alimentations de référentiel (dimensions) et les alimentations de faits appeler les flux de référentiel correspondant à chaque alimentation de faits Découper au maximum les flux pour les rendre réutilisables
  • 24.
    Des questions ? Desquestions ? http://www.6it.fr [email_address] 06.24.91.02.03 04.84.25.17.94

Notes de l'éditeur

  • #4 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #6 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #7 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #8 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #10 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #11 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #12 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #13 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #14 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #15 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #16 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #17 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #19 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #20 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #21 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #22 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #23 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.
  • #24 Toute la difficulté vient de la divergence croissante entre deux tendances contradictoires : La volonté croissante d&apos;évoluer au sein des entreprises : qu&apos;il s&apos;agisse de nouveaux produits, de nouvelles formes d&apos;organisation, de nouvelles approches commerciales ou de développement international. La capacité décroissante d&apos;évoluer au sein de systèmes d&apos;information qui accueillent de plus en plus d&apos;applications, ce qui les rigidifie progressivement.