1. 1
Les entrepôts de données
Lydie Soler
Janvier 2007
U.E.R. d’informatique
2. 2
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
3. 3
Le contexte
Besoin: prise de décisions stratégiques et politiques
Pourquoi: besoin de réactivité face à la concurrence
Qui: les décideurs (non informaticiens)
Comment: en répondant aux demandes d’analyse
Qui sont mes
meilleurs
clients?
A combien
s’élèvent mes
ventes
journalières?
Quels français
consomment
beaucoup de
poisson?
Où placer ce
produit dans
les rayons?
4. 4
Les données utilisables par les décideurs
Données opérationnelles (de production)
Bases de données (Oracle, SQL Server)
Fichiers, …
Paye, gestion des RH, gestion des commandes…
Caractéristiques de ces données:
Distribuées: systèmes éparpillés
Hétérogènes: systèmes et structures de données différents
Détaillées: organisation des données selon les processus
fonctionnels, données surabondantes pour l’analyse
Peu/pas adaptées à l’analyse : les requêtes lourdes peuvent
bloquer le système transactionnel
Volatiles: pas d’historisation systématique
5. 5
Problématique
Comment répondre aux demandes des décideurs?
En donnant un accès rapide et simple à l’information
stratégique
Mettre en place un système d’information dédié aux
applications décisionnelles:
un data warehouse
6. 6
Le processus de prise de décision
Temps de prise d’une décision
Définir le
problème
Rassembler
les données
Analyser les
données
Établir des
solutions
Décider
Champs d’application des
systèmes décisionnels
7. 7
Le processus de prise de décision
Bases de
production
Data
warehouse
Base multi -
dimensionnelle
Prédiction /
simulation
Prise de
décision
8. 8
Domaines d’utilisation des DW
Banque
Risques d’un prêt, prime plus précise
Santé
Épidémiologie
Risque alimentaire
Commerce
Ciblage de clientèle
Déterminer des promotions
Logistique
Adéquation demande/production
Assurance
Risque lié à un contrat d’assurance (voiture)
…
9. 9
Quelques métiers du décisionnel
Strategic Performance Management
Déterminer et contrôler les indicateurs clé de la performance de
l’entreprise
Finance Intelligence
Planifier, analyser et diffuser l’information financière. Mesurer et
gérer les risques
Human Capital Management (gestion de la relation avec les employés)
Aligner les stratégies RH, les processus et les technologies.
Customer Relationship Management (gestion de la relation client)
Améliorer la connaissance client, identifier et prévoir la
rentabilité client, accroitre l’efficacité du marketing client
Supplier Relationship Management (gestion de la relation fournisseur)
Classifier et évaluer l’ensemble des fournisseurs. Planifier et
piloter la stratégie Achat.
10. 10
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
11. 11
Définition d’un DW
W. H. Inmon (1996):
« Le data Warehouse est une collection de
données orientées sujet, intégrées, non
volatiles et historisées, organisées pour le
support d’un processus d’aide à la décision »
Principe: mettre en place une base de données
utilisée à des fins d’analyse
12. 12
Les 4 caractéristiques des data warehouse
1. Données orientées sujet:
Regroupe les informations des différents métiers
Ne tiens pas compte de l’organisation fonctionnelle
des données
Ass. Vie Ass. Auto Ass. Santé
Client
Police
13. 13
Les 4 caractéristiques des data warehouse
2. Données intégrées:
Normalisation des données
Définition d’un référentiel unique
h,f
1,0
homme, femme
h,f
GBP
CHF
USD
EUR
14. 14
Les 4 caractéristiques des data warehouse
3. Données non volatiles
Traçabilité des informations et des décisions prises
Copie des données de production
Ajout
Modification
Suppression
Accès
Chargement
Bases de production Entrepôts de données
15. 15
Les 4 caractéristiques des data warehouse
4. Données datées
Les données persistent dans le temps
Mise en place d’un référentiel temps
Dupont Paris
Durand Lyon
Dupont Marseille
Durand Lyon
1 2005 Mai
2 2006 Juillet
Image de la base en Mai 2005 Image de la base en Juillet 2006
1 Dupont Paris
1 Durand Lyon
2 Dupont Marseille
Base de
production
Entrepôt
de
données
17. 17
OLTP VS DW
OLTP DW
Orienté transaction Orienté analyse
Orienté application Orienté sujet
Données courantes Données historisées
Données détaillées Données agrégées
Données évolutives Données statiques
Utilisateurs nombreux,
administrateurs/opérationnels
Utilisateurs peu nombreux,
manager
Temps d’exécution: court Temps d’exécution: long
18. 18
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
19. 19
Datamart
Sous-ensemble d’un entrepôt de données
Destiné à répondre aux besoins d’un secteur ou
d’une fonction particulière de l’entreprise
Point de vue spécifique selon des critères métiers
Datamarts du
service Marketing
Datamart du
service Ressources
Humaines
DW de l’entreprise
20. 20
Intérêt des datamart
Nouvel environnement structuré et formaté en
fonction des besoins d’un métier ou d’un usage
particulier
Moins de données que DW
Plus facile à comprendre, à manipuler
Amélioration des temps de réponse
Utilisateurs plus ciblés: DM plus facile à définir
21. 21
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
23. 23
Les flux de données
Flux entrant
Extraction: multi-source, hétérogène
Transformation: filtrer, trier, homogénéiser, nettoyer
Chargement: insertion des données dans l’entrepôt
Flux sortant:
Mise à disposition des données pour les utilisateurs
finaux
24. 24
Les différentes zones de l’architecture
Zone de préparation (Staging area)
Zone temporaire de stockage des données extraites
Réalisation des transformations avant l’insertion dans le DW:
Nettoyage
Normalisation…
Données souvent détruites après chargement dans le DW
Zone de stockage (DW, DM)
On y transfère les données nettoyées
Contient les données de l’entreprise
Zone de présentation
Donne accès aux données contenues dans le DW
Peut contenir des outils d’analyse programmés:
Rapports
Requêtes…
25. 25
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
26. 26
Modélisation Entité/Association
Avantages:
Normalisation:
Éliminer les redondances
Préserver la cohérence des données
Optimisation des transactions
Réduction de l’espace de stockage
Inconvénients pour un utilisateur final:
Schéma très/trop complet:
Contient des tables inutiles pour l’analyse
Pas d’interface graphique capable de rendre
utilisable le modèle E/A
Inadapté pour l’analyse
28. 28
Modélisation des DW
Nouvelle méthode de conception autour des
concepts métiers
Ne pas normaliser au maximum
Introduction de nouveaux types de table:
Table de faits
Table de dimensions
Introduction de nouveaux modèles:
Modèle en étoile
Modèle en flocon
29. 29
Table de faits
Table principale du modèle dimensionnel
Contient les données observables (les faits) sur le sujet
étudié selon divers axes d’analyse (les dimensions)
Table de faits des ventes
Clé date (CE)
Clé produit (CE)
Clé magasin (CE)
Quantité vendue
Coût
Montant des ventes
Clés étrangères
vers les
dimensions
Faits
30. 30
Table de faits (suite)
Fait:
Ce que l’on souhaite mesurer
Quantités vendues, montant des ventes…
Contient les clés étrangères des axes d’analyse
(dimension)
Date, produit, magasin
Trois types de faits:
Additif
Semi additif
Non additif
31. 31
Typologie des faits
Additif: additionnable suivant toutes les dimensions
Quantités vendues, chiffre d’affaire
Peut être le résultat d’un calcul:
Bénéfice = montant vente - coût
Semi additif: additionnable suivant certaines
dimensions
Solde d’un compte bancaire:
Pas de sens d’additionner sur les dates car cela
représente des instantanés d’un niveau
Σ sur les comptes: on connaît ce que nous possédons
en banque
Non additif: fait non additionnable quelque soit la
dimension
Prix unitaire: l’addition sur n’importe quelle dimension donne
un nombre dépourvu de sens
32. 32
Granularité de la table de faits
Répondre à la question :
Que représente un enregistrement de la table de
faits?
La granularité définit le niveau de détails de la
table de faits:
Exemple: une ligne de commande par produit, par
client et par jour
Précision des analyses
Taille de l’entrepôt
- + Finesse
33. 33
Table de dimension
Axe d’analyse selon lequel vont être étudiées les données
observables (faits)
Contient le détail sur les faits
Dimension produit
Clé produit (CP)
Code produit
Description du produit
Groupe de produits
Marque
Emballage
Poids
Clé de substitution
Attributs de la
dimension
34. 34
Table de dimension (suite)
Dimension = axe d’analyse
Client, produit, période de temps…
Contient souvent un grand nombre de colonnes
L’ensemble des informations descriptives des faits
Contient en général beaucoup moins
d’enregistrements qu’une table de faits
35. 35
La dimension Temps
Commune à l’ensemble du
DW
Reliée à toute table de
faits
Dimension Temps
Clé temps (CP)
Jour
Mois
Trimestre
Semestre
Année
Num_jour_dans_année
Num_semaine_ds_année
36. 36
Granularité d’une dimension
Une dimension contient des membres organisés
en hiérarchie :
Chacun des membres appartient à un niveau
hiérarchique (ou niveau de granularité) particulier
Granularité d’une dimension : nombre de niveaux
hiérarchiques
Temps :
année – semestre – trimestre - mois
37. 37
Évolution des dimensions
Dimensions à évolution lente
Un client peut se marier, avoir des enfants…
Un produit peut changer de noms ou de formulation:
« Raider » en « Twix »
« yaourt à la vanille » en « yaourt saveur vanille »
Gestion de la situation, 3 solutions:
Écrasement de l’ancienne valeur
Versionnement
Valeur d’origine / valeur courante
Dimensions à évolution rapide
Subit des changements très fréquents (tous les mois) dont on
veut préserver l’historique
Solution: isoler les attributs qui changent rapidement
38. 38
Dimensions à évolution lente (1/3)
Écrasement de l’ancienne valeur :
Correction des informations erronées
Avantage:
Facile à mettre en œuvre
Inconvénients:
Perte de la trace des valeurs antérieures des attributs
Perte de la cause de l’évolution dans les faits mesurés
Clé produit Description du produit Groupe de produits
12345 Intelli-Kids Logiciel
Jeux éducatifs
39. 39
Dimensions à évolution lente (2/3)
Ajout d’un nouvel enregistrement:
Utilisation d’une clé de substitution
Avantages:
Permet de suivre l’évolution des attributs
Permet de segmenter la table de faits en fonction de
l’historique
Inconvénient:
Accroit le volume de la table
Clé produit Description du produit Groupe de produits
12345 Intelli-Kids Logiciel
25963 Intelli-Kids Jeux éducatifs
40. 40
Dimensions à évolution lente (3/3)
Ajout d’un nouvel attribut:
Valeur origine/valeur courante
Avantages:
Avoir deux visions simultanées des données :
Voir les données récentes avec l’ancien attribut
Voir les données anciennes avec le nouvel attribut
Voir les données comme si le changement n’avait pas eu lieu
Inconvénient:
Inadapté pour suivre plusieurs valeurs d’attributs intermédiaires
Clé produit Description du
produit
Groupe de
produits
12345 Intelli-Kids Logiciel
Nouveau groupe
de produits
Jeux éducatifs
41. 41
Dimensions à évolution rapide
Changements fréquents des attributs dont on veut garder
l’historique
Clients pour une compagnie d’assurance
Isoler les attributs qui évoluent vite
42. 42
Dimensions à évolution rapide (suite)
Dim_démographique
Clé_démog
Revenus
Niveau_étude
Nb_enfants
Statut_marital
Profil_financier
Profil_achat
Dim client
Clé_client
Nom
Prénom
Adresse
Date_nais
…
Revenus
Niveau_étude
Nb_enfants
Statut_marital
Profil_financier
Profil_achat
Dim client
Clé_client
Nom
Prénom
Adresse
Date_naissance
…
Faits
Clé_client
…
Faits
Clé_client
Clé_démog
44. 44
Modèle en étoile
Une table de fait centrale et des dimensions
Les dimensions n’ont pas de liaison entre elles
Avantages:
Facilité de navigation
Nombre de jointures limité
Inconvénients:
Redondance dans les dimensions
Toutes les dimensions ne concernent pas les
mesures
45. 45
Modèle en étoile
Dimension Temps
ID temps
année
mois
jour
…
Dimension Magasin
ID magasin
description
ville
surface
…
Dimension Region
ID région
pays
description
district vente
….
Dimension produit
ID produit
nom
code
prix
poids
groupe
famille
…
Dimension Client
ID client
nom
prénom
adresse
…
Table de faits Achat
ID client
ID temps
ID magasin
ID région
ID produit
Quantité achetée
Montant des achats
46. 46
Modèle en flocon
Une table de fait et des dimensions décomposées en sous
hiérarchies
On a un seul niveau hiérarchique dans une table de
dimension
La table de dimension de niveau hiérarchique le plus bas
est reliée à la table de fait. On dit qu’elle a la granularité la
plus fine
Avantages:
Normalisation des dimensions
Économie d’espace disque
Inconvénients:
Modèle plus complexe (jointure)
Requêtes moins performantes
47. 47
Modèle en flocon
Dimension Temps
ID temps
annee
mois
jour
…
Dimension Magasin
ID magasin
description
ville
surface
…
Dimension produit
ID produit
ID groupe
nom
code
prix
poids
…
Dimension Client
ID client
nom
prénom
adresse
…
Dimension groupe
ID groupe
ID famille
nom
…
Dimension Famille
ID famille
nom
…
Dimension
Division vente
ID division vente
description
….
Dimension Region
ID région
ID division vente
pays
description
….
Table de faits Achat
ID client
ID temps
ID magasin
ID région
ID produit
Quantité achetée
Montant des achats
48. 48
Méthodologie: 9 étapes de Kimball
1. Choisir le sujet
2. Choisir la granularité des faits
3. Identifier et adapter les dimensions
4. Choisir les faits
5. Stocker les pré-calculs
6. Établir les tables de dimensions
7. Choisir la durée de la base
8. Suivre les dimensions lentement évolutives
9. Décider des requêtes prioritaires, des modes de requêtes
49. 49
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
50. 50
Alimentation/ mise à jour de l’entrepôt
Entrepôt mis à jour régulièrement
Besoin d’un outil permettant d’automatiser les chargements
dans l’entrepôt
Utilisation d’outils ETL (Extract, Transform, Load)
51. 51
Définition d’un ETL
Offre un environnement de développement
Offre des outils de gestion des opérations et de
maintenance
Permet de découvrir, analyser et extraire les données
à partir de sources hétérogènes
Permet de nettoyer et standardiser les données
Permet de charger les données dans un entrepôt
52. 52
Extraction
Extraire des données des systèmes de production
Dialoguer avec différentes sources:
Base de données,
Fichiers,
Bases propriétaires
Utilise divers connecteurs :
ODBC,
SQL natif,
Fichiers plats
53. 53
Transformation
Rendre cohérentes les données des différentes
sources
Transformer, nettoyer, trier les données
Exemple: unifier le format des dates
(MM/JJ/AA JJ/MM/AA)
Etape très importante, garantit la cohérence et la
fiabilité des données
54. 54
Chargement
Insérer ou modifier les données dans l’entrepôt
Utilisation de connecteurs:
ODBC,
SQL natif,
Fichiers plats
56. 56
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Accès à l’information
Démonstration
58. 58
ROLAP
Relational OLAP
Données stockées dans une base de données
relationnelles
Un moteur OLAP permet de simuler le
comportement d’un SGBD multidimensionnel
Plus facile et moins cher à mettre en place
Moins performant lors des phases de calcul
Exemples de moteurs ROLAP:
MetaCube (Informix)
DSS Agent (MicroStrategy)
59. 59
MOLAP
Multi dimensional OLAP:
Utiliser un système multidimensionnel « pur » qui gère les
structures multidimensionnelles natives (les cubes)
Accès direct aux données dans le cube
Plus difficile à mettre en place
Formats souvent propriétaires
Conçu exclusivement pour l’analyse multidimensionnelle
Exemples de moteurs MOLAP:
Microsoft Analysis Services
Essbase
Hyperion
60. 60
HOLAP
Hybride OLAP:
tables de faits et tables de dimensions stockées
dans SGBD relationnel (données de base)
données agrégées stockées dans des cubes
Solution hybride entre MOLAP et ROLAP
Bon compromis au niveau coût et performance
61. 61
Le cube
Modélisation multidimensionnelle des données
facilitant l’analyse d’une quantité selon différentes
dimensions:
Temps
Localisation géographique
…
Les calculs sont réalisés lors du chargement ou
de la mise à jour du cube
62. 62
Manipulation des données
multidimensionnelles
Opération agissant sur la structure
Rotation (rotate): présenter une autre face du cube
05 06 07
Œuf 221 263 139
Viande 275 257 116
05 06 07
Idf 101 120 52
Ain 395 400 203
63. 63
Manipulation des données
multidimensionnelles
Opération agissant sur la structure
Tranchage (slicing): consiste à ne travailler que sur une
tranche du cube. Une des dimensions est alors réduite à une
seule valeur
06
Œuf Idf 265
Ain 245
Viande Idf 152
Ain 174
05 06 07
Œuf Idf 220 265 284
Ain 225 245 240
Viande Idf 163 152 145
Ain 187 174 184
64. 64
Manipulation des données
multidimensionnelles
Opération agissant sur la structure
Extraction d’un bloc de données (dicing): ne travailler que
sous un sous-cube
05 06 07
Œuf Idf 220 265 284
Ain 225 245 240
Viande Idf 163 152 145
Ain 187 174 184
05 06 07
Œuf Idf 220 265 284
Ain 225 245 240
65. 65
Manipulation des données
multidimensionnelles
Opération agissant sur la granularité
Forage vers le haut (roll-up): « dézoomer »
Obtenir un niveau de granularité supérieur
Utilisation de fonctions d’agrégation
Forage vers le bas (drill-down): « zoomer »
Obtenir un niveau de granularité inférieur
Données plus détaillées
66. 66
05-07
Œuf 623
Viande 648
1S05 2S05 1S06 2S06 1S07
Œuf 100 121 111 152 139
Viande 134 141 120 137 116
05 06 07
Œuf 221 263 139
Viande 275 257 116
05 06 07
Bœuf 20 19 22
… … … …
Omelette 40 43 48
05 06 07
Alim. 496 520 255
Roll up
Drill down
Dimension
Produit
Dimension
Temps
Drill down
Roll up
Drill-up, drill-down
67. 67
MDX (Multidimensional Expressions)
Langage permettant de définir, d'utiliser et de récupérer
des données à partir d'objets multidimensionnels
Permet d’effectuer les opérations décrites précédemment
Equivalent de SQL pour le monde OLAP
Origine: Microsoft
68. 68
MDX, exemple
Fournir les effectifs d’une société pendant les années 2004
et 2005 croisés par le type de paiement
Dimensions,
axes d’analyse
SELECT {([Time].[2004]), ([Time].[2005])} ON COLUMNS,
{[Pay].[Pay Type].Members} ON ROWS
FROM RH
WHERE ([Measures].[Count])
Cube
2004 2005
Heure 3396 4015
Jour 3678 2056
69. 69
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Le marché du décisionnel
Démonstration
73. 73
Plan
Introduction
Les entrepôts de données
Les datamart
Architecture
Modélisation
Alimentation
Les bases de données multidimensionnelles
Accès à l’information
Démonstration
74. 74
Description du cas d’étude
Société de la grande distribution
Mode
d’expéditionTransporteur
Produit
Groupe de
produits
Famille de
produits
Division
de ventes
Région de
ventes
Magasin
Commande
client
Type de
contrat
Contrat
Client
Employé
Fonction
Stock
Fournisseurs
75. 75
Les tables qui vont nous servir
Mode
d’expédition
Transporteur
Produit
Groupe de
produits
Famille de
produits
Division de
ventes
Région de
ventes
Magasin
Commande
client
Type de
contrat
Contrat
Client
Employés
Fonction
Stock
Fournisseurs