Informatique et Techniques Numériques en Economie
-
TD 4 - OLAP : Schéma étoile

<< précédent index suivant >>

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 premier TD se concentre sur la représentation des données avec un schéma étoile.

Compétences à acquérir au cours du TD



1- Premier exemple: un vendeur de chaussures

Proposez un schéma étoile pour un vendeur de chaussures qui souhaite analyser les ventes de ses produits par mois.

Quelle est la base relationnelle sous jacente ?

Si le vendeurs possède plusieurs magasins, comment modifier le schéma pour faire une analyse par magasin ?

Comment modifier le schéma s'il souhaite réaliser une analyse soit par mois soit par semaine ?

Cet exemple est très largement inspiré de l'excellente page de Bernard Lupin, OLAP par l'exemple, que je vous recommande.


2- Deuxième exemple: gestion d'entreprise

Proposez un schéma qui permette d'étudier la différence entre les budgets prévus et les dépenses effectives d'une entreprise. On souhaite pouvoir détailler l'analyse en fonction des différents départements, de la région de la branche, et de la position du responsable du budget.



3- Troisième Exemple: investissement en capital-risque

Proposez un schéma qui permette d'analyser les propriétés des investissements en capital-risque dans le monde. Les investissements sont réalisés dans différents pays regroupés en regions mondiales (Amérique du nord, Europe, Moyen-orient), dans des start-ups qui opèrent dans différentes industries. Les start-ups sont classées par industries dans une hiérarchie à trois niveaux (groupe, segment, code). Les montants investis sont connus.



4- Création du cube pour l'analyse de vos données commerciales

Proposez un schéma étoile pour votre site commercial. Puis publiez-le sur le serveur Pentaho avec CubeDesigner.

Indications pour CubeDesigner

  1. Pour un bon fonctionnement commencez par éditer les préférences dans "Window/Preferences" [voir]:
  2. Save Location: votre-login.xml

    Publish Location: /samples/analysis

    Web Publish URL: http://80.248.218.86:8080/pentaho/RepositoryFilePublisher

    Server Userid: joe

    Preview URL: http://80.248.218.86:8080/pentaho/ViewAction?&solution=samples&path=analysis

  3. Créez un nouveau cube avec "File/New Cube Schema"
  4. Donnez un nom à votre cube : votre-login
  5. Définissez votre base de donnée en cliquent sur le bouton "Add" sous "Select Data Source" et remplissez les champs comme suit [voir]:
  6. JNDI Name: votre-login

    Driver: com.mysql.jdbc.Driver

    Connect String: jdbc:mysql://80.248.218.86/votre-login

    Username: votre-login

    Password: votre-password

    Une fois tout rempli, vous pouvez tester la connection. En cas de succès le message suivant doit apparaître : "Connection was successful".

  7. Vous pouvez alors passez à l'étape suivante (bouton "Next").
  8. L'étape 2 vous permet de sélectionner les tables à prendre en compte pour générer le cube olap [voir].
  9. Faites glisser vos tables dans l'espace de travail.

    Liez vos tables en faisant glisser le symbole "clé primaire" (vous devez avoir défini une clé primaire avec phpmyadmin) vers le champ correspondant de la table de liaison.

    Sélectionnez les champs que vous voulez utiliser en cochant les cases.

  10. L'étape 3 vous permet de définir les mesures [voir].
  11. Choississez la table qui contient les mesures.

    Choississez les champs qui correspondent au mesure, clickez sur la flèche "===>" et editer la mesure de façon à utilsier l'aggregation qui convient (et a avoir un nom pratique).

  12. L'étape 4 vous permet de définir les dimensions [voir].
  13. Sélectionner un à un les champs qui correspondent aux dimensions et clickez sur le bouton "Add Dimension".

    Renommer les dimensions de façon à éviter les "." dans les noms.

  14. L'étape 5 vous permet de vérifiez votre cube et de le publier.
  15. Jettez un coup d'oueil au XML, et remerciez Pentaho d'avoir créer un outil aussi pratique plutôt que de vous imposer d'avoir ça à tapper !

    Publiez votre cube. Une fenêtre s'ouvre et on vous demande 2 mots de passe (si les préférences ont été bien rempli il est inutile de toucher au reste) [voir] :

    Publish Password: inf9dec2

    Server Password: password

    Normalement tout devrait bien se passer en appuyant sur Publish.

    Vous pouvez même validez tout de suite votre cube en utilisant la preview.

    N.B: si le serveur pentaho vous demande de vous logger, utilisez le menu déroulant et choississez l'utilisateur "Joe (Admin)".

    Si la preview ne marche pas vous trouverez votre cube à cette addresse :

    http://80.248.218.86:8080/pentaho/Navigate?&solution=samples&path=analysis