DocumentDW

Embed Size (px)

Citation preview

Datawarehouse

C. Vangenot

PlanPartie 1 : Introduction1. 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- ObjectifsTransformer un systme dinformation qui avait une vocation de production en un SI dcisionnel= Transformation des donnes de production en informations stratgiques

Exemple de requtes dcisionnelles :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?

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'entrepriseintgration de diffrentes BDs

Les donnes doivent tre :Extraites Groupes ensembles et organises Corrles Transformes (rsum, agrgation)

2- Qu'est ce qu'un data Warehouse?Ensemble de donnesdestines 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 WarehouseRcuprer des donnes existants dans diffrentes BD sources Stocker les donnes (historises) Mettre disposition les donnes pour :Interrogation Visualisation Analyse

ArchitectureData 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 traitementsLes 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 traitementsLes 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 sontregrouper, 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 diffrentesDaprs 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 intgresProduction

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 volatilesDBMS crer DW accder

maj

Ventes

supprimer

Donnes Client

insrer Pas d'historique

charger Donnes historises

Les donnesVolume 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 normalisesproduit 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 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

Requtes (2)OLTP: Requtes simples "qui, quoi"par ex. les ventes de X. jointures: les ventes de X quel prix de quel fournisseur,

OLAP: besoin de donnes agrges, synthtisesnombre de ventes par vendeur, par rgion, par mois, nombre de ventes par vendeur, par fournisseur, par mois,

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 DWCaractristiques 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-dimensionnelleLes 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 dereprsenter les donnes dans plusieurs dimensions, manipuler les donnes facilement et efficacement.

Sparation BD et DWLes 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-OLAPDW-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 multidimensionnelleDate 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 DW3 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)

ROLAPIde: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

Avantages/inconvnientsSouplesse, volution facile, permet de stocker de gros volumes. Mais peu efficace pour les calculs complexes

ROLAPRelational OLAP

Outils moteur ROLAP SGBD relationnel

vues multi-dimensionnelles

ROLAP

Index spciaux donnes denormalisestable Employ

MOLAPIde:Modlisation directe du cube Ces cubes sont implments comme des matrices plusieurs dimensionsCUBE [1:m, 1:n, 1:p] (mesure)

Le cube est index sur ses dimensions

Avantages/inconvnients:rapide formats propritaires ne supporte pas de trs gros volumes de donnes

MOLAPMulti-Dimensional OLAP

outils

MOLAP

serveur multidimensionnel

HOLAPIde: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

HOLAPHybrid OLAP

outils

HOLAP

SGBD relationnel + serveur multi-dimensionnel

table Employ

Data warehouseImplmentation:ROLAP MOLAP HOLAP

Modles de reprsentation:Cubes (partie 3) toile & flocon (partie 4)

Partie 3: Cube

Hyper CubeHypercube : BD multidimensionnelleAxes: dimensions (date, type de produits, rgion), Chaque cellule de l'hypercube contient une mesure calcule (vente de produit). DateEcrou Vis Boulon Joint Janvier Fvrier Mars

Rgion

Est

Centre Ouest

Type de Produit

Vente de joints en janvier pour la rgion est

Rappelproduit 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

DfinitionsPrincipe 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 hirarchiquesTemps : anne semestre trimestre - mois

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

annesomme

semestresomme

trimestresomme

mois

Hirarchies multiples de dimensionsHirarchies multiples dans une dimension :Pays

Dept

rgion de ventes

Villes

Secteur de vente

Client

Manipulation d'un cubeOprateurs 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 dicingSlicing: Slection de tranches du cube par des prdicats selon une dimensionfiltrer 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

SliceCentre 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: DicingCentre 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 granularitLes 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 ExempleCentre 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 Est440 440 200 160 200 20 50 120 120 20 150 10 20

boulon joint170 100 100 20 220 220

Drill-Down exempleDrill-down ~ opration inverse de Roll-upDrill-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 floconsModlisation 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 dimensionsUne 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 mesuresUne mesure est un lment de donne sur lequel portent les analyses, en fonction des diffrentes dimensionsEx : cot des travaux, nombre daccidents, ventes

Les faitsUn fait reprsente la valeur dune mesure, mesure ou calcule, selon un membre de chacune des dimensionsExemple : 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 faitsLes mesures sont stockes dans les tables de faitsTable de fait contient les valeurs des mesures et les cls vers les tables de dimensions

Le modle en toileUne (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 toilePRODUIT 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 floconsLe 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, ContinentClient 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 floconPRODUIT 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 floconsPRODUIT 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 dateDATE

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 neigeModle en toile + normalisation des dimensions Lorsque les tables sont trop volumineusesAvantages :rduction du volume,

Inconvnients :navigation difficile, nombreuses jointures.

Le modle en constellationLa 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 warehouseDiffrentes phases:1. Conception1. Dfinir la finalit du DW : Piloter quelle activit de lentreprise ? 2. Dfinition du modle de donnes (modle en toile/flocon ou cubes)

2. Acquisition des donnes1. Dterminer et recenser les donnes entreposer: recherche des donnes dans les sources de l'entreprise 2. Nettoyage des donnes 2. Dmarches dalimentation

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

Acquisition des donnesTrois tapes:Dterminer et recenser les donnes entreposer: recherche des donnes dans les sources de donnes de l'entreprise Nettoyage des donnesconversions de donnes filtrages intgration

dmarche d'alimentation

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 donnescm inches yards Jan.22,1999 22/01/99 01/22/99 BD Facturation BD Personnelcm

Jan.22,1999

Personne 1(Paul) Personne 2(Paul)

intgrer (Paul)

StockageChoix d'implmentationMOLAP ROLAP HOLAP

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

RestitutionCest 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 restitutionDiffrents types:Requteurs et Outils d'analyse Outils de data mining

2 formes de data warehouseDatawarehouseContient les donnes concernant lensemble des composantes de lorganisation Plusieurs BD oprationnelles et sources extrieures

Data martUn sous-ensemble de lentrept global concernant un groupe spcifique dutilisateursEx : datamart concernant les ressources humaines

Peut tre dpendant ou non de lentrept de donns

ArchitectureData 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 - outilsOLAP:Monde BD : Oracle (Express server), Informix, IBM DB2 (Arbor sofware) Monde dcisionnel: Essbase, Business-object, Powerplay, MMDB (SAS institute )

Restitution:Impromptu (rapports), Dbminer (data mining),

RfrencesTransparents: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"

Livre ou chapitre de livres:J-F. Goglin: "La construction du data warehouse", dition Herms G. Gardarin: "Internet/intranet et bases de donnes", chapitre 4