Le projet Pentaho :> Evaluation pour comparaison

Dans le cadre d'un projet avec mon master, je devais étudier les différents outils open source de BI et mon équipe (avec deux autres étudiants que je salue ici) ; notre choix s'est porté sur Pentaho bien sûr mais également Spago, Jasper Intelligence et Marvel IT principalement. Je vous propose ici de revenir sur l'évaluation de chacune de ses solutions. Pour plus de lisibilités, une étude par message sera publiée. Merci de vos commentaires !!


Communauté

Le projet Pentaho est actuellement très actif. Plusieurs projets décisionnels open source tels que Kettle, Mondrian et JFreeReport ont rejoint le projet Pentaho, ce qui garantit une parfaite intégration et une évolution cohérente de l'ensemble.

La communauté autour du projet est également dynamique comme en témoigne l'activité sur le forum Pentaho ainsi que les diverses contributions faites au projet par les utilisateurs. Initié en 2004, le projet Pentaho dispose pourtant déjà d’une bonne assise pour concurrencer ses adversaires payants.

Fonctionnalités

Pentaho permet, via une interface unique, soit un portail J2EE (Pentaho utilise le portail JBoss), soit une application Web spécifique (Mozilla, Internet…)

Il est possible de consulter des états (les outils BIRT, JasperReports et JFreeReport sont supportés), d'utiliser les fonctions d'exploration de données de JPivot, et de constituer des tableaux de bord sous quelques formes que ce soit. L'utilisateur a la possibilité de modifier les paramètres d'exécution d'un état, par exemple la période ou les produits représentés, de s’envoyer les résultats des états par email à échéance périodique ou dès qu’une condition est remplie (dépassement d’un seuil, CA trop inférieur…)

Ici deux exemples concrets de DashBoard (issus du site www.pentaho.com)

La plateforme Pentaho est organisée autour de deux composants : un moteur de workflow (Enhydra Shark ) et un planificateur de tâches (Quartz).

Moteur de workflow

Le moteur de workflow utilisé est « Enhydra Shark ». Son rôle est de structurer l'exécution des processus décisionnels. Dans Pentaho, chaque fonctionnalité (génération d’états, analyse) correspond à l'exécution d'une « action » (fichier .xaction modifiable avec Design Studio).

Les fichiers .xaction permettent de définir des points d’accès aux rapports dans le sens où chacun d’eux permet d’accéder aux données et appliquant éventuellement des filtres. De plus amples informations sont disponibles dans la documentation du site officiel.

L’éditeur permet de créer ou éditer des xactions. Il présente différents onglets :

  • Général qui permet de modifier le titre, l’auteur, la description et d’autres informations générales du rapport,
  • Define Process,
  • XML Source qui permet d’éditer directement le xml source de notre xaction,
  • Test qui permet de pré-visualiser le résultat de notre xaction.

L’onglet Define Process permet d’ajouter des entrées des processus d’action et des sorties à notre xaction. Les entrées peuvent être des sélections faites par l’utilisateur ou autre. Les processus d’action peuvent être des commandes SQL, des rapports, des diagrammes, etc.

Une action est une succession d'étapes simples, telles que l'exécution d'une requête sur une base de données, la génération d'un état, l'envoi d'un mail ou l’exécution d’un job de Kettle. Les traitements effectués dans ces actions peuvent être assez poussés, car il est possible de traiter séparément chaque élément d'un ensemble de résultats ou bien de réaliser des calculs spécifiques via l'exécution d'un programme javascript.

Chaque action est décrite par un simple fichier XML. Pentaho dispose d'un outil, Pentaho Design Studio, qui s'intègre dans l'environnement de développement Eclipse et permet de créer graphiquement ces fichiers. Nous y reviendrons plus tard.

Planificateur de tâches

Le planificateur utilisé est « Quartz ». Il permet de planifier n'importe quelle action Pentaho.

Il est ainsi possible de créer une action qui génère et envoie par mail un état, et de la planifier pour une exécution périodique.

Le contrôle du planificateur (ajout, suspension, et suppression des actions), peut s'effectuer soit manuellement, soit en utilisant les étapes correspondantes dans une action.

Pentaho permet donc non seulement d'utiliser des outils décisionnels avec une interface unique, mais également de combiner leurs fonctionnalités et de les enrichir grâce à des traitements réalisés en amont et en aval de leur exécution.

Interface utilisateur

Il est possible d'utiliser les fonctionnalités de la plateforme Pentaho dans une application Web, un portail J2EE ou par l'appel de web-services.

La version open-source de Pentaho inclus deux interfaces pour la présentation et d'exécution des différentes actions disponibles.

Application web

Cette interface sert de démonstration pour les fonctionnalités de Pentaho. Elle présente les actions disponibles, réparties par catégories. Elle propose également des fonctions d'administration. Cette interface n'inclut aucune notion de sécurité. Les actions et les fonctions d'administration sont utilisables par tous les utilisateurs.

Portail

Pentaho propose également des portlets qui permettent d'utiliser les fonctionnalités de Pentaho dans le portail JBoss Portal :

  • PentahoNavigationPortletWindow : affiche une interface similaire à l'application web. Ce portlet ne sera généralement pas utilisé en raison de l'absence de sécurité et de l'ouverture de chaque action dans une nouvelle fenêtre, ce qui est contraire au principe même du portail.
  • EmbeddedReportPortlet : permet d'intégrer un état directement dans le portail. Ce portlet peut également être utilisé pour composer des tableaux de bord à base de d’états légers.
  • ChartPortlet et WidgetGridPortlet qui permettent de combiner des graphiques afin de créer des tableaux de bord complexes et complets.

Il est ici possible d'utiliser les fonctions d'authentification et de sécurité du portail pour sélectionner les portlets affichés pour chaque utilisateur. Les actions peuvent par la suite utiliser l'identifiant de l'utilisateur afin de retourner des résultats adaptés, profilés.

Les fonctionnalités de l'interface utilisateur de la version open-source sont volontairement limitées. La gestion des annuaires LDAP et de sécurité au niveau de chaque dossier et action ne sont disponibles que dans la version commerciale (comptez 6000 € Par an pour une licence commerciale voir l’article Présentation de Pentaho pour davantage de précisions).

S'il est possible, avec la version open-source, d'interdire l'affichage d'un état pour une personne non autorisé, cette vérification ne peut être effectuée que lors de l'exécution de l'action. L'ensemble des actions existantes sont donc proposées à l'utilisateur bien qu'il n'ait accès qu'à certaines d'entre elles.

Il sera donc souvent nécessaire de réaliser des développements spécifiques pour intégrer la version open source en entreprise et la doter d'une interface cohérente.

Le portail JBoss Portal constitue néanmoins un bon point de départ pour construire des solutions autour de Pentaho.

5 commentaires:

Anonyme a dit…

Excusez moi, j'ai une question à vous demander. ENfaite dans votre blog, vous avez écrit que "le projet Pentaho dispose pourtant déjà d’une bonne assise pour concurrencer ses adversaires payants". Je voudrais savoir, ses adversaires payants, ça veut dire tous les projet utilisant le logiciel BI comme BO, Cognos, Hyperion, etc.

Merci bcp
Priscilla

Julien BICHON a dit…

Exactement Priscilla (pas fait de fautes ?). En fait Business object et Cognos sont pour moi les tauliers actuels mais l'émergence de l'open source à travers l'exemple de pentaho montre que la concurrence va désormais intégrer les acteurs open source. Pour moi, BO prend Pentaho plus qu'au sérieux (je parle au niveau du produit Pentaho). Après , il y a tous les commerciaux, l'historique et la marque Boq ue certains chefs d'entreprises recherchent quitte à mettre de l'argent sur la table.

Anonyme a dit…

Merci beaucoup de m('avoir répondu ma question. Enfaite, je suis en stage et je suis en train de faire le projet de Pentaho. Mais je pense je suis un peu perdue, surtout pour la partie "mettre en ligne nos solutions". Je voudrais vous demander est-ce que vous pouvez m'expliquer comment mettre en ligne notre rapport et comment créer le compte d'utilisateur et le mot de passe, etc (la partie de sécurité) et si c'est possible, vous me donnez votre mail, comme j'ai beaucoup de problèmes avec ce Pentaho et si c'est possible je vous envoies des email pour vous poser des questions, et voilà mon email priscilla.cassandra@capgemini.com

Je vous remercie beaucoup pour votre aide.

cdt,
Priscilla

Unknown a dit…

Bonjour,
dans la perspective d'un choix d'outil BI Opensource, je réalise une étude comparative entre les suites de pentaho, Jasper et Spago. je me rends compte que ces trois pjts utilisent les mm outils (olap:Mondrian/Jpivot, Reporting:Birt/jasper voir Jfree,etc), dès lors où se situent les différences? sont-elles seulement dans les support et l'assistance? Que peuvent être des elts objectifs de comparaison? est-il possible d'exploiter chaque élment de la suite de manière autonome ie: n'utiliser que kettle par exmple lors d'une migration.

Merci par avance pour vos réponses

Félijas.
fngassaki@gmail.com

Anonyme a dit…

Bonjour,
j'ai presque le mémé problème et je souhaite savoir comment mettre en ligne notre rapport et comment créer le compte d'utilisateur et le mot de passe, (la partie de sécurité) ?
svp j'attends votre réponse.
Merci d'avance