Vous êtes sur la page 1sur 85

Entrepts de

donnes
NEGRE Elsa
Universit Paris-Dauphine
2014-2015

Contexte et problmatique

Le processus de prise de dcision

Lentrept de donnes

Dfinition
Diffrence avec un SGBD
Caractristiques

Architecture dun systme dcisionnel

Modlisation multidimensionnelle

Niveau conceptuel
Niveau logique
Niveau physique

Ralisation dun entrept

Reprsentation et manipulation

Le cube OLAP

Solutions existantes

Contexte (1)

Besoin :

Qui :

Prise de dcisions stratgiques et tactiques


Ractivit
les dcideurs (non informaticiens, non statisticiens)

Comment :

Rpondre aux demandes danalyse de donnes


Dgager des informations qualitatives nouvelles

Contexte (2)

Type de donnes : donnes oprationnelles (de


production)

Bases de donnes, Fichiers, Paye, Gestion RH,

Caractristiques des donnes :

Distribues : systmes parpills

Htrognes : systmes et structures de donnes diffrents

Dtailles : organisation de donnes selon les processus


fonctionnels et donnes trop abondantes pour lanalyse

Peu/pas adaptes lanalyse : des requtes lourdes peuvent


bloquer le systme transactionnel

Volatiles : pas dhistorisation systmatique


4

Problmatique (1)
Nous avons donc :

Une grande masse de donnes

traiter

Distribues
Htrognes
Trs dtailles

Synthtiser / rsumer
Visualiser
Analyser

pour une utilisation par des

Experts / analystes dun mtier


Non informaticiens
Non statisticiens
5

Problmatique (2)

Comment rpondre aux besoins de dcideurs


afin damliorer les performances dcisionnelles
de lentreprise?
En

donnant un accs rapide et simple linformation


stratgique
En donnant du sens aux donnes
En donnant une vision transversale des donnes de
lentreprise (intgration de diffrentes bases de
donnes)
En extrayant, groupant, organisant, corrlant et
transformant (rsum, agrgation) les donnes
6

Problmatique (3)

Mettre en place un SI ddi aux applications


dcisionnelles : un entrept de donnes
(datawarehouse)
Transformer

des donnes de production en


informations stratgiques

7
Sources : Th. Ester, HEC Lausanne

Le processus de prise de dcision (1)

8
Sources : Lydie Soler, AgroTechParis

Le processus de prise de dcision (2)

9
Sources : Lydie Soler, AgroTechParis

Lentrept : Dfinition

Le DW est une collection de donnes


orientes sujet, intgres, non volatiles et
historises, organises pour le support
dun processus daide la dcision.
W.H. Inmon (1996)

Cest une BD des fins danalyse !!


10

Pourquoi pas un SGBD ? (1)

Fonctions dun SGBD :


Systmes

transactionnels (OLTP)
Permettre dinsrer, modifier, interroger
rapidement, efficacement et en scurit les
donnes de la base
Slectionner, ajouter, mettre jour, supprimer
des tuples
Rpondre de nombreux utilisateurs
simultanment
11

Pourquoi pas un SGBD ? (2)

Fonctions dun DW :
Systmes

pour laide la prise de dcision

(OLAP)
Regrouper, organiser des informations
provenant de sources diverses
Intgrer et stocker les donnes pour une vue
oriente mtier
Retrouver et analyser linformation
rapidement et facilement
12

Pourquoi pas un SGBD ? (3)


OLTP

DW

Nombreux
Employs

Peu
Analystes

Donnes

Alphanumriques
Dtailles / atomiques
Orientes application
Dynamiques

Numriques
Rsumes / agrges
Orientes sujet
Statiques

Requtes

Prdfinies

one-use

Peu de donnes
(courantes)

Beaucoup dinformations
(historises)

Dpend de lapplication

Prise de dcision

Court

Long

Trs souvent

Priodiquement

Utilisateurs

Accs
But
Temps dexcution
Mises jour

13

Pourquoi pas un SGBD ? (4)

14
Sources : Lydie Soler, AgroTechParis

Caractristiques dun DW (1)

Donnes orientes sujet


Regroupe

les informations des diffrents

mtiers
Ne tiens pas compte de lorganisation
fonctionnelle des donnes

15
Sources : Lydie Soler, AgroTechParis

Caractristiques dun DW (2)

Donnes intgres
Normalisation

des donnes
Dfinition dun rfrentiel unique

16
Sources : Lydie Soler, AgroTechParis

Caractristiques dun DW (3)

Donnes non volatiles


Traabilit

des informations et des dcisions

prises
Copie des donnes de production

17
Sources : Lydie Soler, AgroTechParis

Caractristiques dun DW (4)

Donnes historises / dates


Les

donnes persistent dans le temps


Mise en place dun rfrentiel temps

18
Sources : Lydie Soler, AgroTechParis

Caractristiques dun DW (5)


Inconvnient :
De par sa taille, le DW est rarement utilis
directement par les dcideurs car il
contient plus que ncessaire pour une
classe de dcideurs

19

Le datamart

Sous-ensemble dun entrept de donnes


Destin rpondre aux besoins dun secteur ou
dune fonction particulire de lentreprise
Point de vue spcifique selon des critres
mtiers

20
Sources : Lydie Soler, AgroTechParis

Architecture dun systme dcisionnel

21
Sources : C. Chrisment, IRIT

Plus en dtails

22

Modlisation multidimensionnelle
Niveau conceptuel
Niveau logique
Niveau physique

23

Niveau conceptuel

Description de la base multidimensionnelle


indpendamment des choix d'implantation

Les concepts:
Dimensions

et hirarchies
Faits et mesures

24

Dimension (1)

Axes d'analyse avec lesquels on veut faire l'analyse

Gographique, temporel, produits, etc.

Chaque dimension comporte un ou plusieurs


attributs/membres

Une dimension est tout ce qu'on utilisera pour faire


nos analyses.

Chaque membre de la dimension a des caractristiques


propres et est en gnral textuel

Remarque importante :

tables de dimension << Table de fait


25

Dimension (2)
Cl de substitution

Attributs de la
dimension

Dimension produit
Cl produit (CP)
Code produit
Description du produit
Famille du produits
Marque
Emballage
Poids

26

Hirarchie (1)

Les attributs/membres d'une dimension sont


organiss suivant des hirarchies
Chaque

membre appartient un niveau hirarchique


(ou niveau de granularit) particulier
Exemples :

Dimension temporelle : jour, mois, anne


Dimension gographique : magasin, ville, rgion, pays
Dimension produit : produit, catgorie, marque, etc.

Attributs dfinissant les niveaux de granularit


sont appels paramtres

Attributs informationnels lis un paramtre


sont dits attributs faibles
27

Hirarchie (2)

Hirarchies multiples dans une dimension


Pays

Anne

Dpartement

Semestre

Rgion de ventes

Semaine
Ville

Mois

Jour

Secteur de ventes

Client

28

Granularit (1)

Niveau de dtail de reprsentation


Journe

> heure du jour


Magasin > rayonnage

Choix de la granularit

29

Granularit (2)

30

Fait

Sujet analys
un ensemble d'attributs appels mesures (informations oprationnelles)

les ventes (chiffre d'affaire, quantits et montants commands, volumes des


ventes, ...)
les stocks (nombre d'exemplaires d'un produit en stock, ...),
les ressources humaines (nombre de demandes de congs, nombre de
dmissions, ).

Un fait reprsente la valeur dune mesure, calcule ou mesure, selon un


membre de chacune des dimensions

Un fait est tout ce qu'on voudra analyser.

Exemple : 250 000 euros est un fait qui exprime la valeur de la mesure Cot
des travaux pour le membre 2002 du niveau Anne de la dimension Temps
et le membre Versailles du niveau Ville de la dimension Dcoupage
administratif.

La table de fait contient les valeurs des mesures et les cls vers les tables
de dimensions
31

Mesure

lment de donne sur lequel portent les


analyses, en fonction des diffrentes
dimensions.

Ces valeurs sont le rsultat doprations


dagrgation sur les donnes
Exemple :
Cot des travaux
Nombre daccidents
Ventes

32

Cls

Tables de dimension
Cl

primaire

Tables de fait
Cl

compose

Cls trangres des tables de dimension

33

Modlisation

Au niveau conceptuel, il existe 2 modles :


en

toile (star schema)


ou en constellation (fact constellation schema)

34

Modle en toile (1)

Une table de fait centrale et des dimensions

Les dimensions nont pas de liaison entre elles

Avantages :
Facilit de navigation
Nombre de jointures limit

Inconvnients :
Redondance

dans les dimensions


Toutes les dimensions ne concernent pas les
mesures
35

Modle en toile (2)

36
Sources : Lydie Soler, AgroTechParis

Constellation (1)

Srie dtoiles
Fusion

de plusieurs modles en toile qui


utilisent des dimensions communes
Plusieurs tables de fait et tables de
dimensions, ventuellement communes

37

Constellation
(2)

38
Sources : http://gankahhwee.com

Niveau logique

Description de la base multidimensionnelle


suivant la technologie utilise :
ROLAP

(Relational-OLAP)
MOLAP (Multidimensional-OLAP)
HOLAP (Hybrid-OLAP)

39

ROLAP (1)

Les donnes sont stockes dans une BD relationnelle

Un moteur OLAP permet de simuler le comportement dun


SGBD multidimensionnel

Avantages :

Inconvnients :

Facile mettre en place


Peu couteux
Evolution facile
Stockage de gros volumes

Moins performant lors des phases de calculs

Exemple de moteur ROLAP : Mondrian


40

ROLAP (2)

41
Sources : EPFL, Lausanne

MOLAP (1)

Les donnes sont stockes comme des matrices


plusieurs dimensions : Cube[1:m,1:n,1:p](mesure)

Accs direct aux donnes dans le cube

Avantages :

Inconvnients :

Rapidit

Difficile mettre en place


Formats souvent propritaires
Ne supporte pas de rts gros volumes de donnes

Exemple de moteurs MOLAP :

Microsoft Analysis Services


Hyperion

42

MOLAP (2)

43
Sources : EPFL, Lausanne

HOLAP (1)

Solution hybride entre ROLAP et MOLAP

Donnes de base stockes dans un SGBD


relationnel (tables de faits et de dimensions) +
donnes agrges stockes dans un cube

Avantages / inconvnients :
Bon

compromis au niveau des cots et des


performances (les requtes vont chercher les
donnes dans les tables et le cube)
44

HOLAP (2)

45
Sources : EPFL, Lausanne

Modlisation

Au niveau logique, il existe 1 modle :


en

flocon (snowflake schema)

46

Modle en flocon (1)

Modle en toile + normalisation des dimensions

Avantages :

Une table de fait et des dimensions en sous-hirarchies


Un seul niveau hirarchique par table de dimension
La table de dimension de niveau hirarchique le plus bas est
relie la table de fait (elle a la granularit la plus fine)

Normalisation des dimensions


Economie despace disque (rduction du volume)

Inconvnients :

Modle plus complexe (nombreuses jointures)


Requtes moins performantes
Navigation difficile
47

Modle en flocon (2)

48
Sources : Lydie Soler, AgroTechParis

Cube (1)

Modlisation multidimensionnelle des


donnes facilitant lanalyse dune quantit
selon diffrentes dimensions :
Temps,
Localisation

gographique,

Les calculs sont raliss lors du


chargement ou de la mise jour du cube.
49

Cube (2)

50

Niveau physique

Cest limplantation et dpend donc du logiciel


utilis.

Globalement : insuffisance des instructions SQL


classiques
CREATE

TABLE AS : recopie physique,


reprendre intgralement lors de lvolution des
sources
CREATE VIEW AS : recalcul chaque
requte, temps de rponse inacceptable sur les
volumes manipuls

Optimisation : indexes,
51

Ralisation dun DW

Evolution des besoins et des sources


dmarche itrative

3 techniques :

Top-down [Inmon]
Bottom-up [Kimball]
Middle-out

52

Top-Down

Concevoir tout lentrept intgralement

Il faut donc connatre lavance toutes les dimensions et tous les faits.

Objectif : Livrer une solution technologiquement saine base sur des


mthodes et technologies prouves des bases de donnes.

Avantages :

Offrir une architecture intgre : mthode complte


Rutilisation des donnes
Pas de redondances
Vision claire et conceptuelle des donnes de lentreprise et du travail
raliser

Inconvnients :

Mthode lourde
Mthode contraignante
Ncessite du temps
53

Bottom-Up (approche inverse)

Crer les datamarts un par un puis les regrouper par des niveaux
intermdiaires jusqu' obtention d'un vritable entrept.

Objectif : Livrer une solution permettant aux usager dobtenir facilement


et rapidement des rponses leurs requtes danalyse

Avantages :

Simple raliser,
Rsultats rapides
Efficace court terme

Inconvnients :

Pas efficace long terme


Le volume de travail d'intgration pour obtenir un entrept de donnes
Risque de redondances (car ralisations indpendantes).

54

Middle-Out (approche hybride)


Concevoir

intgralement l'entrept de donnes


(toutes les dimensions, tous les faits, toutes les
relations), puis crer des divisions plus petites et plus
grables.

Avantages :
Prendre le meilleur des 2 approches
Dveloppement dun modle de donnes dentreprise de
manire itrative
Dveloppement dune infrastructure lourde quen cas de
ncessit

Inconvnients :
implique, parfois, des compromis de dcoupage (dupliquer
des dimensions identiques pour des besoins pratiques).

55

Ne pas oublier (1)

Le volume de donnes manipules

56

Ne pas oublier (2)

Voici 5 tapes importantes pour la


ralisation dun DW :

Conception
Acquisition des donnes
Dfinition des aspects techniques de la
ralisation
Dfinition des modes de restitution
Stratgies dadministration, volution,
maintenance
57

1 - Conception

Dfinir la finalit du DW :
Quelle activit de lentreprise faut-il piloter?
Quel est le processus de lentreprise modliser?
Qui sont les dcideurs?
Quels sont les faits numriques?
Quest ce qui va tre mesurer?
Quelles sont les dimensions ?
Comment les gestionnaires dcrivent-ils des donnes qui
rsultent du processus concern?

Dfinir le modle de donnes :


Modle

en toile / flocon ?
et/ou Cube?
et/ou Vues matrialises?
58

2 Acquisition des donnes

Pour lalimentation ou la mise jour de


lentrept
Mise

jour rgulire

Besoin dun outil pour automatiser les


chargements de lentrept :
ETL (Extract, Transform, Load)
59

ETL :

Modle entit-relation (BD de production)


Modle base de dimensions et de faits

Outil :
Offrant

un environnement de dveloppement
Offrant des outils de gestion des oprations et de
maintenance
Permettant de dcouvrir, analyser, et extraire les
donnes partir de sources htrognes
Permettant de nettoyer et standardiser les donnes
Permettant de charger les donnes dans un entrept
60

Extraction :
Depuis

diffrentes sources (bd, fichiers,


journaux, )
Diffrentes techniques :
Push : rgles (triggers)
Pull : requtes (queries)

Priodique

Dater ou marquer les donnes envoyes

Difficult

et rpte

Ne pas perturber les applications OLTP


61

Transformation : Etape trs importante qui


garantit la cohrence et la fiabilit des donnes
Rendre

cohrentes les donnes issues de diffrentes

sources

Unifier les donnes

Trier, Nettoyer

Ex. dates : MM/JJ/AA -> JJ/MM/AA


Ex. noms : D-Naiss, Naissance, Date-N -> Date-Naissance
Eliminer les doubles
Jointures, projection, agrgation (SUM, AVG, )
Gestion des valeurs manquantes (NULL) (ignorer ou corriger ?)
Gestion des valeurs errones ou inconsistantes (dtection et
correction)
Vrification des contraintes dintgrit (pas de violation)

Inspection manuelle de certaines donnes possible


62

63

Chargement : Insrer ou modifier les donnes dans


lentrept
Alimentation

incrmentale ou totale?, offline ou online?,


frquence des chargements?, taille de lhistorique?,

Si

pas de MAJ :
insertion de nouvelles donnes
Archivage des donnes anciennes

Sinon

(attention en cas de gros volumes)

Priodicit parfois longue


MAJ des indexes et des rsums
64

Attention

ETL ELT
Lapproche

ELT (Extraction, Loading,


Transformation) gnre du code SQL natif
pour chaque moteur de BD impliqu dans le
processus sources et cibles
Cette approche profite des fonctionnalits de
chaque BD mais les requtes de
transformation doivent respecter la syntaxe
spcifique au SGBD

65

3 Aspects techniques

Contraintes
logicielles,

matrielles,
humaines,

66

4 - Restitution
= But du processus dentreposage,
= Conditionne souvent le choix de
larchitecture et de la construction du DW
Toutes les analyses ncessaires doivent
tre ralisables !

Types doutils de restitution :


Requteurs

et outils danalyse
Outils de data mining
67

5 Administration, maintenance

Toutes les stratgies mettre en place


pour ladministration, lvolution et la
maintenance
Ex

: frquences des rafraichissements (global


ou plus fin?)

68

Reprsentation et manipulation (1)


Le cube de donnes
est traditionnellement reprsent sous
forme de table multidimensionnelle
et manipul via diffrents oprateurs

69

Reprsentation et manipulation (2)

La table multidimensionnelle
Prsente

les valeurs des mesures d'un fait en


fonction des valeurs des paramtres des dimensions
reprsentes en lignes et en colonnes tant donnes
des valeurs des autres dimensions

les lignes et les colonnes sont les axes selon lesquels le


cube est explor et chaque cellule contient la (ou les)
mesure(s) calcule(s).

correspond

une tranche du cube multidimensionnel

70

Exemple :

71

Reprsentation et manipulation (3)

Oprateurs de visualisation du cube (Cube -> Cube)


Transformation

de la granularit des donnes

(Forage)
Slection / projection sur les donnes du cube
Restructuration / rorientation du cube

72

Oprations de forage (lies la granularit)


Roll-up

(forage vers le haut) :

Reprsente les donnes un niveau de granularit


suprieur selon la hirarchie de la dimension dsire

Agrger selon une dimension


Semaine -> Mois

Drill-down

(forage vers le bas) :

Inverse du roll-up
Reprsente les donnes un niveau de granularit
infrieur

Dtailler selon une dimension


Mois -> Semaine

73

Roll-Up

sur la dimension Gographie

Drill-down

74

Oprations de slection / projection


Slice

Slection
Tranche du cube obtenue par prdicats selon une
dimension

Dice

Mois = Avril 2004

Projection selon un axe


Sorte de cumuls de slection

Projeter(Rgion, Produit)
75

Slice (Anne = 2005 )

76

Dice (Dpartement = Loir et Cher ou Gironde ,


Anne = 2007 ou 2008 )

77

Oprations de restructuration / rorientation


Pivot (ou Rotate)
Tourne le cube pour visualiser une face diffrente

(Rgion, Produit) -> (Rgion, Mois)

Switch (ou Permutation)


Inter-change la position des membres dune dimension
Nest
Imbrique des membres issus de dimensions diffrentes
Push (ou Enfoncement)
Combine les membres dune dimension aux mesures (les membres
deviennent le contenu des cellules)
AddM, DelM
Pour lajout et la suppression de mesures afficher

78

Pivot
(Temps.Anne, Gographie.Dpartement
-> Temps.Anne, Vhicules.Couleur)

79

Nest (Vhicules.Couleur, Temps.Anne)

80

Push (Vhicules.Couleur)

81

Quelques solutions commerciales

82

Quelques solutions Open source

83

Rfrences

Data Warehouse Design: Modern


Principles and Methodologies de Matteo
Golfarelli et Stefano Rizzi, 2009, Ed:
Osborne/McGraw-Hill.

Olap Solutions: Building


Multidimensional Information Systems
de E. Thomsen, 2002, Ed: John Wiley &
Sons Inc.
84

Exercice
On considre un entrept de donnes permettant dobserver les ventes
de produits dune entreprise. Le schma des tables est le suivant :
CLIENT (id-client, rgion, ville, pays, dpartement)
PRODUIT (id-prod, catgorie, cot-unitaire, fournisseur, prixunitaire, nom-prod)
TEMPS (id-tps, mois, nom-mois, trimestre, anne)
VENTE (id-prod, id-tps, id-client, date-expdition, prix-de-vente,
frais-de-livraison)
Questions
1. Indiquer quelles sont la (les) table(s) de fait et les tables de
dimension de cet entrept.
2. Donner pour chaque dimension, sa (multi-) hirarchie.
3. Donner la reprsentation du schma en toile de lentrept selon la
notation de Golfarelli.
4. On veut transformer ce schma en schma en flocon. Donner la
nouvelle reprsentation de la table TEMPS (ajouter des paramtres
/ attributs, si ncessaire)
85