Vous êtes sur la page 1sur 85

Entrepts de donnes

NEGRE Elsa Universit Paris-Dauphine 2013-2014

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 :

Prise de dcisions stratgiques et tactiques Ractivit les dcideurs (non informaticiens, non statisticiens)
Rpondre aux demandes danalyse de donnes Dgager des informations qualitatives nouvelles

Qui :

Comment :

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


Distribues Htrognes Trs dtailles

traiter

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

Utilisateurs
Donnes

Nombreux Employs
Alphanumriques Dtailles / atomiques Orientes application Dynamiques Prdfinies

Peu Analystes
Numriques Rsumes / agrges Orientes sujet Statiques one-use

Requtes

Accs
But Temps dexcution Mises jour

Peu de donnes (courantes)


Dpend de lapplication Court Trs souvent

Beaucoup dinformations (historises)


Prise de dcision Long Priodiquement
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


Anne Pays

Semestre Semaine Mois

Dpartement

Rgion de ventes

Ville

Secteur de ventes

Jour

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 :

Facile mettre en place Peu couteux Evolution facile Stockage de gros volumes

Inconvnients :

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 :

Rapidit

Inconvnients :

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

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)

Avantages :

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

et rpte

Dater ou marquer les donnes envoyes

Difficult

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


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)

Trier, Nettoyer

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?, pas de MAJ :
insertion de nouvelles donnes Archivage des donnes anciennes

Si

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

Mois = Avril 2004

Dice

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