View
1.093
Download
3
Category
Preview:
Citation preview
Systèmes d’Informations Systèmes d’Informations
DécisionnelsDécisionnels
Master Recherche ECD
Année 2006-2007
Fadila Bentayeb
bentayeb@eric.univ-lyon2.fr Plan
1. Analyse en ligne (OLAP)
2. Fouille de données en ligne
1. Analyse Multidimensionnelle
• OLAP
• Le décisionnel
• Modélisation dimensionnelle des données
• Opérateurs OLAP
• Contexte
• Définition
• Qui utilise OLAP et Pourquoi?
• De l ’OLTP à l ’OLAP
On-Line Analytical Processing
OLAP
Contexte
Un entrepôt de données offre des données
• nombreuses
• homogènes
• exploitables
• multidimensionnelles
• consolidées
Comment exploiter ces données à des
fins d ’analyse?
• Le terme OLAP désigne l’ensemble des moyens et des techniques à mettre en œuvre pour réaliser des systèmes d ’aide à la décision efficaces.
• Traitements semi-automatiques visant à interroger, visualiser et synthétiser les données
• Définis et mis en œuvre par les décideurs
On-Line : signifie que le processus se fait en ligne
l'utilisateur doit avoir la réponse de façon quasi-instantanée
Définition
Services financiers•Gestion du budget, des coûts
•Analyse des performances
Services commerciaux•Analyse des ventes
•Prévisions
Services marketing
•Analyse du marché, des
prévisions de ventes, des
offres promotionnelles
Production•Planification de la production
•Analyse des défauts
Qui utilise OLAP et Pourquoi?
Toutes ces applications sont capables de fournir aux managers l'information dont ils ont besoin pour prendre leurs décisions (stratégiques)
• OLTP: On Line Transaction Processing
Les applications OLTP sont des applications de production. Elles sont
constituées de traitements factuels concernant les produits, les ressources ou les
clients de l ’entreprise.
• OLAP: On Line Analytical Processing
Les applications OLAP sont des applications d ’aide à la décision. Elles sont
constituées de traitements ensemblistes réduisant une population à une valeur
ou un comportement.
Requêtes OLAP exécutées sur le data warehouse
Requêtes OLTP exécutées sur les données sources
De l ’OLTP vers l ’OLAP
OLTP OLAP
Conception Orientée conception
Structure statique
Orientée sujet
Structure évolutive
Données Détaillées
Actuelles
mises à jour
Résumées, Agrégées
Historiques
Recalculées
Principales différences
entre OLTP et OLAP
OLTP OLAP
Utilisation Requêtes simples
Sensibles aux performances
Requêtes complexes
Non sensibles aux performances
Utilisateurs Agents opérationnels Décideurs
Taille
NB. Users
100 MB-GB
Des milliers
100 GB-TB
Des centaines
Principales différences
entre OLTP et OLAP
• Architecture décisionnelle
• Systèmes décisionnels
• Requêtes OLAP : Exemples
Le Décisionnel
Magasins de donnéesData Marts
Base de données décisionnelle
Outils d ’analyse
Sources de données
Système OLTP Système décisionnel OLAP
BDD
Architecture décisionnelle
• Les sources de données
• internes: bases de production
• externes: Internet, bases des partenaires
• L’entrepôt de données : lieu de stockage centralisé des
informations utiles pour les décideurs
• Les magasins de données : extraits de l ’entrepôt orientés
sujet. Données organisées de manière adéquate pour permettre
des analyses rapides pour la prise de décision
• Les outils d ’analyse : permettent de manipuler les données
suivant des axes d ’analyse
Systèmes décisionnels
• Quels sont les produits dont les ventes ont chuté l’an
dernier ?
• Quelles sont les quinze meilleures ventes par magasin et
par semaine durant le premier trimestre de l ’année 2001?
• Quelle est la tendance des chiffres d’affaire (CA) par
magasin depuis 3 ans ?
• Quelles prévisions peut-on faire sur les ventes d’une
catégorie de produits dans les 6 mois à venir ?
Requêtes OLAP : Exemples
• La base MOLAP (Multidimensional) est l'application physique du
concept OLAP. Il s'agit réellement d'une structure multidimensionnelle.
Les bases MOLAP sont rapides et performantes mais limités au gigaoctet.
• 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.
• La base HOLAP (Hybride) est un compromis entre les deux concepts
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é).
• 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
Bases OLAPEvolution du concept OLAP Modélisation dimensionnelle des données
• Principe
• Données multidimensionnelles (table, tableau)
• Modélisation conceptuelle
• Modélisation Logique
• ROLAP
• MOLAP
• HOLAP
• Listes multi-chaînées
Principes des outils OLAP
• Restructurer et stocker dans un format multidimensionnel les
informations issues de fichiers plats ou de bases relationnelles
• Le format multidimensionnel organise les données le long de
dimensions
Avantages
• forme conceptuelle proche de la perception qu’en a l ’analyste
• donnée multidimensionnelle = point dans un espace à
plusieurs dimensions
Principes
Ventes 1996
pièces régions quantités
50
60
40
70
40
50
50
60
écrous
écrous
écrous
clous
clous
vis
vis
vis
est
ouest
sud
est
nord
ouest
sud
nord
table relationnelle
qui représente des
quantités de pièces
vendues en 1996
dans quatre régions
Dimensions: pièces, régions, quantités
Données multidimensionnellestable relationnelle
Représentation bi-dimensionnelle de la table Ventes 1996
sudouest nordestVentes 1996
écrous
clous
vis
40
5050 60
40
70
6050
Combinaison non connue
ou inexistante. Ex. les
ventes de vis dans la région
est
vis
est
Généralisation: Cube, Hypercube, Table multidimensionnelle
Case vide
Données multidimensionnelles tableau
Modélisation Conceptuelle
• Concepts de base
• Concept de fait
• Concept de dimension
• Concept d ’hiérarchie
• Différents modèles
• en étoile
• en flocon
• en constellation
• Utiliser un système de gestion de bases de données (SGBD)
existant :
• SGBD relationnels (ROLAP)
• SGBD orientés objet (OOLAP)
• Utiliser un système de gestion de bases de données
multidimensionnelles (MOLAP)
• Utiliser un système hybride (HOLAP)
Modélisation logique
Technologie de stockage relationnelle
• taille très grande
• langage : SQL étendu.
• l’opérateur CUBE permet de construire un cube à partir de tables relationnelles.
• 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
• traduction de requêtes OLAP en requêtes SQL
• détermination de vues matérialisées à interroger• de niveau adéquat• de coût moindre
ROLAP
COMMANDE
Date Cde
PRODUITPRODUIT
Nom ProduitDescription Produit
Catégorie
Description catégorie
Prix unitaireCLIENT
Nom Client
Adresse Client
Ville
DATE
Date
Mois
AnnéeVENDEUR
Nom Vendeur
Ville Vendeur
Quota
VILLE
Nom Ville
Région
Pays
TABLE DE FAITS
Quantité
Prix Total
Modèle en étoile : exemple
D
I
M
E
N
S
I
O
N
S MESURES
Ventes
COMMANDE
N° Cde
Date Cde
PRODUITPRODUIT
Code produit
Nom Produit
Description Produit
Catégorie
Description catégorie
Prix unitaireCLIENT
N° Client
Nom Client
Adresse Client
Ville
DATE
Clef date
Date
Mois
Année
VENDEUR
Code vendeur
Nom Vendeur
Ville Vendeur
Quota
VILLE
Nom Ville
Région
Pays
TABLE DE FAITS
N° Cde
Code vendeurN° Client
Clef dateCode produit
Nom Ville
QuantitéPrix Total
Mesures
ROLAP
• technologie des bases de données multidimensionnelles
• structure de stockage : tableaux
• techniques de compression
• correspondance directe avec la vue multidimensionnelle
• gestion de la faible densité (sparsity)
• structure d ’index : dimensions peu denses
• bitmap indexing, join indexing
• données : tableaux des dimensions denses
MOLAP
• C’est un système multidimensionnel « pur ».
• Gère des structures multidimensionnelles natives
• tableaux à n dimensions (cubes, hypercubes)
• Axes = Dimensions
• Cellules contiennent les mesures
• Le calcul des agrégats dans un tel tableau se fait en colonne ou en
ligne et est par conséquent très rapide. Pas de jointure à faire
• Temps d’accès optimisés
• Taille limitée
• Absence d’un langage d’interrogation des données. Nécessité de redéfinir les opérations de manipulation de structures multidimensionnelles
MOLAP
Nom éditeur technologie
Essbase Arbor Software MOLAP
DB2 OLAP Server IBM ROLAP/HOLAP
Metacube Informix ROLAP
SQL Server Microsoft HOLAP
DSS Microstrategy ROLAP
MDDB SAS Institute MOLAP/ROLAP
Express-server Oracle MOLAP/ROLAP
Quelques solutions
sudouest nordestVentes 1996
écrous
clous
vis
40
505060
40
70
6050
Ventes 1996
pièces régions quantités
50
60
40
70
40
50
50
60
écrous
écrous
écrous
clous
clous
vis
vis
vis
est
ouest
sud
est
nord
ouest
sud
nord
Tuples éclatés pour former les noms des lignes et des colonnes et
les valeurs aux intersections
De la table relationnelle versla table bi-dimensionnelle
mouchoirs
savon
parfum
couches
janv99
févr99
mars99
Lyon
Grenoble
Valence
3403,88 F
2087,25 F
2891,55 F 2226,4 F
4032,5 F
2691,3 F
4432,88 F
3403,88 F
Magasin Produit Date Ville PrixTotal
Carrefour mouchoirs janv99 Lyon 2691,36F
Casino savon mars99 Valence 4032,54F
Auchan parfum mars99 Grenoble 2226,40F
Casino couches févr99 Valence 4432,96F
Carrefour couches févr99 Lyon 3403,88F
Casino parfum mars99 Valence 2087,25F
Auchan savon mars99 Grenoble 2891,55F
Casino mouchoirs janv99 Valence 2178,72F
Auchan mouchoirs janv99 Grenoble 3332,16FD
Auchan couches févr99 Grenoble 3403,88F
Table relationnelle(sur 4 dimensions Magasin, Produits, Date, Ville)
Tableau multidimensionnel(sur 3 dimensions Produits, Date, Ville)
Cube creux
De la table relationnelle vers un cube (3 dimensions)
Plus on a de dimensions plus on a de cellules vides.
Combinaisons sans valeurs ou non encore connues : Cube creux
Une BD est considérée comme éparse si elle a moins de 40%
de ses cellules pleines
On dispose de 100 000 données (Tuples)
4 dimensions ayant une cardinalité de 30 modalités chacune:
30 * 30 * 30 * 30 = 810 000 cellules
(dont 710 000 vides : 12,3% seulement sont pleines)
Techniques de compression des données
Données éparses
Plus grands que la taille
mémoire
Techniques de morcellement de
cubes en cuboïdes
Problèmes Solutions
Données éparses • Techniques de compression
• Nouvelle structure
Cubes de données
•Approche relationnelle : 30% du temps est consacré aux I/O.
•Approche multidimensionnelle : 20%. (70% calculs et 10%
décompression)
HOLAP : Hybrid OLAP
combinaison des technologies ROLAP et MOLAP
• données détaillées dans BDR
• données agrégées dans BDMD
HOLAP
• Opérateurs liés à la structure
• Opérateurs liés à la granularité
• Opérateurs ensemblistes
Opérateurs OLAP
• Opérations liées à la structure
• Manipulation et visualisation du cube
• Opérations liées au niveau de granularité des données
• Agrégation : données résumées
• Désagrégation : données détaillées
Traitements Données
• changement de niveau de détail selon différents niveaux de détail
• Changement de points de vue selon plusieurs dimensions
• Plus opérations OLTP/ensemblistes classiques
Opérateurs OLAP
vis
clous
écrous
10 50
60
20
7020
10
50
50
50
30
30
20
50
50
60
1996
1995
1994
Est
Ouest
Sud
Nord
10
50
60
60
6060
40 4040
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
de sélection de faces et non des membres.
Rotate
Ventes
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
années
pièces
régions
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
1996
1995
1994
50
70 50
60
50
7050
60
60
50
10010
10
60
60
30
écrous
clous
visEst
Ouest
Nord
Sud
40
40
20 20
40
40
10
Switch
Switch consiste à inter-changer la position des
membres d ’une dimension
1996
1995
1994
5070 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrousclous
visEst
Ouest
SudNord
Ventes Est
écrous
vis
clous
1996 19941995
50 70
4070 50
100
1010
Ventes Sud
écrous
vis
clous
1996 19941995
40 20
10
6060
Ventes Ouest
écrous
vis
clous
1996 19941995
60 10
4010
30
5050
Ventes Nord
écrous
vis
clous
1996 19941995
40 20
10
2030
50
50 60
1996
1995
1994
5070 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrousclous
visEst
Ouest
SudNord
Est
Ouest
Sud
Nord
Est
Ouest
Sud
Nord
Est
Ouest
Sud
Nord
Ventes 1996 1995 1994
é
c
r
o
u
s
c
l
o
u
s
v
i
s
50 70 100
60 3010
30 20
10
50
20
60
40
5050
10
60
10
50
70
60
40
10
50
40
40 20
10
Nest permet de grouper sur
une même représentation bi-
dimensionnelle toutes les
informations (mesures et
membres) d ’un cube
quelque soit le nombre de ses
dimensions.
1996
1995
1994
5070 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrousclous
visEst
Ouest
SudNord
Ventes Est Nord SudOuest
vis
écrous
clous
1996 50
1995 70
1994 100
1996 60
1995 10
1994 30 1994 10
1996 40
1995 20
1995 10
1994 10
1996 50
1995 50
1994 50
1996 60
1995 30
1994 20
1996 50
1995 60
1994 60
1996 70
1995 50
1994 40
1995 10
1994 40
1996 40
1995 20 1995 10
Push consiste à
combiner les membres
d ’une dimension aux
mesures du cube, i.e. de
faire passer des
membres comme
contenu de cellules.
Les opérations agissant sur la granularité d ’observation des données caractérisent la hiérarchie de navigation entre les différents niveaux.
• Roll-up ou forage vers le haut: consiste à représenter les données du cube à un niveau de granularité supérieur conformément à la hiérarchie définie sur la dimension.
Une fonction d ’agrégation (somme, moyenne, etc) en paramètre de l ’opération indique comment sont calculés les valeurs du niveau supérieur à partir de celles du niveau inférieur
• Drill-down ou forage vers le bas : consiste à représenter les données du cube à un niveau de granularité de niveau inférieur, donc sous une forme plus détaillée.
Opérations liées à la granularité
• Hiérarchiser l ’information en différents niveaux
de détails appelés niveaux de granularité.
• Un niveau est un ensemble nommé de membres
• Le niveau le plus bas est celui de l ’entrepôt
• Des opérations d ’agrégation successives sur ces
données offrent de nouveaux points de vue de
moins en moins détaillés de l ’information et
constituent autant de niveaux supérieurs.
Granularité
lieu
sud nordouest
Marseille montpelliernantes bordeaux
poitierParis lille
est
Lyon grenoble dijon
produit
écrous vis clous
temps
1994 1995 1996
régions
Villes
pièces Années
Base Ventes : Granularité
Base VentesDEA ECD
F. Bentayeb
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
années
pièces
régions
•Cube : Ventes
•cellule : écrous, est, 1994, 100
•référence: écrous, est, 1994
•mesure : 100
•membre/paramètre : est
•dimension : lieu
•niveau : régions
Ventes
On peut : •agréger les produits par catégories ou•détailler les régions par villes.
Est ouest sud nord
temps
écrous
clous
vis
10
1010
20 150 170 110
160 50 10 60
110
60
220 100 60
220 100 60
Ventes
Roll-up
Représentation cubique du Roll-upDEA ECD
F. Bentayeb
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
temps220
100
60
10 10
60
110
L ’opération CUBE consiste à
calculer tous les agrégats suivant
tous les niveaux de toutes les
dimensions.
CUBE = généralisation du roll-up
Fonction d ’agrégat = somme
L’union de plusieurs group-by donne naissance à un cube.Select ALL, ALL, ALL, Sum(quantité)
From VENTES
UNION Select pièces, ALL, ALL, Sum(quantité)
From VENTES
Group-By pièces ;
UNION Select pièces, années, ALL, Sum(quantité)
From VENTES
Group-By pièces, années ;
UNION Select pièces, années, régions, Sum(quantité)
From VENTES
Group-By pièces, années, régions ;
L’opérateur cube est une généralisation N-dimensionnelle de
fonctions d’agrégations simples . C’est un opérateur relationnel.
Select pièces, années, régions, Sum(quantité Ventes)
From VENTES
Group-By CUBE pièces, années, régions ;
Représentation cubique du Roll-up
• permet d’obtenir des détails sur la signification d’un résultat en
affinant une dimension ou en ajoutant une dimension
• opération coûteuse d’où son intégration dans le système
• Exemple : un chiffre d’affaire suspect pour un produit donné
• ajouter la dimension temps : envisager l’effet week-end
• ajouter la dimension magasin: envisager l’effet
géographique
Drill-down
Drill-down ~ opération réciproque de Roll-up
dijonbordeaux grenoble lille lyon marseille montpellier nantes paris poitiers
clous
écrous
vis
30
20
10
20
30
10
30
30
20
10
10
10
40
50
20
2030
40
10
10
10
10
20
10
10
1070
60
30
101020
20
10
10
10
30 40 20
20
1996
1994
1995
Drill-down du niveau des régions au niveau villes
Drill-down
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
temps220
100
60
10 10
60
110
clous
est sud nord
écrous
vis
Ventes 94-96
220
160 50
170 110150
10
20
60
1060100
Projectionouest
Slicing and dicing
1996
1995
1994
50
70 50
50
60
7060
30
20
50
100
40
40
40
4010
1010
20 20
60
60
30
écrous
clous
visEst
Ouest
Sud
Nord
années
pièces
régions
1996
1995
écrous
clous Sud
Nord
40
40
20
40
40
20
Sélection
Slicing and dicing
• Pré-calcul des agrégats
• Gestion des hiérarchies
Calcul des agrégats
trois possibilités
• ne pas stocker d ’agrégats
•coûteux en temps
• stocker tous les agrégats
• coûteux en espace
• ne stocker qu’une partie des agrégats
Calcul des agrégats
Utilisation de vues matérialisées (ROLAP) choisies en
fonction
• du grain (niveau d ’agrégation)
• des requêtes utilisateurs (frequently asked queries)
• ne stocker qu’une partie des agrégats
Le grain doit être suffisament fin pour pouvoir répondre aux
requêtes
Gérer les hiérarchies
•Cabibbo L. and Torlone R. « Querying multidimensional databases ». In : Proceedings of the
sixth International Workshop on Database Programming Languages, Estes Park, Colorado, USA,
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.
•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
•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
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
Journal, 1(1), 1997
•C. Alalouf, “Hybrid OLAP : The best of Both World”, White Paper by Speedware Corporation,
november 1997.
Bibilographie
Recommended