Vous êtes sur la page 1sur 14

Master Recherche ECD Fadila Bentayeb

Année 2006-2007 bentayeb@eric.univ-lyon2.fr Plan

Systèmes d’Informations 1. Analyse en ligne (OLAP)


Décisionnels
2. Fouille de données en ligne

1. Analyse Multidimensionnelle On-Line Analytical Processing


OLAP

• OLAP
• Contexte
• Le décisionnel

• Modélisation dimensionnelle des données • Définition


• Opérateurs OLAP

• Qui utilise OLAP et Pourquoi?

• De l ’OLTP à l ’OLAP
Contexte Définition

Un entrepôt de données offre des données


• Le terme OLAP désigne l’ensemble des moyens et des
• nombreuses techniques à mettre en œuvre pour réaliser des systèmes
d ’aide à la décision efficaces.
• homogènes
• exploitables
• Traitements semi-automatiques visant à interroger,
• multidimensionnelles visualiser et synthétiser les données
• consolidées
• Définis et mis en œuvre par les décideurs

Comment exploiter ces données à des On-Line : signifie que le processus se fait en ligne
l'utilisateur doit avoir la réponse de façon quasi-instantanée
fins d ’analyse?

Qui utilise OLAP et De l ’OLTP vers l ’OLAP


Pourquoi?

• OLTP: On Line Transaction Processing


Services commerciaux
Les applications OLTP sont des applications de production. Elles sont
•Analyse des ventes
•Prévisions constituées de traitements factuels concernant les produits, les ressources ou les
clients de l ’entreprise.
Services financiers Services marketing
•Gestion du budget, des coûts
•Analyse du marché, des • OLAP: On Line Analytical Processing
•Analyse des performances
prévisions de ventes, des
offres promotionnelles Les applications OLAP sont des applications d ’aide à la décision. Elles sont
constituées de traitements ensemblistes réduisant une population à une valeur
Production
ou un comportement.
•Planification de la production
•Analyse des défauts
Requêtes OLAP exécutées sur le data warehouse
Toutes ces applications sont capables de fournir aux managers l'information
dont ils ont besoin pour prendre leurs décisions (stratégiques) Requêtes OLTP exécutées sur les données sources
Principales différences Principales différences
entre OLTP et OLAP entre OLTP et OLAP

OLTP OLAP OLTP OLAP

Conception Orientée conception Orientée sujet Utilisation Requêtes simples Requêtes complexes
Structure statique Structure évolutive Sensibles aux performances Non sensibles aux performances

Données Détaillées Résumées, Agrégées Utilisateurs Agents opérationnels Décideurs


Actuelles Historiques
Taille 100 MB-GB 100 GB-TB
mises à jour Recalculées
NB. Users Des milliers Des centaines

Le Décisionnel
Architecture décisionnelle

Système OLTP Système décisionnel OLAP

• Architecture décisionnelle

• Systèmes décisionnels
BDD

• Requêtes OLAP : Exemples Outils d ’analyse

Magasins de données
Data Marts
Sources de
données Base de données
décisionnelle
Systèmes décisionnels Requêtes OLAP : Exemples

• Les sources de données


• Quels sont les produits dont les ventes ont chuté l’an
• internes: bases de production dernier ?
• externes: Internet, bases des partenaires
• L’entrepôt de données : lieu de stockage centralisé des • Quelles sont les quinze meilleures ventes par magasin et
informations utiles pour les décideurs par semaine durant le premier trimestre de l ’année 2001?
• Les magasins de données : extraits de l ’entrepôt orientés • Quelle est la tendance des chiffres d’affaire (CA) par
sujet. Données organisées de manière adéquate pour permettre magasin depuis 3 ans ?
des analyses rapides pour la prise de décision
• Les outils d ’analyse : permettent de manipuler les données • Quelles prévisions peut-on faire sur les ventes d’une
suivant des axes d ’analyse catégorie de produits dans les 6 mois à venir ?

Bases OLAP
Evolution du concept OLAP Modélisation dimensionnelle des données

• La base MOLAP (Multidimensional) est l'application physique du


concept OLAP. Il s'agit réellement d'une structure multidimensionnelle. • Principe
Les bases MOLAP sont rapides et performantes mais limités au gigaoctet.
• Données multidimensionnelles (table, tableau)
• La base ROLAP (Relational) est une base relationnelle classique
organisée pour réagir comme une base OLAP. Elles sont lentes et peu
performantes mais sans limites de taille. • Modélisation conceptuelle

• La base HOLAP (Hybride) est un compromis entre les deux concepts • Modélisation Logique
précédents : une base MOLAP pour les données souvent consultées (la
minorité selon Pareto), une base ROLAP pour les autres (la majorité). • ROLAP
• MOLAP
• La base DOLAP (Desktop) est une base OLAP très limitée en taille
hébergée sur le poste client. Elle est bien entendu très rapide • HOLAP
• Listes multi-chaînées
Principes Données multidimensionnelles
table relationnelle

Principes des outils OLAP


Ventes 1996
• Restructurer et stocker dans un format multidimensionnel les pièces régions quantités
informations issues de fichiers plats ou de bases relationnelles
écrous est 50
• Le format multidimensionnel organise les données le long de écrous ouest 60 table relationnelle
dimensions écrous sud 40 qui représente des
clous est 70 quantités de pièces
clous nord 40 vendues en 1996
Avantages dans quatre régions
vis ouest 50
vis sud 50
• forme conceptuelle proche de la perception qu’en a l ’analyste vis nord 60
• donnée multidimensionnelle = point dans un espace à
plusieurs dimensions Dimensions: pièces, régions, quantités

Données multidimensionnelles Modélisation Conceptuelle


tableau

Représentation bi-dimensionnelle de la table Ventes 1996


est ouest sud nord Combinaison non connue • Concepts de base • Différents modèles
Ventes 1996
ou inexistante. Ex. les
ventes de vis dans la région • Concept de fait • en étoile
écrous 50 60 40 est
• Concept de dimension • en flocon
clous 40 est
70
vis • Concept d ’hiérarchie • en constellation
vis 50 50 60

Case vide

Généralisation: Cube, Hypercube, Table multidimensionnelle


Modélisation logique ROLAP

• Utiliser un système de gestion de bases de données (SGBD) Technologie de stockage relationnelle


existant : • taille très grande
• SGBD relationnels (ROLAP) • langage : SQL étendu.
• SGBD orientés objet (OOLAP)
• l’opérateur CUBE permet de construire un cube à partir de tables
relationnelles.

• Utiliser un système de gestion de bases de données • temps de réponse pénalisés par de nombreuses jointures. C’est une solution
peu rapide mais efficace sur de grands volumes de données
multidimensionnelles (MOLAP)
• traduction de requêtes OLAP en requêtes SQL
• Utiliser un système hybride (HOLAP) • détermination de vues matérialisées à interroger
• de niveau adéquat
• de coût moindre

Modèle en étoile : exemple ROLAP

PRODUIT
PRODUIT
COMMANDE Code produit
COMMANDE
N° Cde Nom Produit
Nom Produit Date Cde Description Produit
D Date Cde TABLE DE FAITS Description Produit
TABLE DE FAITS Catégorie
Catégorie
I Ventes Description catégorie
Description catégorie
CLIENT Prix unitaire
M CLIENT Prix unitaire N° Cde
N° Client N° Client DATE
DATE
E Nom Client
Quantité Nom Client Code vendeur Clef date
N Adresse Client Date Adresse Client Code produit Date
Ville Prix Total Mois Ville Clef date Mois
S Année
Nom Ville Année
I VENDEUR VENDEUR Quantité
Code vendeur Prix Total
O Nom Vendeur VILLE Nom Vendeur VILLE
N Ville Vendeur Nom Ville Ville Vendeur Nom Ville
Quota
MESURES Région Quota Mesures Région
S Pays Pays
MOLAP
MOLAP

• C’est un système multidimensionnel « pur ».


• technologie des bases de données multidimensionnelles • Gère des structures multidimensionnelles natives
• structure de stockage : tableaux • tableaux à n dimensions (cubes, hypercubes)
• techniques de compression • Axes = Dimensions
• Cellules contiennent les mesures
• correspondance directe avec la vue multidimensionnelle
• Le calcul des agrégats dans un tel tableau se fait en colonne ou en
• gestion de la faible densité (sparsity) ligne et est par conséquent très rapide. Pas de jointure à faire
• Temps d’accès optimisés
• structure d ’index : dimensions peu denses
• Taille limitée
• bitmap indexing, join indexing • Absence d’un langage d’interrogation des données. Nécessité de
redéfinir les opérations de manipulation de structures
• données : tableaux des dimensions denses multidimensionnelles

Quelques solutions De la table relationnelle vers


la table bi-dimensionnelle

Nom éditeur technologie Ventes 1996 est ouest sud nord


Ventes 1996
Essbase Arbor Software MOLAP pièces régions quantités

DB2 OLAP Server IBM ROLAP/HOLAP écrous est 50 écrous 50 60 40


écrous ouest 60
écrous sud 40
Metacube Informix ROLAP clous est 70 40
clous 70
clous nord 40
SQL Server Microsoft HOLAP vis ouest 50
vis sud 50 60
vis
DSS Microstrategy ROLAP vis nord 60 50 50

MDDB SAS Institute MOLAP/ROLAP


Tuples éclatés pour former les noms des lignes et des colonnes et
Express-server Oracle MOLAP/ROLAP les valeurs aux intersections
De la table relationnelle vers un
cube (3 dimensions) Données éparses

Magasin Produit Date Ville PrixTotal Plus on a de dimensions plus on a de cellules vides.
Grenoble
Carrefour mouchoirs janv99 Lyon 2691,36F
Valence
2891,55 F 2226,4 F
Combinaisons sans valeurs ou non encore connues : Cube creux
Casino savon mars99 Valence 4032,54F 4032,5 F
2087,25 F

3403,88 F
Auchan parfum mars99 Grenoble 2226,40F Lyon

Casino couches févr99 Valence 4432,96F 4432,88 F


On dispose de 100 000 données (Tuples)
mars99
Carrefour couches févr99 Lyon 3403,88F 4 dimensions ayant une cardinalité de 30 modalités chacune:
Casino parfum mars99 Valence 2087,25F févr99 3403,88 F
30 * 30 * 30 * 30 = 810 000 cellules
Auchan savon mars99 Grenoble 2891,55F
Casino mouchoirs janv99 Valence 2178,72F
janv99 2691,3 F
(dont 710 000 vides : 12,3% seulement sont pleines)

couches
mouchoirs

parfum
savon
Auchan mouchoirs janv99 Grenoble 3332,16FD
Auchan couches févr99 Grenoble 3403,88F Une BD est considérée comme éparse si elle a moins de 40%
de ses cellules pleines
Cube creux
Table relationnelle Tableau multidimensionnel
(sur 3 dimensions Produits, Date, Ville)
Techniques de compression des données
(sur 4 dimensions Magasin, Produits, Date, Ville)

Cubes de données HOLAP

•Approche relationnelle : 30% du temps est consacré aux I/O.


Problèmes Solutions
•Approche multidimensionnelle : 20%. (70% calculs et 10%
décompression)
Plus grands que la taille Techniques de morcellement de
mémoire cubes en cuboïdes
HOLAP : Hybrid OLAP

• Techniques de compression combinaison des technologies ROLAP et MOLAP


Données éparses
• Nouvelle structure • données détaillées dans BDR
• données agrégées dans BDMD
Opérateurs OLAP Opérateurs OLAP

Traitements Données
• changement de niveau de détail selon différents niveaux de détail
• Changement de points de vue selon plusieurs dimensions

• Opérateurs liés à la structure


• Opérations liées à la structure
• Opérateurs liés à la granularité • Manipulation et visualisation du cube
• Opérations liées au niveau de granularité des données
• Opérateurs ensemblistes • Agrégation : données résumées
• Désagrégation : données détaillées

• Plus opérations OLTP/ensemblistes classiques

Rotate consiste à faire effectuer à un cube une rotation autour


d ’un de ses trois axes passant par le centre de deux faces opposées,
de manière à présenter un ensemble de faces différent. Une sorte Switch consiste à inter-changer la position des
de sélection de faces et non des membres. membres d ’une dimension

pièces
vis
Est 1994 vis
clous Est
Ouest 1995 clous vis
écrous régions Ouest Est
70 50
Sud 1996 10 10 50 écrous 70 50 clous
50 50 Sud Ouest
Nord 60 50 écrous
50 Nord 70 50
1996 60 Nord
50 60 vis 1996
50 50 20 50 60 60 50 60
40 40 60 Sud
1995 60 1996
70 clous 50 50 60 30 20 1995 60 40 40 60 50 60 40 50
40 40 70 70
1994 10 30 30 40 50
100 50 10 40 1995 60
écrous 50 1994 30 70
20 20 60 100
30 20 60 20 20 20 10 40
60
60 60 10 30 20 1994 100 40 40
années 10
10 Est 30 60
10 40 40
40 10 10 20 20
10
Ouest
Sud
Ventes Nord Switch

Rotate
vis
Est
clous
Ouest
écrous 70 50 Sud
50 50 Nord
1996 50 60 60
1995 70 60 40 40 60
40 40
1994 100 10 30 Ventes 1996 1995 1994
30 20 20 20
50 70 100
10
é Est
10 vis
Est c
Ventes Est 1996 1995 1994 Ventes Ouest 1996 1995 1994 clous Ouest 60 10 30
Ouest r
écrous 70 50 o
Sud Nord 10
70 100 10 30 50 50 Nord u
écrous 50 écrous 60 1996 50 60 60 s Sud 40 20
1995 70 60 40 40 60
vis 10 10 vis 50 50 50 40 40 10 10
1994 100 10 30 Est
v
30 20 20 20
i 50 50
70 50 40 10 40 Ouest 50
clous clous s
10 10
Nord 60 30 20

Ventes Sud 1996 1995 1994 Ventes Nord 1996 1995 1994 Sud 50 60 60
Nest permet de grouper sur
une même représentation bi- 70 50 40
20 10 c Est
écrous 40 écrous dimensionnelle toutes les
l 10 40
informations (mesures et Ouest
50 60 60 30 20 o
vis vis 60 membres) d ’un cube u Nord 40 20
quelque soit le nombre de ses s
10 40 20 dimensions. Sud 10
clous clous

Opérations liées à la granularité

vis
clous
Est Ventes Est Ouest Nord Sud
Ouest
écrous 70 50 Sud Les opérations agissant sur la granularité d ’observation
50 50
1996 50 60 60
Nord
1996 50 1996 60 des données caractérisent la hiérarchie de navigation
1996 40
1995 70 60 40 40 60
écrous
entre les différents niveaux.
40 40 1995 70 1995 10 1995 20
1994 100 10 30
30 20 20 20
1994 100 1994 30 1994 10 • Roll-up ou forage vers le haut: consiste à représenter
10 10
les données du cube à un niveau de granularité supérieur
1996 50 1996 60 1996 50 conformément à la hiérarchie définie sur la dimension.
vis 1995 10 1995 50 1995 30 1995 60 Une fonction d ’agrégation (somme, moyenne, etc) en paramètre de
Push consiste à 1994 10 1994 50 1994 20 l ’opération indique comment sont calculés les valeurs du niveau
1994 60
combiner les membres supérieur à partir de celles du niveau inférieur
d ’une dimension aux 1996 70
mesures du cube, i.e. de 1996 40 • Drill-down ou forage vers le bas : consiste à
faire passer des clous 1995 50 1995 10 1995 20 1995 10 représenter les données du cube à un niveau de
membres comme
contenu de cellules. 1994 40 1994 40 granularité de niveau inférieur, donc sous une forme plus
détaillée.
Base Ventes : Granularité
Granularité
lieu

• Hiérarchiser l ’information en différents niveaux


de détails appelés niveaux de granularité. est ouest sud nord régions

• Un niveau est un ensemble nommé de membres


Lyon grenoble dijon nantes bordeaux Marseille montpellier
poitier
Paris lille Villes
• Le niveau le plus bas est celui de l ’entrepôt

• Des opérations d ’agrégation successives sur ces produit temps


données offrent de nouveaux points de vue de
moins en moins détaillés de l ’information et écrous vis clous
pièces 1994 1995 1996 Années
constituent autant de niveaux supérieurs.
F. Bentayeb
Base Ventes
DEA ECD Roll-up
Ventes •Cube : Ventes
pièces
vis •cellule : écrous, est, 1994, 100
Est
clous
Ouest
écrous 70 50
régions •référence: écrous, est, 1994
50 50
Sud Ventes
Nord
1996 60
•mesure : 100
50 60
Est ouest sud nord
1995 60 40 40 60
70
40 40
•membre/paramètre : est vis
1994 10 30 20 150 170 110
100
110
30
20 20
20 •dimension : lieu clous 160 50 10 60
années 60
10 10 •niveau : régions écrous 220 100 60 10
10
temps 220 100 60 10
On peut :
•agréger les produits par catégories ou
•détailler les régions par villes.
F. Bentayeb
Représentation cubique du Roll-up Représentation cubique du Roll-up
DEA ECD

L’union de plusieurs group-by donne naissance à un cube.


vis
Est Select ALL, ALL, ALL, Sum(quantité)
clous
Ouest From VENTES
écrous 70 50
Sud UNION Select pièces, ALL, ALL, Sum(quantité)
50 50 From VENTES
Nord
1996 60 Group-By pièces ;
50 60

1995 60 40 40 60 UNION Select pièces, années, ALL, Sum(quantité)


70 L ’opération CUBE consiste à
40 40 From VENTES
1994 10 30
100 Group-By pièces, années ;
30
20 20
20
calculer tous les agrégats suivant UNION Select pièces, années, régions, Sum(quantité)
temps
220
From VENTES
100 110 tous les niveaux de toutes les
10 10 Group-By pièces, années, régions ;
60 60
L’opérateur cube est une généralisation N-dimensionnelle de
10 10 dimensions.
Fonction d ’agrégat = somme fonctions d’agrégations simples . C’est un opérateur relationnel.

CUBE = généralisation du roll-up Select pièces, années, régions, Sum(quantité Ventes)


From VENTES
Group-By CUBE pièces, années, régions ;

Drill-down Drill-down

Drill-down du niveau des régions au niveau villes

bordeaux dijon grenoble lille lyon marseille montpellier nantes paris poitiers
• permet d’obtenir des détails sur la signification d’un résultat en vis 20 20 30
10 20 50 10
affinant une dimension ou en ajoutant une dimension clous
10 30 30 40 10
écrous
30 20 30 40 20 10
• opération coûteuse d’où son intégration dans le système 10
10
1996 30 20 30 40 20 10
• Exemple : un chiffre d’affaire suspect pour un produit donné 10

1995 60 20 20
• ajouter la dimension temps : envisager l’effet week-end 10 10
10
1994 10 20 10 10 70 10
• ajouter la dimension magasin: envisager l’effet 10

géographique
Drill-down ~ opération réciproque de Roll-up
Slicing and dicing Slicing and dicing

Projection pièces
vis
Ventes 94-96 est ouest sud nord Est
vis clous
Est Ouest
clous écrous régions
Ouest 70 50
Sud
écrous 70 50
Sud
écrous 220 100 60 10 50 50
Nord clous Sud
50 50 Nord 1996
50 60 60
1996 50 60 60 écrous Nord
1995 60 40 40 60
clous 160 50 10 60 1995
70
60 40 40 60
70 40 40 40
40 10 40 30
10 40 30 1994
1994 100 100

temps 30
20 20
20 vis 20 150 170 110 30
20 20
20
1996 40 40
220
100 110 années
10 10 10 10 1995
60 60 20 20
10 10

Sélection

Calcul des agrégats Calcul des agrégats

trois possibilités

• Pré-calcul des agrégats • ne pas stocker d ’agrégats


•coûteux en temps
• Gestion des hiérarchies • stocker tous les agrégats
• coûteux en espace

• ne stocker qu’une partie des agrégats


Gérer les hiérarchies Bibilographie

•Cabibbo L. and Torlone R. « Querying multidimensional databases ». In : Proceedings of the


Utilisation de vues matérialisées (ROLAP) choisies en sixth International Workshop on Database Programming Languages, Estes Park, Colorado, USA,
fonction August 1997, p. 17
•Zhao Yihong, Deshpande Prasad M., Naughton Jeffrey F., «An Array-Based Algorithm for
Simultaneous Multidimensional Aggregates», in SIGMOD Record n° 26, Vol 2, 1997.
• du grain (niveau d ’agrégation) •R. Kimball, L. Reeves, M. Ross, W. Thornthwaite, "Concevoir et déployer un data warehouse",
Eyrolles, 2000
•W.H. Inmon, “Building the Data Warehouse”, John Wiley and Sons, 1996
• des requêtes utilisateurs (frequently asked queries) •H. Gupta, Selection and maintenance of views in a data warehouse’’, Ph.d. thesis, Standford
University, September 1999.
•S. Chaudhuri and U. Dayal., “An overview of data warehousing and olap”, technology. Sigmod
• ne stocker qu’une partie des agrégats Record, 26(l):65-74, March 1997.
•V. Sandoval, “ L’informatique décisionnelle ”, Chez Hermès, 1997.
•J.Gray, A. Bosworth, A. Leyman, H. Pirahesh, “Data Cube : A relationnal Aggregation Operator
Generalizing Group-By, Cross-Tab, and Sub-Total”, in Data Mining and Knowledge Discovery
Le grain doit être suffisament fin pour pouvoir répondre aux Journal, 1(1), 1997
requêtes •C. Alalouf, “Hybrid OLAP : The best of Both World”, White Paper by Speedware Corporation,
november 1997.