Data warehouse
Motivations et architecture
Conception de la BD support
Alimentation du DW
Exploitation OLAP
Conclusion
1. OLTP et OLAP
Appli.
Appli.
Appli.
OLTP
OLAP
ETL
DW
DM
Introduction DW
Reports
&
Analysis
Aides
la dcision
Explosion de l OLAP
Facteurs conomiques & technologiques
18
CA en Milliards de $
16
14
12
10
8
6
4
2
0
1994
1995
1996
1997
1998
Annes
Introduction DW
1999
2000
2001
Motivations des entreprises
Besoin des entreprises
accder toutes les donnes de lentreprise
regrouper les informations dissmines
analyser et prendre des dcisions rapidement (OLAP)
Exemples d'applications concernes
Grande distribution : marketing, maintenance, ...
Bancaire : suivi des clients, gestion de portefeuilles
produits succs, modes, habitudes dachat
prfrences par secteurs gographiques
mailing cibls pour le marketing
Tlcommunications : pannes, fraudes, mobiles, ...
Introduction DW
classification des clients, dtection fraudes, fuites de clients
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.
Trois fonctions essentielles :
collecte de donnes de bases existantes et chargement
gestion des donnes dans lentrept
analyse de donnes pour la prise de dcision
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
Dfinition d'un schma global
Intgre les donnes utiles
S'appuie sur le modle relationnel
Ncessit d'une gestion de mta-donnes
Conception DW
Description des sources
Description des vues exportes
Description du schma global
Organisation par sujet
Les donnes sont organises par sujets majeurs:
Clients, produits, ventes,
Sujet = faits + dimensions
Collecte les donnes utiles sur un sujet
Synthtise une vue simple des vnements analyser
Exemple: Ventes (N, produit, priode, magasin, )
Dtaille la vue selon les dimensions
Conception DW
Exemple: ventes
Exemple: Produits(IDprod, description, couleur, taille, )
Magasins(IDmag, nom, ville, dept, pays)
Periodes(IDper, anne, trimestre, mois, jour)
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
Conception DW
IDprod
description
couleur
taille
fournisseur
Magasins
IDmag
nom
ville
dpartement
pays
Schmas en flocons
Raffinement du schma toile avec des tables normalises par
dimensions
Produits
Fournisseurs
Ventes
IDprod
description
couleur
taille
IDfour
IDfour
description
type
Adresse
Avantages
Conception DW
vite les redondances
Conduit aux constellations (plusieurs tables de faits dimensions
partages)
Conception du schma intgr
Isoler les faits tudier
Schma des tables de faits
Dfinir les dimensions
Axes d'analyse
Normaliser les dimensions
clater en plusieurs tables lis par contraintes rfrentielles
Intgrer l'ensemble
Plusieurs tables de faits partagent quelques tables de dimension
(constellation dtoiles)
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 ?
Conception DW
Peut-on ajouter des donnes au
niveau de l entrept ?
3. Alimenter le DW
ETL = Extracteur+Intgrateur
Extract + Transform + Load
Extraction
Depuis les bases sources ou les journaux
Diffrentes techniques
Push = rgles (triggers)
Pull = requtes (queries)
Priodique et rpte
Difficult
L'alimentation
Dater ou marquer les donnes envoyes
Ne pas perturber les applications OLTP
Transformation
Accs unifis aux donnes
Unification des modles
Traduction de fichiers, BD rseaux, annuaires en tables
Evolution vers XML (modle d'change) plus riche
Unification des accs
Rowset, SQL limit, SQL complet,
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
Valeurs errones ou inconsistantes
Gnres en prsence de bruits
Dtecter par une analyse de voisinage
cart par rapport la moyenne
Factorisation en groupes (outliers)
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
De gros volumes
Priodicit parfois longue
Chargement en blocs (bulk load)
Mise jour des index et rsums
Problmes
L'alimentation
Cohabitation avec l'OLAP ?
Procdures de reprises ?
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 spcialise
Base multidimensionnelle
Combinaison des deux
Machine support parallle
Multiprocesseurs
Mmoire partage, cluster, bus partag, etc.
Le multidimensionnel
Le multidimensionnel
Dimensions:
Temps
Gographie
Produits
Clients
Canaux de ventes.....
Le multidimensionnel
Indicateurs:
Nombre dunits
vendues
CA
Cot
Marge.....
300
15
NumFou
2002 350 600
12
2001 300 500 400
Date
10
Cube de donnes
NumPro
2000 250
200
F2
F1
P1
Le multidimensionnel
P2
P3
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: indicateu
(Anne, trimestre, mois, semaine)
Le multidimensionnel
La granularit des dimensions
Temps
Jours
Gographie
Produits
Le multidimensionnel
Villes
Numros
Mois
Trimestres
Rgions
Types
Annes
Pays
Gammes
Marques
Exemple
Montant des ventes fonction de (Mois, rgion, Produit)
R
gi
on
Granularit des dimensions :
Produit
Type
Rgion
Anne
Catgorie Pays
Trimestre
Produit
Mois
Ville
Magasin
Mois
Le multidimensionnel
Semaine
Jour
La navigation multidimensionnelle
Projection en 2 dimensions
Produits
Coupe d un cube
Produits
pour une rgion donne
CA
CA
Rgion
Temps en semaines
Rduction selon 1 dimension
Zoom selon une dimension
Produits
France
CA
Temps en mois
Le multidimensionnel
Est
Lyon
Sud
Ouest
Marseille
Nice
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, NumFouNumPro, DateNumFou, Date
NumPro
Le multidimensionnel
NumFou
Date
Extension de SQL
ROLLUP:
SELECT <column list>
FROM <table>
GROUP BY
ROLLUP(column_list);
Cre des agrgats
n+1 niveaux, n tant le
nombre de colonne de
groupage
Implmentation
CUBE:
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
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
OLAP API = Datacube
Express = Analyse
Report = Reporting
Business Object
Implmentation
BusinessQuery = Requtage
BusinessObject = Requtage
+ Analyse + Reporting
WebIntelligence = Datacube
Cognos
Impromptu = Reporting
Powerplay = Datacube
Query = Requtage
Hyperion
ESS Base = Base MOLAP
ESS Analysis= Analyse +
Datacube
6. Le march du BI
BI= Business Intelligence
Data PRO Users Survey
Conclusion
Les Data Trucs
Datawarehouse
entrept des donnes historises de l'entreprise
Datamart
magasin de donnes cibl sur un sujet prcis
Datamining
exploration des donnes afin de dcouvrir des connaissances
Datacube
cube de prsentation d'units selon 3 dimensions
Datawebhouse
Conclusion
entrept des donnes collectes sur le web