Vous êtes sur la page 1sur 77

Datawarehouse

C. Vangenot

Plan

Partie 1 : Introduction

1. Objectifs 2. Qu'est ce qu'un datawarehouse? 3. Pourquoi ne pas rutiliser les BD? ROLAP MOLAP HOLAP

Partie 2 : Implmentation d'un datawarehouse


Partie 3 : Cube

Hypercube: Mesures et Dimension Oprateurs de manipulation

Partie 4 : Modlisation en toile et en flocon Partie 5 : Conception d'un datawarehouse

Partie 1: Introduction

1- Objectifs

Transformer un systme dinformation qui avait une vocation de production en un SI dcisionnel

= Transformation des donnes de production en informations stratgiques Catgorie socioprofessionnelle des meilleurs clients de chaque rgion Evolution de la part de march dun produit particulier Nombre d'employ de l'entreprise par classe d'ge, par sexe, par grade Quel est le profil des employs les plus performants?

Exemple de requtes dcisionnelles :

Objectifs (2)

Gestion et visualisation des donnes doit tre rapide et intuitive -> visualisation multi-dimensionnelle des donnes:
Date

Ecrou Vis

Boulon Joint

Janvier Fvrier Mars

Rgion

Est

Centre Ouest

Type de Produit

Objectifs (3)

Pour cela, ncessaire de retrouver et danalyser rapidement les donnes provenant de diverses sources DW offre une vision transversale des donnes de l'entreprise

intgration de diffrentes BDs Extraites Groupes ensembles et organises Corrles Transformes (rsum, agrgation)

Les donnes doivent tre :


2- Qu'est ce qu'un data Warehouse?

Ensemble de donnes

destines aux "dcideurs" souvent une copie des donnes de production avec une valeur ajoute (agrgation, historique) intgres historises de regrouper les donnes de nettoyer, d'intgrer les donnes, ... de faire des requtes, rapports, analyses de faire du data mining faire l'administration du warehouse

Ensemble d'outils permettant


Fonctions d'un Data Warehouse

Rcuprer des donnes existants dans diffrentes BD sources Stocker les donnes (historises) Mettre disposition les donnes pour :

Interrogation Visualisation Analyse

Architecture
Data Warehouse OLAP Servers Clients

Data Mining

Bases de production Data Marts Requtes Rapports OLAP

*MOLAP, ROLAP, HOLAP

INTEGRATION

Data warehouse

Cubes* Analyses statistiques Tableurs

3- Pourquoi ne pas utiliser un SGBD?

SGBD et DW :

ont des objectifs diffrents et font des traitements diffrents stockent des donnes diffrentes font l'objet de requtes diffrentes -> SGBD et DW ont besoin d'une organisation diffrente des donnes -> SGBD et DW doivent tre physiquement spars.

SGBD: Objectifs et traitements

Les SGBD sont des systmes dont le mode de travail est transactionnel (OLTP On-Line Transaction Processing). Permet d'insrer, modifier, interroger des informations rapidement, efficacement, en scurit. Deux objectifs principaux :

Slectionner, ajouter, mettre jour et supprimer des tuples Ces oprations doivent pouvoir tre effectues trs rapidement, et par de nombreux utilisateurs simultanment.

DW: Objectifs et traitements

Les datawarehouse sont des systmes conus pour laide la prise de dcision. (Mode de travail: OLAP On-Line Analytical Processing) La plupart du temps sont utiliss en lecture (utilisateurs) Les objectifs principaux sont

regrouper, organiser des informations provenant de sources diverses, les intgrer et les stocker pour donner lutilisateur une vue oriente mtier, retrouver et analyser linformation facilement et rapidement.

Donnes diffrentes

Daprs BILL Inmon : Un DW est une collection de donnes orientes sujet, intgres, non volatiles, historises, organises pour la prise de dcision.

Orientes sujet: thmes par activits majeures ; Intgres: divers sources de donnes ; Non volatiles: ne pas supprimer les donnes du DW ; Historises: trace des donnes, suivre lvolution des indicateurs.

Orientes sujet

Production

Donnes produit

Employs

Donnes client

Facturation Donnes BD

Donnes vendeur DW

Donnes intgres
Production

Employs

Donnes Client

Facturation Techniques d'intgration des donnes Techniques de nettoyage: Cohrence entre les diffrentes sources des noms, units de mesures, etc

Donnes non volatiles


DBMS crer DW accder

maj

Ventes

supprimer

Donnes Client

insrer Pas d'historique

charger Donnes historises

Les donnes

Volume trs important Donnes disperses, souvent difficiles daccs Peu ou mal intgres Complexes Non structures pour les applications dcisionnelles

Requtes (1)

BD-OLTP reprsentent les donnes sous forme aplatie: relation, donnes normalises
rgion Est Ouest Centre Est Ouest Centre Est Ouest Centre Est Ouest Centre vente 50 60 110 70 80 90 120 10 20 50 40 70 date 01012004 12122003 01112003 01042004 10022004 29032004 05052004 24042004 11022004 01032004 01102003 01012003 vendeur X X Y Y Z Y X Z Y X Y Z fournisseur ville produit prix crou vis boulon joint 44 2 3 1 fournisseur CC DD VV BB

produit crou crou crou vis vis vis boulon boulon boulon joint joint joint

Requtes (2)

OLTP: Requtes simples "qui, quoi"


par ex. les ventes de X. jointures: les ventes de X quel prix de quel fournisseur, nombre de ventes par vendeur, par rgion, par mois, nombre de ventes par vendeur, par fournisseur, par mois,

OLAP: besoin de donnes agrges, synthtises


SQL: Possibilit d'agrger les donnes (group by) mais trs coteux (parcourir toutes les tables) et il faut recalculer chaque utilisation Sur plusieurs tables (ex : somme des ventes par fournisseur), ncessit de faire des jointures souvent coteuses

Diffrences BD DW
Caractristiques Applications Utilisateurs Donnes Requtes OLTP production un dpartement professionnel IT normalises, non agrges simples, nombreuses, rgulires, prvisibles, rptitives OLAP aide la dcision transversal (entreprise) dcideur non IT dnormalises, agrges complexes, peu nombreuses, irrgulires, non prvisibles millions 1 GB 1 TB historique

Nb tuples invoqus par dizaines requte (moyenne) Taille donnes Anciennet des donnes 100 MB 1 GB rcente, mises jour

Ncessit d'une structure muti-dimensionnelle

Les BD relationnelles ne sont pas adaptes l'OLAP car :


Pas les mmes objectifs Pas les mmes donnes:

Les donnes ncessaires l'OLAP sont multi-dimensionnelles (i.e. ventes par vendeur, par date, par ville). Les tables en reprsentent une vue aplatie. Non seulement perte de performances mais aussi ncessit pour les utilisateurs de savoir comment trouver les liens entre les tables pour recrer la vue multi-dimensionnelle.

Pas les mmes traitements et requtes:

Il est donc ncessaire de disposer d'une structure de stockage adapte l'OLAP, i.e. permettant de

reprsenter les donnes dans plusieurs dimensions, manipuler les donnes facilement et efficacement.

Sparation BD et DW

Les DW vont tre physiquement spars des BD, pour des raisons de:

Performance : systmes de production ne sont pas organiss pour pouvoir rpondre efficacement aux requtes des systmes daide la dcision. Mme les requtes simples peuvent dgrader srieusement les performances. Donnes diffrentes:

Donnes historises : aide la dcision ncessite des donnes sur une longue dure, non conserve dans les BD Donnes agrges Qualit des donnes : sources diffrentes qui utilisent souvent des noms, formats, codes et mesures diffrents devant tre uniformiss

DW-OLAP

DW-OLAP :

reprsentation des donnes sous forme multidimensionnelle : Cube

produit crou crou crou vis vis vis boulon boulon boulon joint joint joint

rgion Est Ouest Centre Est Ouest Centre Est Ouest Centre Est Ouest Centre

vente 50 60 110 70 80 90 120 10 20 50 40 70

Est crous vis boulons joints 50 70 120 50

Ouest 60 80 10 40

Centre 110 90 20 70

Cube: reprsentation des donnes sous forme multidimensionnelle


Date Ecrous Vis Boulons Joints Janvier Fvrier Mars Centre Type de Produit

Ouest Est Rgion

Vente de joints en janvier pour la rgion est

Partie 2 : Implmentation d'un data warehouse

Approches pour crer un DW


3 possibilits: (1) Relational OLAP (ROLAP)


Donnes sont stockes dans un SGBD relationnel Un moteur OLAP permet de simuler le comportement d'un SGBD multi-dimensionnel Structure de stockage en cube Accs direct aux donnes dans le cube

(2) Multidimensional OLAP (MOLAP)


(3) Hybrid OLAP (HOLAP)


Donnes stockes dans SGBD relationnel (donnes de base) + structure de stockage en cube (donnes agrges)

ROLAP

Ide:

Donnes stockes en relationnel. La conception du schma est particulire: schma en toile, schma en flocon Des vues (matrialises) sont utilises pour la reprsentation multidimensionnelle Les requtes OLAP (slice, rollup) sont traduites en SQL. Utilisation d'index spciaux: bitmap Administration (tuning) particulier de la base Souplesse, volution facile, permet de stocker de gros volumes. Mais peu efficace pour les calculs complexes

Avantages/inconvnients

ROLAP

Relational OLAP

Outils moteur ROLAP SGBD relationnel

vues multi-dimensionnelles

ROLAP

Index spciaux donnes denormalises


table Employ

MOLAP

Ide:

Modlisation directe du cube Ces cubes sont implments comme des matrices plusieurs dimensions

CUBE [1:m, 1:n, 1:p] (mesure)

Le cube est index sur ses dimensions rapide formats propritaires ne supporte pas de trs gros volumes de donnes

Avantages/inconvnients:

MOLAP

Multi-Dimensional OLAP

outils

MOLAP

serveur multidimensionnel

HOLAP

Ide:

MOLAP + ROLAP Donnes stockes dans des tables relationnelles Donnes agrges stockes dans des cubes. Les requtes vont chercher les donnes dans les tables et les cubes

HOLAP

Hybrid OLAP

outils

HOLAP

SGBD relationnel + serveur multi-dimensionnel

table Employ

Data warehouse

Implmentation:

ROLAP MOLAP HOLAP Cubes (partie 3) toile & flocon (partie 4)

Modles de reprsentation:

Partie 3: Cube

Hyper Cube

Hypercube : BD multidimensionnelle

Axes: dimensions (date, type de produits, rgion), Chaque cellule de l'hypercube contient une mesure calcule (vente de produit). Date
Ecrou Vis Boulon Joint Janvier Fvrier Mars

Rgion

Est

Centre Ouest

Type de Produit

Vente de joints en janvier pour la rgion est

Rappel
produit crou crou crou vis vis vis boulon boulon boulon joint joint joint rgion Est Ouest Centre Est Ouest Centre Est Ouest Centre Est Ouest Centre vente 50 60 110 70 80 90 120 10 20 50 40 70

Est crous vis boulons joints 50 70 120 50

Ouest 60 80 10 40

Centre 110 90 20 70

Dfinitions

Principe de base : ce sont les analyses des indicateurs qui intressent lutilisateur Le modle multidimensionnel contient 2 types dattributs : les dimensions et les mesures Les mesures sont les valeurs numriques que lon compare (ex : montant_ventes, qte_vendue)

Ces valeurs sont le rsultat dune opration dagrgation des donnes

Les dimensions sont les points de vues depuis lesquels les mesures peuvent tre observes :

Ex : date, rgion, type de produit, etc.

Dimension (1)

Dimension = liste d'lments Dimension contient des membres organiss en hirarchie :

Chacun des membres appartient un niveau hirarchique (ou niveau de granularit) particulier

Granularit dune dimension : nombre de niveaux hirarchiques


Temps : anne semestre trimestre - mois

Dimension (2)

Les axes de dimension doivent fournir des rgles de calcul d'agrgat pour chaque mesure:
130 65 30 35 15 20 5 10 15 40 10 15 10 65 25 5 10

anne
somme

semestre
somme

trimestre
somme

10

mois

Hirarchies multiples de dimensions

Hirarchies multiples dans une dimension :


Pays

Dept

rgion de ventes

Villes

Secteur de vente

Client

Manipulation d'un cube

Oprateurs appliqus sur le cube sont algbriques (le rsultat est un autre cube) et peuvent tre combins Oprateurs sont:

Oprateur sur le cube Slicing & Dicing (extraction) Changement de la granularit d'une dimension Roll up (agrgation d'une dimension => rsum) Drill down (plus dtailles)

Oprateurs sur les dimensions

Slicing et dicing

Slicing: Slection de tranches du cube par des prdicats selon une dimension

filtrer une dimension selon une valeur Exemple: Slice (2004) : on ne retient que la partie du cube qui correspond cette date

Dicing: extraction d'un sous-cube

Exemple: slicing

Slice
Centre Ouest Est 2001 2002 2003 50 50 70 100 60 10 30 40 20 10 10 60 40 40 40 20 70 50 50 60 60 30 20 crous vis boulon joint

Slice (2004)
Ventes 2004 est ouest centre crou 220 160 20 vis 100 50 150 boulon 60 10 170 joint 10 60 110

2004

220

100 60

110 60

10

10

Exemple: Dicing
Centre Ouest Est 2001 2002 2003 50 50 70 100 60 10 30 40 20 10 10 60 40 40 40 20 70 50 50 60 60 30 20 crous vis boulon joint

ouest est 40 1996 1995 40 20

boulon joint 40 40 20

2004

220

100 60

110 60

10

10

Dice

Oprations lies la granularit

Les oprations agissant sur la granularit dobservation des donnes caractrisent la hirarchie de navigation entre les diffrents niveaux. Roll-up ou forage vers le haut: consiste reprsenter les donnes du cube un niveau de granularit suprieur conformment la hirarchie dfinie sur la dimension.

Utilisation de la fonction dagrgation (somme, moyenne, etc) spcifie pour la mesure et la dimension

Drill-down ou forage vers le bas : consiste reprsenter les donnes du cube un niveau de granularit de niveau infrieur, donc sous une forme plus dtaille.

Rollup Exemple
Centre Ouest Est 2001 2002 2003 50 50 70 100 60 10 30 40 20 10 10 60 40 40 40 20 70 50 50 60 60 30 20 crous vis boulon joint

Roll up sur anne

2004

220

100 60

110 60

10

10

crous vis Centre Ouest Est


440 440 200 160 200 20 50 120 120 20 150 10 20

boulon joint
170 100 100 20 220 220

Drill-Down exemple
Drill-down ~ opration inverse de Roll-up
Drill-down du niveau des rgions au niveau villes

joint boulon vis crous 2001 2002 2003 2004 30 30 10 10 20 10 20 20 10 30 20

bordeaux dijon grenoble lille 30 30 10 20 30 30 30 20 60 10 70 30 20 30 40 40 30 40

lyon marseille montpellier nantes paris 30 30 30 20 20 10 50 30 40 20 20 20 50 30 10 10 10 10 10 20 10 10 10

poitiers 10 70 10 10 10

10

Partie 4: Modles en toile et en flocon

Modlisation en toile ou en flocons


Modlisation conceptuelle BD : entit et relation Modlisation de DW : dimension et mesure Les mesures sont les valeurs numriques que lon compare (ex : montant_ventes, qte_vendue)

Ces valeurs sont le rsultat dune opration dagrgation des donnes

Les dimensions sont les points de vues depuis lesquels les mesures peuvent tre observes :

Ex : date, localisation, produit, etc. Elles sont stockes dans les tables de dimensions

Les dimensions

Une dimension peut tre dfinie comme :

un thme, ou un axe (attributs), selon lequel les donnes seront analyses Ex : Temps, Dcoupage administratif, Produits

Une dimension contient des membres organiss en hirarchie :

Chacun des membres appartient un niveau hirarchique (ou niveau de granularit) particulier Ex : pour la dimension Temps: anne semestre mois jour

Les mesures

Une mesure est un lment de donne sur lequel portent les analyses, en fonction des diffrentes dimensions

Ex : cot des travaux, nombre daccidents, ventes

Les faits

Un fait reprsente la valeur dune mesure, mesure ou calcule, selon un membre de chacune des dimensions

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 faits

Les mesures sont stockes dans les tables de faits

Table de fait contient les valeurs des mesures et les cls vers les tables de dimensions

Le modle en toile

Une (ou plusieurs) table(s) de faits comprenant une ou plusieurs mesures. Plusieurs tables de dimension dnormalises: descripteurs des dimensions. Les tables de dimension n'ont pas de lien entre elles Avantages :

Facilit de navigation Performances : nombre de jointures limit ; gestion des donnes creuses. Gestion des agrgats Toutes les dimensions ne concernent pas les mesures Redondances dans les dimensions Alimentation complexe.

Inconvnients :

Modle en toile

"Data Warehouse Models and OLAP Operations", Franconi

Exemple

"Data Warehouse Models and OLAP Operations", Franconi

Exemple de modle en toile


PRODUIT COMMANDE N Cde Date Cde TABLE DE FAITS CLIENT N Client Nom Client Ville Pays VENDEUR Code vendeur Nom Vendeur Code chef Nom chef Code produit Nom Produit Description Produit Catgorie Description catgorie Prix unitaire DATE Clef date Date Mois Anne

N Cde N Client Code vendeur Code produit Clef date quantit prix total

Le modle en flocons

Le schma en flocon est driv du schma en toile o les tables de dimensions sont normalises (la table des faits reste inchange). Avec ce schma, chacune des dimensions est dcompose selon sa (ou ses) hirarchie(s). Exemple : Commune, Dpartement, Rgion, Pays, Continent
Client Pepone Testut Soinin Vepont Martin Elvert Continent Europe Europe Europe Europe Europe Europe Pays France France France France France France Region RhneAlpes RhneAlpes RhneAlpes Ile de France Ile de France Ile de France Dpartement Rhne Rhne Rhne Paris Paris Yvelines Commune Lyon1 Lyon2 Lyon3 Paris1 Paris2 Versailles

Modle en flocon
PRODUIT COMMANDE N Cde Date Cde TABLE DE FAITS CLIENT N Client Nom Client Ville Pays VENDEUR Code vendeur Nom Vendeur Code chef Nom chef Code produit Nom Produit Description Produit Catgorie Description catgorie Prix unitaire DATE Clef date Date Mois Anne

N Cde N Client Code vendeur Code produit Clef date quantit prix total

Le modle en flocons
PRODUIT COMMANDE Pays N Cde Date Cde TABLE DE FAITS CLIENT N Client Nom Client Ville Code produit Nom Produit Description Produit Prix unitaire catgorie catgorie Description catgorie

Ville pays

N Cde N Client Code vendeur Code produit Clef date


DATE

VENDEUR Code vendeur Nom Vendeur Code chef code chef nom Chef

quantit prix total

Clef date Date Mois Mois Anne Anne

Modle en flocons de neige

Modle en toile + normalisation des dimensions Lorsque les tables sont trop volumineuses

Avantages :

rduction du volume, navigation difficile, nombreuses jointures.

Inconvnients :

Le modle en constellation

La modlisation en constellation consiste fusionner plusieurs modles en toile qui utilisent des dimensions communes. Un modle en constellation comprend donc plusieurs tables de faits et des tables de dimensions communes ou non ces tables de faits.

Modle en constellation

Partie 5: Conception d'un DW

Conception d'un data warehouse

Diffrentes phases:

1. Conception

1. Dfinir la finalit du DW : Piloter quelle activit de lentreprise ? 2. Dfinition du modle de donnes (modle en toile/flocon ou cubes) 1. Dterminer et recenser les donnes entreposer: recherche des donnes dans les sources de l'entreprise 2. Nettoyage des donnes 2. Dmarches dalimentation

2. Acquisition des donnes

3. Dfinir les aspects techniques de la ralisation 4. Dfinir les modes de restitution, 5. Stratgies dadministration, volution, maintenance

Acquisition des donnes

Trois tapes:

Dterminer et recenser les donnes entreposer: recherche des donnes dans les sources de donnes de l'entreprise Nettoyage des donnes

dmarche d'alimentation

conversions de donnes filtrages intgration

Incrmental ou total Off-line ou. on-line Frquence de chargement: chaque nuit, 1/mois Dtermination de la taille de l'historique (5 ans, 10 ans) Ralise gnralement par des outils ddis (e.g. Powermart, Info Suite...)

Exemple de nettoyage des donnes


cm inches yards Jan.22,1999 22/01/99 01/22/99 BD Facturation BD Personnel
cm

Jan.22,1999

Personne 1(Paul) Personne 2(Paul)

intgrer (Paul)

Stockage

Choix d'implmentation

MOLAP ROLAP HOLAP

Implmentation du modle en toile et/ou des cubes et/ou des vues matrialises Dfinition des index Stockage les donnes

Restitution

Cest le but du processus dentreposage des donnes. Elle conditionne souvent le choix de larchitecture du DW et de sa construction. Elle doit permettre toutes les analyses ncessaires pour la construction des indicateurs recherchs.

Diffrents types d'outils de restitution

Diffrents types:

Requteurs et Outils d'analyse Outils de data mining

2 formes de data warehouse

Datawarehouse

Contient les donnes concernant lensemble des composantes de lorganisation Plusieurs BD oprationnelles et sources extrieures Un sous-ensemble de lentrept global concernant un groupe spcifique dutilisateurs

Data mart

Ex : datamart concernant les ressources humaines

Peut tre dpendant ou non de lentrept de donns

Architecture
Data Warehouse OLAP Servers Clients

Data Mining

Bases de production Data Marts Requteurs Rapports OLAP

*MOLAP, ROLAP, HOLAP

INTEGRATION

Data warehouse

Cubes* Analyses statistiques Tableurs

Datawarehouse - outils

OLAP:

Monde BD : Oracle (Express server), Informix, IBM DB2 (Arbor sofware) Monde dcisionnel: Essbase, Business-object, Powerplay, MMDB (SAS institute ) Impromptu (rapports), Dbminer (data mining),

Restitution:

Rfrences

Transparents:

Sophie Montis: "Data Warehousing" M-A Aufaure: "Les entrepts de donnes" Enrico Franconi: "Data Warehouse Models and OLAP Operations" Hector Garcia-Molina : "Data Warehousing and OLAP" J-F. Goglin: "La construction du data warehouse", dition Herms G. Gardarin: "Internet/intranet et bases de donnes", chapitre 4

Livre ou chapitre de livres:

Vous aimerez peut-être aussi