Informatique et Techniques Numériques en Economie
-
TD 5 - OLAP : Exploration multidimensionnelle
Présentation générale
L'objectif de ce TD est de comprendre l'intérêt de OLAP (On
Line Analytical Processing) qui est une représentation
multi-dimensionnelle d'une base de donnée. Ce second TD porte sur
l'exploration multidimenstionnelle proprement dite. Pour cela on
utilisera un moteur OLAP open-source Mondrian, et son interface
graphique JPivot. Dans un premier temps vous apprendrez à vous
servir de l'interface sur une base de données exemple
(foodmart). Dans un second temps vous mènerez une étude sur vos
propres données, que vous remettrez sous forme de rapport.
Compétences à acquérir au cours du TD
- Utilisation de l'interface JPivot/Mondrian
- Exploration d'une base via OLAP
Travail évalué :
Rapport OLAP à rendre sur l'analyse de vos données
individuelles : exercice 4.
1- Schéma en étoile
Voici le schéma en étoile de la base foodmart, sur laquelle
vous allez travailler. (clickez sur l'image pour la voire à sa
taille originale).
Exercice 1
Identifiez sur le schéma les dimensions, les différents types
d'attributs, et les mesures.
2- Tour d'horizon de l'interface JPilot
Suivez le lien 'OLAP' sur le portail http://www.up2.FR/M1 et choisissez
le lien vers la base 'foodmart' qui correspond au schéma étoile
précédent. Vous arrivez alors devant l'interface suivante :
L'exercice suivant vous propose une découverte de cette interface.
Exercice 2
- Navigation ( ) :
Déroulez la première colonne puis déroulez la seconde. Revenez à la
position initiale, changez le mode de navigation et recommencez. Voyez
vous la différence ?
- Visualisation des données originales ()
:
Activez le quatrième bouton de navigation, des flèches
vertes apparaissent dans le tableau. Déroulez les deux premières
colonnes et choisissez une case avec un nombre de ventes
inférieur à 100 (pour éviter de faire surcharger le
serveur). Clickez sur la flèche verte, les données originales
correspondant à cette case s'affichent.
- Affichage du tableau () :
Testez les boutons un par
un, c'est souvent la meilleure des écoles.
- Affichage du graphique () :
Ce bouton permet d'afficher le
graphique correspondant au tableau que vous avez affiché. Pour
choisir le type de graphique et/ou configurer le graphique, il
faut clicker sur le bouton d'à côté ().
- Gestion des dimensions () :
Ce bouton permet de choisir les
dimensions explorées. Lorsque qu'il est clické il affiche la
liste des dimensions du cube OLAP. :
Il y a trois sections: une pour les dimensions affichées en
colonne, une pour celles affichées en ligne; et une pour les
autres, qui peuvent éventuellement servir de filtre (comme c'est
le cas ici pour Time).
- Pour déplacer les dimensions d'une section à une autre il
faut utiliser les icônes à gauche du nom de la dimension ( ) Essayez par
exemple de remplacer "Promotion Media" par "Gender".
N.B. : après chaque modification du cube il faut la
valider avec le bouton "OK" en bas du formulaire pour
qu'elle prenne effet.
- En clickant sur une dimension vous pouvez sélectionner les
valeurs qui seront affichés ou pas. Si cette dimension est en
filtre c'est la seule fonctionnalité qu'il lui reste. Essayez
par exemple de vous limiter au magasins présents aux
Etats-Unis.
- Enfin vous pouvez changer l'ordre des dimensions en
utilisant les flèches ( ).
- Enfin, le meilleur pour la fin : vous pouvez imprimer
votre travail en pdf avec le bouton , ou bien
l'exporter sous MS-Excel avec le bouton . Enfin, oui,
fait bien ce que vous croyez qu'il
fait :)
3- Exercices sur la base Foodmart
Voici quelques exemples d'utilisation d'un outil OLAP. A vous
de reproduire les graphiques qui permettent de répondre aux
questions suivantes:
Exercice 3
- Quel est le produit le plus vendu en 1997 ?
difficulté: choix des dimensions et de la mesure.
- Quel est la répartition des ventes entre les différents type
de boisson en 1997 ?
difficulté: navigation + choix du graphique.
- Y-a-t-il une différence hommes/femmes dans répartition de
la consommation entre les différents types de produits ?
difficulté: tableau croisé.
- Y-a-t-il des variations de consommation saisonnières ? mensuelles ?
difficulté: tableau croisé + choix graphique.
- Quelle est la distribution des revenus des consommateurs en Californie (CA) ?
difficulté: tri dimension + choix mesure + filtrage.
4- Exploration des données de votre magasin
Si votre cube a été correctement publié sur le serveur Pentaho
(c.f. TD4), il vous suffit de
suivre le lien "OLAP" sur le portail et vous êtes prêts à
travailler sur vos données.
Si votre cube ne vous convient pas, il faut en faire un
nouveau. Suivez la même procédure mais donner un nom différent au
nouveau cube, par exemple votre-login2 (on ne peut pas
écraser l'ancien cube).
N.B. : si vous re-génerez des données, il faut rafraichir le
serveur pour qu'elles apparaissent (le serveur Pentaho place les
données en cache pour aller plus vite.). Pour cela activer les deux
actions du lien suivant,
Refresh Mondrian, puis relancez votre analyse.
*** Exercice 4 : à rendre sous forme de rapport
- Donnez le schéma Entité-Association et relationnel de votre base de donnée.
- Proposez un schéma en étoile pour votre base de données.
- Générez (et commentez) les graphiques permettant de répondre
au mieux aux questions suivantes :
- Quelle est la distribution de l'age de vos
client parmi vos visiteurs ?
- Quel est le produit le plus visité sur votre site ?
- Quel est le type de client qui achète le plus sur votre
site ?
- Quel est la part de chaque produit dans les achats sur
votre site ?
- Quelle est la répartition des produits visité en fonction de l'age des Clients
- Comparez le type de produits acheté en fonction du style de vos clients
- Proposez au moins deux autres questions auxquelles vos nouvelles
compétences vous permettent de répondre, et bien sûr donnez la
réponse en image.
- Expliquez en quelques lignes la différence entre la vision
du schéma relationnel et celle du schéma OLAP.
- Arbre de décision
- Créez une requête sql permettant d'afficher les clients ayant acheté un produit suivi
du produit acheté. Chaque client sera décrit par son age, son sexe, sa csp et son style. Le produit
acheté devra être décrit par son nom (et éventuellement son prix et sa qualité)
Attention, il est nécessaire que le nom du produit soit le dernier attribut à être affiché.
- Exécutez votre requête dans phpmyadmin. Vous devez obtenir un tableau similaire à
celui-ci
- Enregistrez le résultat sous la forme d'un fichier mareq.css comme vu durant le TD 10
- Avec le logicile Dtree et le fichier mareq.css crée un arbre de décision permettant de déterminer quel produit est acheté en fonction des caractéristiques des clients