Data Warehouse Sequence 1: Découverte Des Données Extraction Des Données Transformation Des Données
Data Warehouse Sequence 1: Découverte Des Données Extraction Des Données Transformation Des Données
Sequence 1
Chapitre 1 : ................................................................................................................................. 3
Introduction aux entrepôts de données (ED) .......................................................................... 3
Définition d’un ED ................................................................................................................. 3
Les données du système d'information................................................................................... 4
Données orientées sujet ...................................................................................................... 4
L’avantage .......................................................................................................................... 5
Données intégrées .................................................................................................................. 5
Données historisées ................................................................................................................ 5
Données non volatiles ............................................................................................................ 5
Les classes de données ........................................................................................................... 5
Les données agrégées ......................................................................................................... 6
Les données détaillées ........................................................................................................ 6
Les métadonnées ................................................................................................................ 6
Les données historisées ...................................................................................................... 6
Architecture fonctionnelle d’un ED ........................................................................................... 6
Modélisation multidimensionnelle ......................................................................................... 6
La modélisation par sujet ................................................................................................... 6
La modélisation dimensionnelle......................................................................................... 6
Faits, indicateurs et dimensions ..................................................................................... 6
Additivités des indicateurs ............................................................................................. 7
Les dimensions ............................................................................................................... 7
Structure de la base de données.......................................................................................... 7
Le schéma en étoile ........................................................................................................ 8
Le schéma en flocon ....................................................................................................... 8
Les schémas en constellation de faits ............................................................................. 9
Alimentation, stockage, gestion et exploitation d’un ED................................................... 9
Découverte des données .......................................................................................... 9
Extraction des données ............................................................................................ 9
Transformation des données ................................................................................... 9
Domaines d’application des ED et « succès stories » ...................................................... 10
Domaines bancaire ....................................................................................................... 10
Domaines de la grande distribution .............................................................................. 10
Apports constatés : ................................................................................................... 11
Domaines des télécommunications .............................................................................. 11
Domaines de l’assurance .............................................................................................. 11
Chapitre 2 : Analyse en ligne d’entrepôt : OLAP (On-Line Analytical Processing) ............... 12
Introduction et problématique de l’OLAP ........................................................................... 12
OLTP ................................................................................................................................ 12
OLAP ............................................................................................................................... 12
Entrepôt et OLAP, OLAP versus OLTP .......................................................................... 12
Opérations élémentaires OLAP ........................................................................................ 13
Opérations de restructuration (rotate, switch, split, nest, push, pull) ........................... 13
Rotate/pivot .............................................................................................................. 13
Switch ou permutation ............................................................................................. 13
Split ou division ....................................................................................................... 13
Nest ou l’emboîtement ............................................................................................. 14
Push ou l’enfoncement ............................................................................................. 14
Opérations de granularité ............................................................................................. 15
roll-up ou résumé ou cumul ..................................................................................... 15
drill-down ou zoom avant ........................................................................................ 15
Opérations liées au niveau de granularité des données : .............................................. 15
Dice ou couper en clés ............................................................................................. 15
Slice ou trancher ....................................................................................................... 16
Etude de cas .......................................................................................................................... 17
Modélisation en étoile ...................................................................................................... 17
Cas ................................................................................................................................ 17
Analyse. ........................................................................................................................ 17
Explications .............................................................................................................. 18
Il faut savoir : ........................................................................................................... 18
Conclusion ................................................................................................................ 18
Modélisation en flocon ..................................................................................................... 19
Conception d'entrepôts de données ...................................................................................... 20
Constellation..................................................................................................................... 20
Construire un entrepôt de données ................................................................................... 21
Top-Down .................................................................................................................... 21
Bottom-Up .................................................................................................................... 21
Middle-Out ................................................................................................................... 21
Reférences ............................................................................................................................ 22
Chapitre 1 :
Introduction aux entrepôts de données (ED)
Les décideurs d'une entreprise doivent pouvoir répondre à un certain nombre de question pour
diriger leur entreprise :
- Qui sont mes clients ?
- Pourquoi sont-ils mes clients ?
- Comment cibler ma clientèle ?
- Quel est l'évolution de tel produit ?
- Qui sont mes employés ?
- ...
L'objectif est donc d'apporter aux décideurs d'une entreprise les moyens de répondre à ces
questions.
Pour atteindre cet objectif, le concept d’entrepôt de données a été formalisé pour la première
fois en 1990 par Bill Inmon. Il s’agissait de constituer une base de données orientée sujet,
intégrée et contenant des informations historisées, non volatiles et exclusivement destinées aux
processus d’aide à la décision.
Définition d’un ED
Un entrepôt de données est une collection de données thématiques, intégrées, non volatiles et
historisées pour la prise de décisions (Bill Inmon)
Les points clefs garantissant le succès d'un entrepôt de données sont les suivants :
- Les informations d'un entrepôt de données doivent être accessibles et fiables (de
qualité).
- La conception d'un entrepôt de données doit répondre à un besoin de ROI4 élevé.
- La réponse aux demandes très diverses des utilisateurs.
- L’entrepôt de données doit évoluer avec les besoins des utilisateurs et du système
d'information.
-
L’avantage
- Réaliser des analyses sur des sujets transversaux aux structures fonctionnelles et
organisationnelles de l'entreprise. Et ainsi, de pouvoir analyser un processus dans le
temps à différentes étapes de sa conception au sein du SI.
- Analyses par itération, sujet après sujet.
L'intégration dans une structure unique est indispensable pour éviter aux données concernées
par plusieurs sujets d'être dupliquées. Dans la pratique il existe également des Datamart pouvant
supporter l'orientation sujet.
Données intégrées
Les données doivent êtres mises en forme et unifiées afin d'avoir un état cohérent. Pour parfaire
cette cohérence, l’intégration nécessite
- Une forte normalisation de données.
- Maîtrise de la sémantique,
- La prise en compte des contraintes référentielles et des règles de gestion.
Ces notions sont énoncées, détaillées et administrées au sein des métadonnées de l’entrepôt de
données.
Données historisées
- Suivre dans le temps l'évolution des différentes valeurs des indicateurs à analyser.
- Un référentiel temps doit être associé aux données afin de permettre l'identification dans
la durée de valeurs précises.
"Produit"
Clé produit (CP)
Description du produit
Numéro US (clé naturelle)
Description de la marque
Description de la catégorie
Description du rayon
Description du type d'emballage
…autres attributs
Tableau 3 : Modèle conceptuel d’une table de dimension
Structure de la base de données
Au sein de l’entrepôt de données les données sont redondantes et dénormalisées, cela permet
de faciliter l’utilisation et d’améliorer les performances lors de l'analyse des données. Trois
types de schémas sont fréquemment rencontrés, le schéma en étoile, le schéma en flocon et le
schéma en constellation de faits.
Le schéma en étoile
Dans un schéma en étoile, une table centrale de faits contenant les faits à analyser, référence les
tables de dimensions par des clefs étrangères. Chaque dimension est décrite par une seule table
dont les attributs représentent les diverses granularités possibles.
Le schéma en flocon
Dans un schéma en flocon, cette même table de faits, référence les tables de dimensions de
premier niveau, au même titre que le schéma en étoile. La différence réside dans le fait que les
dimensions sont décrites par une succession de tables (à l’aide de clefs étrangères) représentant
la granularité de l'information. Ce schéma évite les redondances d’information mais nécessite
des jointures lors des agrégats de ces dimensions.
Les schémas en constellation de faits
Dans un schéma en constellation, plusieurs modèles dimensionnels se partagent les mêmes
dimensions, c'est-à-dire, les tables de faits ont des tables de dimensions en commun. Pour
conclure, les différences entre ces trois modèles sont faibles et ne peuvent donner lieu à des
comparaisons de performance. Ce sont des schémas issus de la modélisation dimensionnelle
utilisés par les outils décisionnels.
m, f
0, 1 m, f
male, female
fcfa
$ €
char(10)
Numeric(10)
Dec(10,2)
Numeric(8)
Domaines de l’assurance
- L’exercice de base de l’assureur est de déterminer le facteur de risque d’un assuré
- Celui d’un producteur pharmaceutique est de détecter l’impact d’un médicament
- Plus généralement, le suivi des informations relatives à la liaison produit-client sur un
ED est souvent synonyme de gains importants : meilleure connaissance des produits,
détection des défauts, meilleure connaissance des clients, détection de rejets, ciblage du
marketing, etc
- Le couplage aux technologies du Web ouvre aussi des horizons nouveaux pour le suivi
des produits, des clients, des concurrents : notion émergente de « Data Webhouse »
Chapitre 2 : Analyse en ligne d’entrepôt : OLAP (On-Line Analytical
Processing)
Introduction et problématique de l’OLAP
En réalité SGBD et datawarehouse ont des objectifs différents. Ils stockent les données de
manière différentes et font l'objet de requêtes différentes. Ils sont ainsi basés sur deux systèmes
différents : OLTP et OLAP
OLTP
OLTP ( On Line Transaction Processing) est le modèle utilisé par les SGBD. Le mode de travail
est transactionnel. L'objectif est de pouvoir insérer, modifier et interroger rapidement et en
sécurité la base. Ces actions doivent pourvoir être effectuées très rapidement par de nombreux
utilisateurs simultanément. Chaque transaction travail sur de faibles quantités d'informations,
et toujours sur les versions les plus récentes des données.
OLAP
Les datawarehouses eux reposent sur le système OLAP (On Line Analytical Processing). Ce
système travail en lecture seulement. Les programmes consultent d'importantes quantités de
données pour procéder à des analyses. Les objectifs principaux sont regroupés, organiser des
informations provenant de sources diverses, les intégrer et les stocker pour donner à l’utilisateur
une vue orientée métier, retrouver et analyser l’information facilement et rapidement. Cela
nécessite de consulter des versions historiques de la base et peut se permettre d'ignorer
temporairement les dernières mises à jour.
Ces bases sont souvent d'un ordre de grandeur nettement supérieur à celle des bases OLTP, du
fait de la conservation de l'historique.
Entrepôt et OLAP, OLAP versus OLTP
Tableau récapitulatif des différences entre OLTP et OLAP :
Split ou division
consiste à présenter chaque tranche du cube et de passer de sa présentation tridimensionnelle à
sa présentation sous la forme d’un ensemble de tables
Nest ou l’emboîtement
permet d’imbriquer des membres à partir du cube. L’intérêt de cette est qu’elle permet de
grouper sur une même représentation bi-dimensionnelle toutes les informations (mesures et
membres) d’un cube quel que soit le nombre de ses dimensions. nest(pièces, région) :
Push ou l’enfoncement
Consiste à combiner les membres d’une dimension aux mesures du cube, i.e. de faire passer des
membres comme contenu de cellules.
Opérations de granularité
roll-up ou résumé ou cumul
On effectue un roll-up1 lorsqu’on souhaite obtenir moins de détails, ou qu’on souhaite obtenir
une vue d’ensemble. On peut d’abord faire un roll-up à même une dimension qui dispose d’une
hiérarchie. Prenons l’exemple des données suivantes :
France 5
Espagne 2
Suisse 47
Canada 30
E.-U. 10
Cameroun 9
La dimension lieu est présentée à la granularité Pays. Si on juge que cela fournit trop de détails
inutiles, on peut demander un roll-up vers le continent :
Europe 54
Amérique du 40
Nord
Afrique 9
drill-down ou zoom avant
Exercice2 Proposer une table représentant un drill-down par rapport à la table précédente
de faits :
Etude de cas
Modélisation en étoile
Nous allons utiliser un exemple pour expliquer la modélisation en étoile. L'important en BI est
de toujours garder à l'esprit que ce que nous faisons est différent des bases de données
traditionnelles. Le schéma créé sera accessible par les utilisateurs et doit donc être le plus simple
et explicite possible !
Cas
On souhaite créer un data Mart (une étoile) pour l'analyse de l'activité des représentants d'une
entreprise de vente d'imprimantes. Le chef d'entreprise veut savoir ce qui se passe pour ses
vendeurs. Les employés font-ils leur travail, quelle est la zone de couverture des vendeurs, à
quels endroits les vendeurs sont le moins efficaces, quelle est la moyenne de ventes des
représentants, etc. L'entreprise possède un système de gestion de ressources humaines, un
système de gestion des ventes et des feuilles de route avec des informations concernant les
vendeurs : kilomètres parcourus, litres d'essence utilisée, frais de voyage, ventes, promesses de
vente, etc.
Analyse.
Notre objectif est d'analyser l'activité des représentants. Il semble que nous ayons toutes les
informations pour ce faire… Mais dans différents systèmes.
Le but du jeu est de déceler les axes d'analyses (les dimensions) avec leurs attributs ainsi que
les éléments à analyser (les faits). La meilleure façon de ce faire, est l'étude approfondie de ce
qui se passe dans l'entreprise : documents échangés, rapports périodiques, interviews des
personnes clés, étude des besoins. Il faut faire un travail d'acteur, et rentrer dans la peau de
chaque utilisateur, savoir comment les analystes organisent leurs raisonnements, savoir ce que
voient les décideurs avant de décider, connaître les indicateurs de bonne santé de l'entreprise et
de la concurrence. Un vrai travail de fourmi.
Les techniques d'acquisition d'information et d'analyse des besoins étant un sujet à eux seuls, je
passerais la main pour ce point … Nous supposerons que tout a été fait selon les règles de l'art
et nous nous contenterons de compiler
Une manière très pratique de modéliser un cas en BI se fait comme suit :
Zone
Date Vendeur Produit Client
géographique
Heures
Tableau d’analyse
Explications
Le tableau suivant a été rempli pendant la phase d'analyse, en posant des questions aux
décideurs du type :
- Que voulez-vous analyser (la dernière ligne du tableau) ?
- Quels sont vos critères d'analyse (la première ligne du tableau) ?
- Jusqu’à quel niveau de détail voulez-vous aller (les cellules è l'intérieur) ?
La structure d'un entrepôt étant plus rigide que les systèmes conventionnels (se basent sur des
ETL, des validations créées par l'homme, etc.), il est capital d'avoir une analyse des besoins
exhaustive et conforme aux attentes des décideurs.
Il faut savoir :
- D’où provient chaque champ ?
- Comment transite l'information ?
- Où trouver l'information voulue ?
Se poser des questions du type :
- Ai-je assez de données pour répondre aux besoins ?
- Sinon, qu'est-ce que cela impliquerait de les créer ?
- Comment alimenter mes dimensions ?
- Comment alimenter mes faits ?
- Comment valider mes chargements ?
- Etc.
Vous pouvez penser que c'est de la paranoïa (comme certains clients) et croire que tous ces
problèmes n'apparaîtront pas forcément. Mais rappelez-vous qu'un entrepôt, ça coûte très cher,
et qu'un entrepôt avec des données incomplètes, invalides ou non conformes à la demande est
tout simplement à mettre à la poubelle…
Conclusion
La modélisation en étoile découle naturellement du tableau d’analyse ci-dessus, il en résulte le
schéma suivant :
Schéma en étoile