Vous êtes sur la page 1sur 31

Data warehouse

Motivations et architecture Conception de la BD support Alimentation du DW Exploitation OLAP Conclusion

1. OLTP et OLAP
Appli. Appli. Appli. Reports & Analysis

OLAP

OLTP

ETL

DW

DM

Aides la dcision

Introduction DW

Explosion de l OLAP
Facteurs conomiques & technologiques
18 16 CA en Milliards de $ 14 12 10 8 6 4 2 0 1994 1995 1996 1997 1998 1999 2000 2001 Annes

Introduction DW

Motivations des entreprises


Besoin des entreprises

accder toutes les donnes de lentreprise regrouper les informations dissmines analyser et prendre des dcisions rapidement (OLAP) Grande distribution : marketing, maintenance, ...

Exemples d'applications concernes

produits succs, modes, habitudes dachat prfrences par secteurs gographiques mailing cibls pour le marketing classification des clients, dtection fraudes, fuites de clients

Bancaire : suivi des clients, gestion de portefeuilles

Tlcommunications : pannes, fraudes, mobiles, ...

Introduction DW

Datawarehouse : dfinition
Entrept de donnes

Ensemble de donnes historises variant dans le temps, organis par sujets, consolid dans une base de donnes unique, gr dans un environnement de stockage particulier, aidant la prise de dcision dans lentreprise. collecte de donnes de bases existantes et chargement gestion des donnes dans lentrept analyse de donnes pour la prise de dcision

Trois fonctions essentielles :


Introduction DW

Architecture type

Introduction DW

2. Concevoir le DW
Export de donnes des sources

Htrognes et varies Fichiers, BD patrimoniales, Web, Dfinition des vues exportes Intgre les donnes utiles S'appuie sur le modle relationnel Description des sources Description des vues exportes Description du schma global

Dfinition d'un schma global


Ncessit d'une gestion de mta-donnes


Conception DW

Organisation par sujet


Les donnes sont organises par sujets majeurs:

Clients, produits, ventes, Collecte les donnes utiles sur un sujet

Sujet = faits + dimensions

Exemple: ventes Exemple: Ventes (N, produit, priode, magasin, ) Exemple: Produits(IDprod, description, couleur, taille, ) Magasins(IDmag, nom, ville, dept, pays) Periodes(IDper, anne, trimestre, mois, jour)

Synthtise une vue simple des vnements analyser

Dtaille la vue selon les dimensions


Conception DW

Schmas en toile
Une table de faits encadres par N tables de dimensions Produits
Periodes
IDper anne trimestre mois jour

Table de faits ventes periode produit magasin units_vendues montant_ventes taxes_ventes

IDprod description couleur taille fournisseur

Magasins
IDmag nom ville dpartement pays

Conception DW

Schmas en flocons
Raffinement du schma toile avec des tables normalises par dimensions Produits Fournisseurs
IDprod description couleur taille IDfour IDfour description type Adresse

Ventes Avantages

vite les redondances Conduit aux constellations (plusieurs tables de faits dimensions partages)

Conception DW

Conception du schma intgr


Isoler les faits tudier

Schma des tables de faits Axes d'analyse clater en plusieurs tables lis par contraintes rfrentielles Plusieurs tables de faits partagent quelques tables de dimension (constellation dtoiles)

Dfinir les dimensions

Normaliser les dimensions

Intgrer l'ensemble

Conception DW

Bilan conception
Le datawarehouse regroupe, historise, rsume les donnes de l'entreprise Le concepteur dfinit schma exports et intgrs

des choix fondamentaux ! Ciblage essentiel !

Le datamart cest plus cibl et plus petit. Questions ?

Peut-on ajouter des donnes au niveau de l entrept ?

Conception DW

3. Alimenter le DW
ETL = Extracteur+Intgrateur

Extract + Transform + Load Depuis les bases sources ou les journaux Diffrentes techniques
Push = rgles (triggers) Pull = requtes (queries)

Extraction

Priodique et rpte

Dater ou marquer les donnes envoyes Ne pas perturber les applications OLTP

Difficult

L'alimentation

Transformation
Accs unifis aux donnes

Unification des modles


Traduction de fichiers, BD rseaux, annuaires en tables Evolution vers XML (modle d'change) plus riche Rowset, SQL limit, SQL complet,

Unification des accs

Mapping plus ou moins sophistiqu

Unification des noms


Appeler pareil les mmes choses et diffremment les choses diffrentes Application des "business rules"

Elimination des doubles Jointure, projection, agrgation (SUM, AVG)

Cleaning des donnes


L'alimentation

Data Cleaning
Valeurs manquantes (nulles)

Ignorer le tuple Remplacer par une valeur fixe ou par la moyenne Gnres en prsence de bruits Dtecter par une analyse de voisinage
cart par rapport la moyenne Factorisation en groupes (outliers)

Valeurs errones ou inconsistantes


Remplacer par une valeur fixe ou par la moyenne

Inspection manuelle de certaines donnes possible


L'alimentation

Chargement
Pas de mise jour

Insertion de nouvelles donnes Archivage de donnes anciennes Priodicit parfois longue Chargement en blocs (bulk load) Mise jour des index et rsums Cohabitation avec l'OLAP ? Procdures de reprises ?

De gros volumes

Problmes

L'alimentation

4. Grer l'entrept
Base relationnelle

Support de larges volumes (qq 100 gigas qq tras) Historisation des donnes (fentres) Importance des agrgats et chargements en blocs Base multidimensionnelle Combinaison des deux Multiprocesseurs Mmoire partage, cluster, bus partag, etc.

Base spcialise

Machine support parallle


Le multidimensionnel

Le multidimensionnel
Dimensions:

Indicateurs:

Temps Gographie Produits Clients Canaux de ventes.....

Nombre dunits vendues CA Cot Marge.....

Le multidimensionnel

Cube de donnes

Date

NumPro

2000 250 P1 P2

200
F1 P3

12

2001 300 500 400

15

NumFou

2002 350 600 300

10

F2

Le multidimensionnel

Le data cube et les dimensions


Axe d'analyse: La gographie (Pays - rgion - ville)

Variables analyses: Nb units, CA, marge... Axe d'analyse: Les produits (classe, produit)

Axes d'analyse: dimensions Axe d'analyse: Le temps Variables analyses: indicateurs (Anne, trimestre, mois, semaine) Le multidimensionnel

La granularit des dimensions


Temps
Jour s Vill es Moi s Rgio ns Trimestr es Pay s Ann es

Gographie

Produits
Le multidimensionnel

Numr os

Typ es

Gamm es

Marqu es

Exemple
Montant des ventes fonction de (Mois, rgion, Produit)
Granularit des dimensions :

R gi on

Type

Rgion

Anne Trimestre Mois Semaine Jour

Catgorie Pays

Produit

Produit

Ville

Magasin

Le multidimensionnel

Mois

La navigation multidimensionnelle
Projection en 2 dimensions
Produits

Coupe d un cube
Produits pour une rgion donne

CA
Rgion

CA

Temps en semaines

Rduction selon 1 dimension Zoom selon une dimension Produits


France Sud

CA
Temps en mois

Est Lyon

Ouest Nice

Marseille

Le multidimensionnel

L'algbre des cubes


Roll up :

Agrger selon une dimension

Semaine Mois

Drill down :

Dtailler selon une dimension

Mois Semaine

Slice et Dice:

Slection et projection selon 1 axe

Mois = 04-2003 ; Projeter(Rgion, Produit)

Pivot :

Tourne le cube pour visualiser une face

(Rgion,Produit)(Rgion, Mois)

Le multidimensionnel

Les vues d'un cube


Partant d'un cube 3D, il est possible d'agrger selon une dimension tournante On obtient un treillis de vues (calculable en SQL) NumPro,NumFou,Date NumPro,NumFou NumPro,DateNumFou,Date NumPro
Le multidimensionnel

NumFou

Date

Extension de SQL
ROLLUP:

CUBE:

SELECT <column list> FROM <table> GROUP BY ROLLUP(column_list);

Cre des agrgats n+1 niveaux, n tant le nombre de colonne de groupage

SELECT <column list> FROM <table> GROUP BY CUBE(column_list);

Cre 2n combinaisons d'agrgats, n tant le nombre de colonne de groupage n, n-1, n-2,0 colonnes

Implmentation

Exemple CUBE
Animal Chien Chat Tortue Chien Chat Chien Tortue Lieu Paris Paris Rome Rome Naples Naples Naples Quantite 12 18 4 14 9 5 1

SELECT Animal, Lieu, SUM(Quantite) as Quantite FROM Animaux GROUP BY Animal, Magasin WITH CUBE
Implmentation

Animal Chat Chat Chat Chien Chien Chien Chien Tortue Tortue Tortue -

Lieu Paris Naples Paris Naples Rome Naples Rome Paris Naples Rome

Quantite 18 9 27 12 5 14 31 1 4 5 63 30 15 18

Exemple ROLLUP
Animal Chien Chat Tortue Chien Chat Chien Tortue Lieu Paris Paris Rome Rome Naples Naples Naples Quantite 12 18 4 14 9 5 1

SELECT Animal, Lieu, SUM(Quantite) as Quantite FROM Animaux GROUP BY Animal,Magasin WITH ROLLUP
Implmentation

Animal Chat Chat Chat Chien Chien Chien Chien Tortue Tortue Tortue -

Lieu Paris Naples Paris Naples Rome Naples Rome -

Quantite 18 9 27 12 5 14 31 1 4 5 63

Quelques outils OLAP


Oracle

Cognos

OLAP API = Datacube Express = Analyse Report = Reporting BusinessQuery = Requtage BusinessObject = Requtage + Analyse + Reporting WebIntelligence = Datacube

Impromptu = Reporting Powerplay = Datacube Query = Requtage ESS Base = Base MOLAP ESS Analysis= Analyse + Datacube

Business Object

Hyperion

Implmentation

6. Le march du BI
BI= Business Intelligence

Data PRO Users Survey

Conclusion

Les Data Trucs


Datawarehouse

entrept des donnes historises de l'entreprise magasin de donnes cibl sur un sujet prcis exploration des donnes afin de dcouvrir des connaissances cube de prsentation d'units selon 3 dimensions entrept des donnes collectes sur le web

Datamart

Datamining

Datacube

Datawebhouse

Conclusion