Les cubes OLAP permettent à un utilisateur de « naviguer » au travers de ses données. Pour ce faire, un axe d'analyse, appelé « mesure » va être défini, puis analysé suite à un croisement avec des données organisées sous forme de dimensions.
Par exemple, on souhaite produire une analyse sur les coûts de transport de produits. Ceci constituera la « mesure » du cube. Les pays expéditeurs et destinations seront deux dimensions possibles. La période de temps (en mois ou années) constituera une autre dimension.
On pourra alors étudier l'évolution des coûts de transports sur une période en mois pour tous les pays. Ou bien produire une analyse de ces coûts entre deux pays, entre deux continents (résultat d'une agrégation des dimensions unitaires de pays). Ou bien, en mixant les deux dimensions d'analyse, entre plusieurs continents sur plusieurs périodes.
Cet exemple sera repris et commenté dans nos études des solutions.
Les cubes sont classés en deux grandes familles :
- • les cubes ROLAP dont l'implémentation en OpenSource est la solution MONDRIAN
- • les cubes MOLAP dont l'implémentation en OpenSource est la solution PALO
Les cubes ROLAP (OLAP basé sur une structure Relationnelle) permettent d'accéder directement aux données physiques contenues dans les tables relationnelles. Les outils présentent les données regroupées selon des vues métier, organisées autour des mesures et des dimensions.
Il devient possible de passer d'une vue « globalisée » par les axes, présentant des résultats agrégés, à une vue unitaire des données. Cette navigation, d'une vision globale à une vision unitaire, s'appelle le « drill through » ou le « drill down ».
La limite d'usage de cette méthode apparaît lors de sa mise en oeuvre sur une base de volumétrie importante. L'outil interroge la base à chaque demande d'analyse.
Les cubes MOLAP (OLAP optimisé pour l'analyse Multidimensionnelle) accèdent à des données préalablement agrégées selon les mesures et les dimensions. Il n'est donc pas possible à priori de descendre vers les données unitaires.
Sa mise en oeuvre implique au préalable une extraction des données selon les axes de mesure et de dimensions définis par les besoins d'analyse.
Cette méthode d'analyse, basé sur un sous ensemble de données limité, permet des temps de réponses élevés sur une base de volumétrie importante.
Il existe aussi des solutions Hybrides (HOLAP) permettant une première analyse optimisée des données par un cube MOLAP, puis en cas de besoin d'analyse plus fine, d'accéder aux données au travers d'un cube ROLAP. A notre connaissance, aucune solution de ce type n'est représentée dans le monde de l'Open Source.
Utiliser une solution multidimensionnelle implique deux types d'outils :
Un composant permettant le design du cube (définition des axes, des indicateurs, des modalités d'alimentation, de la sécurité…)
Un client permettant à l'utilisateur d'exploiter les données fournies au travers du cube. (client web ou lourd, add in excel …)
Dans la suite du document nous vous présentons les deux solutions opensource éligibles au titre de moteur OLAP :
- la solution Mondrian : les différents composants pour le design du cube et les différents composants clients permettant sa lecture,
- la solution Palo et ses différents clients.
Pour l'analyse au moyen de cubes OLAP, les fonctions importantes sont listées dans le tableau suivant.
Nous indiquerons en fin de chacune des études sur les deux grandes solutions OpenSource, l'avancée des réalisations sur les fonctions majeures.
Outillage |
Type |
Fonction majeure |
Description |
Outil de design (conception) du moteur OLAP |
Tout type OLAP |
Déclaration des sources de données, des axes et indicateurs, de colonnes calculées supplémentaires |
Fonctions bien évidemment primordiales. C'est surtout le confort apporté à ces fonctions de conception que nous évaluons au travers de ce critère |
|
Tout type OLAP |
Sécurité – gestion des accès aux données |
Toujours la même problématique de confidentialité des données. Elle peut être implémentée par des filtres relatifs aux profils des utilisateurs ou par la constitution de vues sur les cubes |
|
Tout type OLAP |
Mode de consolidation des indicateurs |
Selon la nature de l'indicateur, sa consolidation sur l'axe temps ne prend pas la même forme. Au-delà de la simple somme, Il peut être nécessaire d'agréger la dernière valeur disponible sur la période (notamment pour les indicateurs de type stock), la valeur minimale ou maximale de l'indicateur sur la période |
|
|
Gestion des dimensions récursives |
Permet de traiter un axe d'analyse dont le nombre de niveau hiérarchique n'est pas fixe (les filiations sont déclarées au sein d'une même table de manière récursive). Cela reste cependant une fonctionnalité avancée présente dans peu de solutions OLAP |
|
|
Gestion avancée de la dimension temps |
Capacité native à comparer les indicateurs d'une période de temps à la même période précédente (que ce soit sur un pas mensuel, annuel, en cumul depuis le début de l'année – YTD - , en cumul depuis le début du trimestre – QTD – etc…) |
|
|
Elaboration d'un rapport |
Avec les possibilités de mises en forme classiques des rapports, formats d'exports disponibles, canaux de diffusion etc… |
|
MOLAP |
Modalités d'alimentation full ou différentiel |
Un cube MOLAP stockant les données, les modalités d'alimentation deviennent primordiales. Avoir le choix entre les deux modes est utile selon le contexte d'utilisation de ces cubes, la volumétrie, et la fenêtre de chargement disponible. On distinguera l'alimentation full (à chaque alimentation du cube, l'intégralité des données sont rechargées) et le mode différentiel (mécanisme permettant de n'alimenter que les nouvelles données ou celles modifiées depuis la dernière extraction) - |
|
MOLAP |
Accès au détail |
Le cube MOLAP stockant ses données, il est courant de ne pas intégrer les données de niveau de détail issues de la BDD. Dans certains contextes métier il est intéressant de pouvoir naviguer dans des indicateurs agrégés puis d'obtenir les enregistrements unitaires constitutifs de la valeur de l'indicateur sur un croisement donné. Exemple marketing classique : Les équipes utilisent le cube MOLAP pour naviguer et identifier une population spécifique sur laquelle ils souhaitent positionner une offre. Dans le cadre du mailing ils ont besoin des clients sous jacent avec leur coordonnées. Il faut pouvoir à partir de la cellule sélectionnée dans le cube accéder à la population qui a permis de construire cette valeur. |
|
|
Implémentation des normes XML/A ou MDX |
MDX est le langage de requête multidimensionnel, comme SQL l'est pour les bases relationnelles. XML/A est une norme d'échange au format XML/SOAP permettant d'interroger un cube au travers d'un WebService sur le protocol HTTP. Elle permet de changer de fournisseur OLAP sans modification de l'interface de navigation. |
Outil de consultation |
|
Navigation (drill down, slice and dice) |
Un aspect essentiel d'un cube pour l'utilisateur, à la découverte d'information, est la fluidité. Il faut donc aisément pouvoir inverser des axes, les imbriquer entre eux, descendre d'un clic dans la hiérarchie, remonter dans l'agrégation aussi simplement etc… |
|
|
Vision de l'information (Liste, Tableau croisé, Graphes à barre, radar, histogramme …) |
– La représentation de l'information impacte considérablement la rapidité d'appréhension et de digestion d'une information. Selon ce que sont censées illustrer les données, ou encore le nombre d'entrées qu'elles présentent, il convient mieux de sélection un format de vision différent. Les outils doivent donc être dotés de modes de représentation différents |
|
|
Filtre, couche |
Un rapport, même issu de la consultation d'un cube, ne présente que deux dimensions. L'ajout d'une couche permet d'obtenir une superposition du rapport en couches déclinées sur les valeurs d'un axe d'analyse permettant un effet « 3eme » dimension. La notion de filtre est primordiale pour permettre de délimiter le périmètre des autres axes non affichés à l'écran |
|
|
Ajout de calcul |
Possibilité d'ajouter des colonnes calculées dans le rapport à l'écran dans le but entre autres de comparer les données entre elles. |
|
|
Mise en forme de rapports |
pour rendre l'information visible, s'assurer qu'elle sera perçue à sa juste valeur, celle-ci doit être lisible. De même pour être partagée, communiquée vers des tiers, le rendu doit être structuré. Il est donc important de considérer les capacités de mise en forme des outils. Aérer l'information, mettre en évidence les groupements, professionnaliser l'aspect sont autant de points importants |
La solution MONDRIAN est développée en OpenSource depuis 2001 sous licence CPL et se présente sous la forme d'un ensemble de librairies Java. Elles permettent la représentation de données relationnelles dans un cube ROLAP, grâce à un fichier XML décrivant les axes de mesures et les dimensions.
La mise en oeuvre du serveur intègre la conception de ce fichier de description, préalable à l'interrogation des données grâce à un outil client.
Mondrian v3.0 |
La solution MONDRIAN est une implémentation Java de cubes ROLAP |
Public |
MOE : Définition d'un cube ROLAP grâce à des librairies JAVA |
Pré-requis |
- JVM
- XML (configuration)
|
DESCRIPTION |
-La solution MONDRIAN se présente sous la forme d'un ensemble de librairies Java qui permettent la représentation de données relationnelles dans un cube ROLAP
o La configuration de l'accès aux données relationnelles se fait depuis un fichier .xmlo La définition de la structure du cube (axes, indicateurs) peut se faire au moyen des outils de modélisation « CubeDesignor », « Schema workbench» ou « FreeAnalysis Schema Designer » |
Licence |
Common Public License - v 1.0 |
Notes |
Depuis la version 1.2 un système d'agrégation de tables à fait son apparition pour l'optimisation du temps de réponse des requêtes mais sa mise en place reste complexe |
V-B-1. Mise en oeuvre du serveur▲
Comme explicité plus haut, le serveur MONDRIAN repose sur l'implémentation ROLAP. Il permet donc d'interroger directement une base relationnelle, au travers de la définition d'un « schéma » précisant les axes de mesures et les dimensions.
Ce schéma se présente sous forme d'un fichier « .xml », configurant le mode d'accès aux données.
Ce fichier peut être modélisé au moyen des outils suivants :
« CubeDesignor », outillage conçu par Pentaho, mais désormais abandonné
« Schema Workbench », outillage conçu conjointement par Pentaho et Jasper. Remplaçant de « CubeDesignor »
« FreeAnalysis Schema Designer », outillage conçu par BPM
Un cube Mondrian peut également être implémenté dans une plate-forme telle que Jasper, Pentaho ou SpagoBI. L'interrogation se fera alors à travers l'outil « JPivot », en mode web.
Ci-dessous le schéma d'architecture nous permet de comprendre les mécanismes mis en oeuvre :
- l'outil client transmet une requête au format MDX au serveur MONDRIAN
- après validation du format de la requête, celui-ci utilise le schéma XML correspondant aux données à traiter afin de transmettre une demande formatée à la couche de requêtage SQL
- la couche de requêtage accède à la base physique et extrait les données correspondantes à la requête
- les résultats sont transmis à l'outil client.
IV-B-2. Outils de design du fichier « schema XML »▲
IV-B-2-a. Schema Workbench▲
Aussi appelé « Jasper Workbench », cet outil permet de définir les axes du cube ROLAP dans le fichier de description XML. Il se connecte via des drivers JDBC aux bases relationnelles et permet de définir les mesures, les dimensions.
Schema Workbench v3.0.3 |
Interface graphique sous Eclipse, permettant de concevoir l'interrogation d'un cube OLAP Mondrian |
Public |
MOE : Définition du cube, ajout de mesures pré calculées, export de la définition du cube en XML |
Pré-requis |
- JVM
- Paramètres de connexion à la base de données
- Langage SQL (pour la conception de requêtes)
- Langage Java (pour affiner la conception)
- Langage XML (pour comprendre le fichier « xml » utilisé)
- Langage MDX (pour la conception de la requête)
|
DESCRIPTION |
- Schema Workbench est une application JAVA permettant de construire des cubes ROLAP Mondrian
o Définition et visualisation de la connexion, des mesures, des dimensions et des cubes
o Ajout de colonnes pré calculées (manuelle)
o Ajout de fonctions définis par l'utilisateur (manuelle)
o Gestion de cubes virtuels permettant une limitation du périmètre de données observées.
o Importation et exportation de cube Mondrian
o Publication directement dans la plateforme Pentaho avec cette version
- Mis en oeuvre par la MOE, demande des connaissances en base de données et en cube OLAP
o Connexion à la base et construction du cube
|
Licence |
CPL (Common Public License) v 1.0 |
Notes |
Anciennement appelé Jasper Workbench le projet est soutenu par Pentaho. |
Ci-dessous une copie d'écran de l'interface de « Schema Workbench ». Des icônes permettent de positionner facilement les axes et mesures.
Une fois l'outil connecté à la base relationnelle (ici PostgreSQL), celui-ci intègre automatiquement les méta données de la base, rendant disponibles dans l'interface les noms des tables physiques et leurs colonnes.
IV-B-2-b. Pentaho CubeDesigner▲
Pentaho possédait sa propre interface de définition d'un cube ROLAP, « Pentaho Cube Designer ».
Pentaho CubeDesigner v0.7.2.0 |
Interface graphique sous Eclipse, permettant de concevoir un cube OLAP Mondrian |
Public |
MOE : Construction du cube, publication du cube sur la plateforme ou export XML |
Pré-requis |
- JVM
- Paramètres de connexion à la base de données
- Langage SQL (pour la conception de requêtes)
- Langage Java (pour affiner la conception)
- Langage XML (pour comprendre le fichier « xml » utilisé)
- Langage MDX (pour la conception de la requête)
|
DESCRIPTION |
- Pentaho CubeDesigner est un client lourd JAVA permettant de construire un cube ROLAP Mondrian.
Tout se regroupe en un gigantesque assistant de création de cubes simples
o Gestion des jointures supplémentaires de façon transparente
o Publication du cube directement dans la plateforme Pentaho ou export en fichier XML
- Exécution pour l'utilisateur final, demande des connaissances en base de données et en cube OLAP
o Connexion à la base, choix des tables, créations des mesures et des dimensions, publication sur la plateforme Pentaho
|
Notes |
Utilisation en mode « stand alone » sauf pour la publication
Plus simple que Schema Workbench ou FreeAnalysis Schema Designer pour la création de cube OLAP Mondrian il est aussi plus limité.
Ce projet a été abandonné au profit de « Schema Workbench » décrit plus haut. |
IV-B-2-c. FreeAnalysis Schema designer▲
Conçu par la société BPM Conseil « FreeAnalysis Schéma designer » assiste la démarche de définition des axes et des mesures du cube. Dédié principalement à leur plateforme BI Portal que nous illustrons plus bas il permet également d'exporter le schéma ainsi créé au format Mondrian (fichier XML).
Notons également qu'une extension vers les cubes MOLAP est déjà prévue, mais non totalement implémentée actuellement.
Free Analysis Schema Designer v0.80 |
Interface graphique sous Eclipse, permet de définir l'accès à un cube ROLAP ou MOLAP |
Public |
MOE : Construction du cube, ajout de mesures pré calculées, publication du cube sur la plateforme ou export XML |
Pré-requis |
- Client « lourd » supposant une JVM
- Paramètres de connexion à la base de données
- Langage XML (pour comprendre le fichier « fasd » produit)
- Langage MDX (pour édition de requête MDX manuelle ex colonne calculé)
|
DESCRIPTION |
- Free Analysis Schéma Designer est un client lourd JAVA permettant de construire un cube OLAP
o Définition et visualisation de la connexion, des mesures, des dimensions et des cubes
o Ajout de colonnes pré calculées (assistant dédié)
o Ajout d'agrégations sur les colonnes (assistant dédié)
o Gestion des cubes virtuels
o Importation et exportation de cube Mondrian
o Publication du cube directement dans la plateforme FreeAnalysisWeb
o Gestion des agrégations
- L'exécution par le concepteur, demande des connaissances en base de données et en cube OLAP
o Connexion à la base, choix des tables, créations des dimensions et des mesures, enregistrement et publication sur la plateforme BPM.
o Possibilité de « drag and drop » pour certains éléments
|
Licence |
Free Analysis Schema Designer Public License (licence MPL avec des clauses supplémentaires) |
Notes |
Utilisation en mode « stand alone » sauf pour la publication
Plus conviviale que Workbench pour la création de cube OLAP Mondrian
Certains éléments sont encore en phase de développement surtout concernant les cubes MOLAP. |
Ci dessous un exemple de l'interface de construction du cube
IV-B-2-d. FreeAnalysis Schema designer Web▲
FreeAnalysis Schéma designer Web est le pendant web de « FreeAnalysis Schema Designer ». Cet outil est dédié à la plateforme BI Portal de BPM et permet de définir le schéma d'interrogation d'un cube Mondrian, puis de l'exporter dans le référentiel de la plateforme.
Free Analysis Schema Designer Web |
Interface graphique Web, permet la construction d'un cube ROLAP |
Public |
MOE : Construction du cube, ajout de mesures pré calculées, publication du cube sur la plateforme |
Pré-requis |
- Paramètres de connexion à la base de données
- Langage XML (pour comprendre le fichier « fasd » produit)
- Langage MDX (pour édition de requête MDX manuelle ex colonne calculé)
|
DESCRIPTION |
- Free Analysis Schema Designer Web est le pendant Web du client lourd Free Analysis Schema Designer
o Définition et visualisation de la connexion, des mesures, des dimensions et des cubes
o Publication du cube directement dans la plateforme FreeAnalysisWeb
- L'exécution par l'utilisateur final, demande des connaissances en base de données et en cube OLAP
o Connexion à la base, choix des tables, créations des dimensions et des mesures, publication sur la plateforme BPM.
o Drag and drop des dimensions et des mesures pour créer le cube
|
Notes |
Permet la définition du schéma d'accès à un cube Mondrian, depuis la plateforme FreeAnalysis |
IV-B-3. Outillage d'interrogation et de restitution▲
La solution « JRubik » permet, à l'instar des librairies JPivot en mode web, de présenter les axes et les dimensions d'analyse, afin que l'utilisateur puisse les combiner depuis une interface. L'outillage sert essentiellement à l'analyse, l'intégration dans un tableau de bord n'étant possible que suite à un export des données vers Excel.
Une présentation graphique « simplifiée » permet une représentation des données plus synthétique. L'export de ce graphique se fait de la même manière que les données du cube travaillées par l'utilisateur.
« FreeAnalysis » va plus loin et propose également l'ajout de colonnes calculées avec outre les opérateurs classiques les fonctions valeur absolue (« absolute »), moyenne (« average »), max et min disponibles.
IV-B-3-a. JPivot▲
Cette librairie permet d'extraire et de présenter les données d'une base relationnelle au travers d'une représentation sous forme de cube OLAP. La présentation se fait en mode web, intégrable dans un portail ou des pages dédiées.
JPivot |
Librairie java permettant l'accès aux données d'un cube ROLAP depuis une interface web |
Public |
Utilisateur : Extraire les données d'un cube OLAP au moyen de requête MDX |
Pré-requis |
- Langage MDX (pour le requêtage manuel)
- Navigateur Web
|
DESCRIPTION |
- JPivot est une librairie Java permettant la connexion et l'interrogation d'un cube Mondrian
o A partir d'une définition d'accès à un cube existanto L'utilisateur dispose d'une interface web lui permettant d'effectuer des analyses sur les « mesures » définies dans le « schéma XML »o Fonctions de choix des axes à affichero Fonctions de slice et dice, drill down |
Notes |
L'interface est simplifiée et statique. Il y manque nativement quelques fonctions de type « tableur » (ajout de colonnes calculées). Malgré tout, cette interface est présente dans pratiquement toutes les solutions proposant les analyses de données sur cubes ROLAP. |
Ci-dessous une copie d'écran de données restituées sous forme de cube.
On distingue les icônes permettant l'accès à la définition des axes à afficher, ainsi que les fonctions de graphes simplifiés.
Les exports Excel permettent de compléter les informations produites par l'ajout de colonnes calculées.
IV-B-4. JRubik▲
JRubik est une interface Java permettant la manipulation de données représentées sous forme de cube ROLAP.
L'interface reprend la présentation offerte par JPivot, en ajoutant une ergonomie plus aboutie par la gestion d'onglets. Il devient possible d'avoir une représentation des données au format « tableur », complétée par la visualisation de la requête MDX générée.
JRUBIK v0.9.4 |
Application permettant l'accès aux données d'un cube ROLAP depuis le poste de travail |
Public |
Utilisateurs : Extraire les données d'un cube OLAP au moyen de requête MDX |
Pré-requis |
- JVM
- Langage MDX (pour le requêtage manuel)
|
DESCRIPTION |
- JRubik est une application Java autonome permettant la connexion et l'interrogation d'un cube Mondrian
o A partir d'un cube existanto L'utilisateur dispose d'une interface graphique lui permettant d'effectuer des analyses sur les « mesures » définies dans le « schéma XML »o Fonctions de choix des axes à affichero Fonctions de slice & dice, drill down
- La complexité réside dans l'installation et la mise en oeuvre du cube Mondrian
|
Notes |
Cet outil est le pendant « client lourd » des librairies JPivot vues plus haut. Nous ferons donc les mêmes remarques que celles indiquées alors. |
Ci-dessous, un exemple de mise en oeuvre de l'application sur notre cube de données.
Les données fonctionnelles sont présentées dans la vue hiérarchique de gauche. Le choix des axes et mesures se fait par « glisser-déposer ».
L'outil permet lui aussi un export graphique et sous Excel.
IV-B-5. FreeAnalysis▲
FreeAnalysis est la solution développée par BPM Conseil pour accéder au cube. Nous avons vu précédemment l'outillage dédié « FreeAnalysis Schéma designer » de la solution. Il s'agit maintenant d'interroger le cube et de produire les analyses correspondantes.
FreeAnalysis v1.25 |
Interface graphique sous Eclipse, permet d'interroger un cube |
Public |
Utilisateurs : Navigation dans le cube, « drag and drop » des dimensions, ajout de colonnes calculées, génération de graphes et export sous forme de rapports |
Pré-requis |
-
Client « lourd » supposant une JVM
-
Paramètres de connexion à la base de données
-
Langage MDX (pour édition de requête MDX manuelle)
|
DESCRIPTION |
- FreeAnalysis est un client lourd JAVA permettant de naviguer dans un cube OLAP
o Visualisation du cube, des mesures et des dimensions (assistant de connexion dédié)
o Gestion des dimensions et des mesures en « drag and drop »
o Filtrage des dimensions avant présentation des données du cube
o Visualisation des dimensions sous forme d'organigramme
o Edition de requêtes MDX manuelles
o Gestion des graphes automatiques
o Export sous forme de rapports aux formats HTML, PDF, Excel
o Ajout des colonnes calculées mais limité en nombre de fonctions
- Exécution pour l'utilisateur final, ne demande aucune connaissance particulière.
o Ouverture d'un fichier « *.freeanalysis » ou « *.fasd » mais aussi importation depuis le référentiel et accès direct au cube et aux fonctionnalités
|
Licence |
Freeanalysis public License (licence MPL avec des clauses supplémentaires) |
Notes |
Utilisation en mode « stand alone » |
Ci-dessous une copie d'écran réalisée sur la mise en oeuvre de l'outil d'analyse sur notre définition de cube Mondrian :
On notera les accès immédiats aux grandes fonctionnalités au moyen d'icones dédiées.
Après avoir étudié les solutions pour le cube ROLAP Mondrian, nous abordons maintenant le cube MOLAP OpenSource « Palo ». Cette solution est éditée par la société allemande « JEDOX ».
Rappelons ici que les cubes MOLAP permettent la représentation de données relationnelles, mises en forme spécifiquement pour répondre à une problématique d'analyse croisée sous plusieurs axes.
Un cube MOLAP existe donc physiquement (à l'inverse d'un cube ROLAP qui n'est qu'une représentation fonctionnelle de données réelles) et nécessite une première étape de construction (par son alimentation).
PALO OLAP Server v2.5 |
PALO est un cube MOLAP, optimisé pour une visualisation sous un tableur |
Public |
MOE : Agréger dans un cube MOLAP les données d'une base relationnelle, afin d'en permettre l'analyse en mode tableur. |
Pré-requis |
- JVM
- Serveur Windows ou Linux
- XML (configuration des données à extraire)
|
DESCRIPTION |
-
PALO est un serveur de cube, optimisé pour un tableur. Il ne dispose donc pas d'outil de visualisation.
Pour ce faire, on utilisera « web-palo » et « Palo client » ou bien les plugins Excel et OpenOffice.
o Le serveur étant installé, il doit être l'alimenté
o Un ETL dédié est fourni avec la solution
o Il est possible de mettre en oeuvre des jobs Talend ou Kettle pour l'alimenter.
- Le serveur alimenté, on connectera les clients mentionnés pour produire les analyses.
|
Notes |
Le serveur est sous licence GPL, mais pas le plugin Excel.
La version 1.0 limitait l'usage à un seul utilisateur
Pour rester dans le domaine OpenSource, il reste la solution du plugin OpenOffice. |
Suite à l'installation du serveur, celui-ci doit être alimenté par extraction et mise en forme des données. Cette étape est assurée au choix par un ETL fourni par JEDOX ou par les ETL génériques Talend ou Kettle.
Notons que cette étape structurante nécessite une bonne connaissance du cube attendu et produit. La documentation reste actuellement limitée, malgré la richesse fonctionnelle de la solution.
IV-C-1. Roadmap, évolutions futures▲
Une des grandes originalités de cette solution OpenSource, réside dans sa fonction write back :
L'utilisateur a la possibilité de renseigner ses propres valeurs dans le cube au croisement des occurrences d'axes qu'il a sélectionnées. Cela permet donc de mettre en perspective des valeurs prévisionnelles avec la réalisation de la société dans le temps.
On pense donc naturellement au processus d'élaboration budgétaire. C'est d'ailleurs ce qu'affirme la société JEDOX, qui se positionne clairement sur cet aspect métier du contrôle de gestion.
Enfin, La solution de JEDOX est utilisée par SAP pour l'élaboration du reporting sur les données gérées par l'ERP.
JEDOX est donc devenu un « partenaire naturel » de SAP.
Le cube se transforme alors en un cube HOLAP, permettant une première analyse sur les données agrégées dans un cube MOLAP, puis une analyse plus fine par accès direct aux données sources.
Cet aspect est actuellement réservé à l'intégration dans SAP.
Sa disponibilité en OpenSource ne nous a pas été communiquée
La société JADOX travaille également sur une interface utilisateur pour la conception du processus d'alimentation.
Cette évolution, ainsi que quelques autres sont attendues pour la fin de l'année 2008.
IV-C-2. Mise en oeuvre du serveur▲
Ci-dessous un exemple de représentation graphique de l'extraction effectuée sous Talend Open Studio afin de répondre au besoin d'analyse de l'évolution des coûts de transports :
Une alternative à l'utilisation de Talend est de définir un « schéma d'alimentation », à l'instar du « schéma d'interrogation » produit au chapitre précédent pour le cube MONDRIAN. Le schéma d'alimentation produit va être mis en oeuvre par l'ETL fournit par la société JEDOX. A son lancement, « ETL-client » va lire ce fichier d'extraction, se connecter à la base relationnelle et alimenter le cube PALO.
L'alimentation peut être planifiée et ainsi alimenter le cube PALO.
Une alternative à l'utilisation de Talend est de définir un « schéma d'alimentation », à l'instar du « schéma d'interrogation » produit au chapitre précédent pour le cube MONDRIAN. Le schéma d'alimentation produit va être mis en oeuvre par l'ETL fournit par la société JEDOX. A son lancement, « ETL-client » va lire ce fichier d'extraction, se connecter à la base relationnelle et alimenter le cube PALO.
L'alimentation peut être planifiée et ainsi alimenter le cube PALO.
La même fonctionnalité pourrait être obtenue plus aisément en utilisant les capacités d'alimentation de cubes PALO par les ETL KETTLE ou TALEND.
L'outil « IMP :Palo » de la société Cubeware offre une interface utilisateur sous Windows, permettant l'accès aux données relationnelles, leur extraction et agrégation afin d'alimenter le cube MOLAP. Par contre, cet outil ne permet pas de produire un « schéma d'extraction » autonome. Les procédures d'alimentation devront être exécutées par cet outil.
Schéma fonctionnel de l'ETL Client
IV-C-3. Outillage d'interrogation et de simulation▲
La société JEDOX fournit un plugin Excel avec le serveur PALO. Ce plugin est complété par un serveur de publication web de feuilles Excel compilées, accessibles ensuite depuis l'intranet de l'entreprise. Cette solution ne nécessite pas l'installation du plugin sur les postes utilisateurs.
La société « Tensegrity Software GmbH » fournit un ensemble d'outils et une API, nécessaires à l'interrogation des cubes PALO. Cet ensemble est dénommé JPalo.
IV-C-3-a. Plugin Excel et OpenOffice▲
JEDOX fournit un plugin Excel, complément du tableur permettant l'extraction des données et leur mise en forme pour la production du rapport final.
Il existe un plugin OpenSource pour le tableur de la suite OpenOffice
Ces plugins permettent l'interrogation et la construction de rapport depuis un tableur
Plugins Excel et OpenOffice |
Suite à l'installation des plugins dans les tableurs, il est possible de manipuler le cube PALO directement |
Public |
Utilisateurs : Analyse des données agrégées depuis un tableur Excel ou OpenOffice.
Ces outils permettent de produire des représentations graphiques depuis les données extraites |
Pré-requis |
- Connaissance des tableurs |
DESCRIPTION |
- Depuis un tableur, permet alimenter les cellules avec les données agrégées présentes dans le cube.
o La gestion des droits est faite sur le serveur (voir outillage Eclipse décrit précédemment)
o Poste de travail ou mode partagé (mode web)
- Après définition du login/mot de passe, l'utilisateur alimente les cellules depuis le cube
o Possibilité de modifier les axes en utilisant les fonctions « copier-coller »
|
Licence |
Propriétaire pour le plugin Excel, GPL pour le plugin OpenOffice |
Notes |
Les plugins ont le même usage et les mêmes propriétés
Les limitations sont liées aux différences des tableurs
La migration de Microsoft Office vers la suite OpenOffice est à étudier plus globalement que pour ce seul usage. |
IV-C-3-b. Palo Worksheet Server▲
« Worksheet Server » est une solution de publication de documents Excel. Le serveur peut s'installer sous Linux comme sous Windows, et permet de publier les feuilles et classeurs produits sous Excel dans un intranet.
L'installation sous Windows 2003 Server est simple.
Lors du premier accès aux pages Excel compilées et déployées, il est nécessaire de définir les utilisateurs autorisés à y accéder.
Ci-dessous un exemple d'analyse des marges, limitée à l'année 2007 pour les Pays-Bas. Il est possible de définir des zones modifiables par l'utilisateur, afin de permettre une prévision.
IV-C-3-c. Excel Designer▲
« Excel Designer » est la feuille Excel permettant la compilation (au format XML) du classeur Excel à publier.
Suite à la compilation du classeur, le fichier XML généré sera déployé sur « Worksheet Server » pour permettre la visualisation et les analyses prévisionnelles.
Le lien avec le serveur PALO, présent dans la feuille Excel, est conservé dans la page générée et publiée. La fonction « write back » est intégrée, permettant les analyses prévisionnelles.
IV-C-3-d. web-palo▲
La société Tensegrity fournit « web-palo », interface web qui permet de visualiser mais aussi de modifier les données pour réaliser des simulations dans une vue du cube PALO.
Cette interface permet aussi d'accéder à d'autres cubes accessibles par le protocole XMLA. On peut donc visualiser les cubes de SAP BW, de MS SQL Server 2000/2005 et de Mondrian.
WEB-PALO v2.0 |
Permet la consultation en mode web des données agrégées dans le cube MOLAP Palo Server |
Public |
Utilisateurs : L'accès en mode web au serveur PALO permet la consultation et la modification (fonction « write-back ») des données |
Pré-requis |
- Serveur TOMCAT
- Serveur PALO
- Navigateur internet
|
DESCRIPTION |
- L'installation se compose d'une application java J2EE à déployer dans un serveur Tomcat
o Les droits d'accès à l'interface se configurent directement sur le serveur web
o Les cubes (PALO, Mondrian, SAP ou Microsoft Analysis Services) peuvent être accédés
o Le poste de travail ne nécessite qu'un navigateur pour accéder aux données
- Navigation dans le cube à partir de l'interface web
o Permet de modifier les axes et les mesures d'analyse par simple « drag & drop »
|
Licence |
Aclarifier par l'éditeur Tensegrity Software |
Notes |
L'interface ne permet pas l'ajout de colonnes calculées à l'instar d'un véritable tableur
Il est possible de modifier ou de filtrer les valeurs des cellules afin de faire des analyses prévisionnelles |
Par « glisser-déposer », il est possible de modifier les axes d'analyse de nos coûts de transport.
L'interface permet aussi (suivant les droits attribués à l'utilisateur connecté) de modifier les données affichées.
IV-C-3-e. Palo client▲
La société Tensegrity fournit « Palo client », application sur plate-forme Eclipse permettant d'interroger les cubes PALO ainsi que les bases accessibles par le protocole XMLA, soit SAP BW, MS SQL Server 2000/2005 et Mondrian.
PALO Client v2.0 |
Permet la consultation en mode « client lourd » des données agrégées dans un cube par le langage MDX |
Public |
Utilisateurs : L'accès au serveur PALO permet la consultation et la modification (fonction « write-back ») des données |
Pré-requis |
- JVM
- Serveur PALO
|
DESCRIPTION |
- L'application réalisée se compose d'une application Eclipse
o Les cubes (PALO, Mondrian, SAP ou Microsoft Analysis Services) sont accessibles
o Le poste de travail ne nécessite que l'installation d'une JVM
- Navigation dans le cube à partir de l'application
o En accès « administrateur » permet de gérer les droits d'accès
o Permet de modifier les axes et les mesures d'analyse par simple « drag & drop »
|
Licence |
Aclarifier par l'éditeur Tensegrity Software |
Notes |
L'interface ne permet pas l'ajout de colonnes calculées à l'instar d'un véritable tableur
Il est possible de modifier ou de filtrer les valeurs des cellules afin de faire des analyses prévisionnelles |
On obtient une vue du cube, identique à sa visualisation en mode web :
IV-C-3-f. Palo Java API▲
La solution de Tensegrity est complétée par les API « Palo Java API » permettant le développement d'application Java.
IV-C-3-g. myBIQ, solution de CPM▲
« myBIQ » est une solution OpenSource dédiée aux cubes PALO pour l'élaboration budgétaire et plus vastement le CPM (Corporate Performance Management). Elle permet la consolidation de données et se présente sous forme de tableaux de bord adressables à une direction générale.
La société éponyme fournit des cubes PALO pré structurés pour l'extraction des axes et indicateurs nécessaires dans une interface dédiée. Depuis celle-ci, il est alors possible de comparer des évolutions de marges, des volumes, des résultats de filiales, ….
L'alimentation des cubes se fait au moyen de « Pentaho Data Integration », l'ETL anciennement nommé Kettle qui possède lui aussi un connecteur PALO.
Les deux familles de cubes ROLAP et MOLAP représentées par Mondrian et par Palo possèdent toutes deux leur propre outillage d'interrogation.
Le choix de l'une ou l'autre solution doit être fait selon les besoins des utilisateurs finaux et la capacité d'intégration des équipes techniques. Pour Mondrian, un gros effort doit être fait par celles-ci pour appréhender les mécanismes de fonctionnement et d'intégration ainsi que l'écriture de schéma de description.
Des solutions de modélisation de ces schémas existent, mais restent encore peu intuitives. On verra plus bas que « BPM Conseil » et « Pentaho » ont axé des efforts de développement dans ce sens.
Pour Palo, l'effort se situe dans la création de scripts d'alimentation, l'usage étant simplifié par les interfaces, en mode web ou en mode tableur.
Fonction majeure |
MONDRIAN (JPalo, JRubik) |
PALO (web-palo, plugins Excel et OOffice) |
Déclaration des sources de données, des axes et indicateurs, de colonnes calculées supplémentaires |
La conception du « schema XML » se fait avec l'un des outils dédiés présentés plus haut. |
La définition des sources de données se fait dans l'ETL utilisé. Soit fourni par Jedox, soit Talend ou Kettle. |
Sécurité – gestion des accès aux données |
Cette fonctionnalité n'existe pas dans les outils clients. Elle sera gérée par le portail et permettra de donner un accès à l'intégralité d'un cube. Il est possible de définir le périmètre d'accès aux données à un utilisateur au moyen d'un cube virtuel. Ce dernier est un sous élément d'un cube sur un périmètre plus large, limité au choix des dimensions et des mesures. Un cube virtuel ne peut actuellement pas proposer un sous-ensemble de données dans une dimension ou une mesure. Un cube virtuel peut par contre proposer une vue agrégée de plusieurs cubes. |
Les outils clients doivent se connecter au serveur Palo par identifiant/mot de passe limitant l'accès à un périmètre autorisé. |
Mode de consolidation des indicateurs |
Les fonctions d'agrégation « sum », « count », « distinct-count », mathématiques « min », « max » et de statistiques « avg », sont disponibles. |
Les fonctions d'agrégation « sum » et « count » sont disponibles |
Gestion des dimensions récursives |
Cette fonctionnalité n'existe pas |
Cette fonctionnalité n'existe pas |
Gestion avancée de la dimension temps |
Ces fonctions sont disponibles à condition d'être conçues à l'origine dans le cube lors de sa définition. |
Par son ETL dédié, PALO propose un mode d'agrégation automatisé lors de l'extraction des données. |
Elaboration d'un rapport |
Mise en forme succincte directement depuis les outils clients. Peut être amélioré en passant par un tableur externe. |
Aucune mise en forme par défaut. Doit être assurée par l'utilisateur après export dans un outil tiers (tableur, document texte) |
Modalités d'alimentation full ou différentiel |
|
Uniquement alimentation |
Accès au détail |
|
Le détail est limité à la « profondeur » de l'extraction. Le serveur en version 1.5 n'accède jamais directement aux données de la base relationnelle. (sauf sur SAP depuis l'implémentation du connecteur) |
Implémentation des normes XML/A ou MDX |
Les deux modes sont disponibles :
soit le cube est interrogé directement en MDX,soit on y accède au travers d'un webservice en XML/A |
Le client « web-palo » utilise le protocole XML/A pour se connecter aux différents cubes, dont PALO. |
Navigation (drill down, slice and dice) |
Fonctionnalité fournie par les clients JPivot, JRubik. |
Fonctionnalité fournie par les clients et depuis un tableur. |
Vision de l'information (Liste, Tableau croisé, Graphes à barre, radar, histogramme …) |
Les outils clients proposent la représentation des données au moyen de quelques graphiques de base. |
Aucune sortie possible depuis le client web Toutes les fonctionnalités offertes par les tableurs Excel et OOffice sont disponibles. |
Filtre, couche |
L'outillage client propose l'application de filtres |
L'outillage client propose l'application de filtres |
Ajout de calcul |
Uniquement lors de la définition du schéma d'un cube. Pas à l'usage, sauf si l'utilisateur l'exporte dans Excel (il perd cependant le côté dynamique de la consultation) |
Fonctionnalité des tableurs |
Mise en forme de rapports |
Simplifiée depuis JPivot |
|