OSBI.FR - Open Source Business Intelligence

Mondrian en action ! (le livre)

Le Livre du Mois

Ce mois-ci, la revue de presse technique est remplacée par la revue d’un livre à paraître prochainement chez Manning Publications :  Mondrian in Action

Cet ouvrage, intégralement consacré au moteur OLAP open source Mondrian, permet de comprendre tous les aspects liés à la mise en place d’un projet d’analyse multidimensionnelle avec Mondrian, depuis la conception de l’entrepôt de données jusqu’à la configuration avancée (dans la nouvelle version 4.0)

Ce livre s’adresse à un large public : du débutant qui veut utiliser Mondrian pour la première fois, jusqu’à l’utilisateur expérimenté qui souhaite approfondir ses connaissances sur certains sujets (sécurité, performance).

Comme vous le savez sans doute, Mondrian est le moteur OLAP embarqué dans les principales solutions OSBI du marché, mais c’est Pentaho qui continue de conduire ce projet en assurant l’essentiel des évolutions et des correctifs de bugs.

Les personnes qui comme moi ont pré-commandé « Mondrian in Action » ont déjà pu apprécier la qualité technique de cet ouvrage écrit par Julian Hyde (le créateur de Mondrian), Willam D. Back et Nicholas Goodman.

Voici donc un petit aperçu des 11 chapitres de ce livre.

Note: J’invite les néophytes à lire en préambule l’article « Cube OLAP avec Mondrian » pour mieux comprendre ce qui suit…

Détail des Chapitres

1. Beyond reporting: Business Analytics

Ce chapitre permet d’introduire Mondrian et de comprendre son objectif premier : aller « au delà » de la rigidité du reporting statique afin de permettre une plus grande liberté dans l’analyse et l’exploration des données.

Tout cela grâce à l’approche OLAP (On Line Analytical Processing), qui regroupe pas mal de concepts et une technologie dédiée

2. Mondrian: a first look

Ce chapitre permet de se familiariser avec les fonctionnalités de Mondrian au travers du serveur décisionnel Pentaho.

Une VM préconfigurée disponible au téléchargement (non testée) permet d’analyser les différents contextes d’utilisation de Mondrian dans Pentaho (Saiku, Analyzer, CDF) et de se familiariser avec le langage MDX.

Des élements théoriques sont également introduits à propos de la modélisation dimensionnelle : schéma en étoile (Star Schema), méthode d’alimentation d’un entrepôt de données avec un ETL comme Kettle (Pentaho Data Integration)

3. Creating the data mart

Ce chapitre détaille la mise en place effective d’un schéma en étoile dans une base de données relationnelle avec les notions suivantes :

  • Table de faits
  • Tables de dimensions
  • Dimensions à évolutions lentes (SCD)
  • Dimensions temporelles
  • Intérêt du schéma en flocons
  • Dimensions dégénérées et dimensions « junks »

4. Multidimensionnal modeling: making analytics data acessible

Ce chapitre décrit comment définir un schéma Mondrian en version 4.

Tous les éléments du schéma XML sont passés en revue et détaillés au travers d’exemples : Schema, Cube, Dimension, Hierarchies, Levels, Mesure…

Les habitués de Mondrian seront curieux de découvrir la nouvelle implémentation v4 (et notamment ses atouts !).

Dans ce chapitre, on apprend également que Mondrian dispose d’un chargeur automatique de dimension temporelle (au cas où vous ne souhaiteriez par traiter ça avec l’ETL)

5. How schema grows

Ce chapitre permet de comprendre comment faire évoluer un schéma mondrian lorsqu’il faut gérer une plus grande complexité métier.

Sont ainsi explicitées les dimensions partagées, les hiérarchies récursives (parent-enfant), les mesures calculées, l’intégration de calculs et d’expressions MDX dans le schéma.

6. Securing data

Comment sécuriser l’accès aux éléments d’un cube ?

Ce chapitre détaille la puissance (et la finesse) du mécanisme de gestion des droits d’accès (Security Grants) dans Mondrian avec les éléments suivants : SchemaGrants, CubeGrants, DimensionGrants, HierarchyGrants, MemberGrants, Measure grants

7. Maximizing Mondrian performance

Ce chapitre permet de détailler les méthodes pour obtenir des temps de réponse satisfaisants avec Mondrian, même lorsque l’entrepôt de données contient des millions d’enregistrements. De nombreux aspects sont abordés: tuning de la base de données, mise en place de tables d’agrégation, utilisation et configuration des différents caches de Mondrian.

Bref, un chapitre à ne pas rater !

8. Dynamic security

Comment gérer la sécurité dans Mondrian lorsque les rôles sont trop complexes et/ou nombreux ?

Ce chapitre montre un exemple de « Dynamic Schema Processor », qui permet une génération dynamique du schéma Mondrian en fonction de l’utilisateur connecté.

Attention pour ce chapitre, on passe nécessairement par la case « Développement Java » (public averti donc)

9. Working with mondrian and Pentaho

Ce chapitre détaille comment utiliser les données d’un cube Mondrian avec les différents modules de Pentaho :

  • Pentaho Analyzer (version commerciale uniquement)
  • Saiku
  • Community Dashboard Framework (CDF)
  • Report Designer
  • Pentaho Data Integration

10 . Developping with mondrian

Ce chapitre illustre les diverses possibilités d’interrogation de Mondrian à partir d’application tierces, et cela avec 2 méthodes:  XML/A et OLAP4J

11. Advanced analytics

Ce dernier chapitre démontre la puissance du langage MDX dans un contexte d’analyse de données : calculs de ratios et tendances, opérateurs temporels (Year To Date), classement (top 10, bottom 20…).

Le livre se termine par l’utilisation des scénarios dans Saiku (simulation budgétaire) et une ouverture vers d’autres thématiques (en vogue) :

  • datamining (projets Weka et R)
  • BigData  (Hadoop, Hive, NoSql)
  • bases de données analytiques.

Pour conclure

« Mondrian in Action » est tout simplement le livre de référence à posséder si vous souhaitez mettre en place une solution OLAP open source !

N’oubliez pas de consulter également le blog de Julian Hyde (ce sera donc le blog du mois…)

A bientôt pour un peu plus de technique 😉