Blog ENI : Toute la veille numérique !
Dernière chance (fin le 29/02) : -25€ dès 75€ sur les livres en ligne, vidéos... code FUSEE25. J'en profite !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Pentaho
  3. Intégration des composants via PDS
Extrait - Pentaho Mise en place d'une solution Open Source de Business Intelligence
Extraits du livre
Pentaho Mise en place d'une solution Open Source de Business Intelligence Revenir à la page d'achat du livre

Intégration des composants via PDS

Présentation de Pentaho Design Studio

Les tâches exécutées par le serveur BI de Pentaho sont pilotées par deux composants logiciels principaux, le moteur de workflow Shark et le séquenceur Quartz.

Le moteur de workflow intégré dans Pentaho est Enhydra Shark. Ce moteur a pour mission d’exécuter des lots de tâches dans les traitements décisionnels.

Il faut savoir que sous Pentaho chaque traitement (production d’un rapport Pentaho Report Designer, d’un rapport BIRT, d’une analyse Mondrian/JPivot...) est géré par un fichier de description au format XML (on parle de fichier Xaction).

Les fichiers Xaction (d’extension .xaction) sont générés très souvent de manière transparente. Par exemple, la publication à partir de l’environnement de création de rapports Pentaho Report Designer dans le portail Pentaho produit automatiquement un fichier Xaction.

Par contre, il peut être souhaité que le serveur Pentaho exécute plusieurs tâches consécutivement. Dans ce cas, plutôt que de créer le fichier Xaction par l’intermédiaire d’un éditeur de textes, on a recours à un module logiciel dédié, Pentaho Design Studio (PDS).

Nous pouvons imaginer par exemple une Xaction qui soit capable de faire réaliser les traitements élémentaires...

Installation de Pentaho Design Studio

1. Téléchargement

Le composant Pentaho Design Studio est disponible en téléchargement à l’adresse http://sourceforge.net/projects/pentaho/files/Design%20Studio/.

Les utilisateurs Windows peuvent choisir le fichier pds-ce-win-3.6.0-stable.zip pour la version 3.6.0 (ou toute autre version ultérieure). Le fichier peut être entreposé dans un répertoire comme C:\Pentaho_CE_download. Il existe aussi des versions spécifiques pour les environnements Macintosh et Linux.

2. Installation

Il suffit, avec votre logiciel habituel de décompression (WinZip, 7Zip, le système d’exploitation lui-même s’il en offre nativement la possibilité), de décompresser le fichier archive zip téléchargé précédemment et de le déployer dans un répertoire comme C:\Pentaho_CE\PDS_CE-3.6.0.

3. Lancement de Pentaho Design Studio

Le démarrage de Pentaho Design Studio s’obtient sous Windows par un double clic sur l’application Eclipse présente dans le répertoire C:\Pentaho_CE\PDS_CE-3.6.0.

Pentaho Design Studio est un logiciel fonctionnant sous le socle applicatif Eclipse.

Eclipse est un environnement de développement intégré Open Source, très utilisé par les acteurs de l’OSBI (Open Source Business Intelligence). Il est très extensible...

Présentation rapide de l’environnement initial

1. Le répertoire workspace

Lors du premier démarrage de Pentaho Design Studio, le répertoire de stockage des projets est demandé :

14EP01.png

2. Les fenêtres Eclipse

Sans rentrer dans le détail du fonctionnement d’Eclipse, il faut tout de même savoir que cet environnement est basé sur des fenêtres que l’on peut afficher ou non en fonction du contexte d’utilisation de l’applicatif embarqué (ici PDS). Les fenêtres sont gérées dans le menu Window :

14EP02.png

3. La création du projet Pentaho Solutions

La création du projet Pentaho Solutions sert à définir un conteneur qui représente le contenu du répertoire pentaho-solutions se trouvant au premier niveau de l’arborescence (C:\Pentaho_CE\Pentaho_BI_Server_CE-3.6.0\biserver-ce\pentaho-solutions dans le cadre de notre exposé). L’opération est lancée via la commande de menu File - New - Project - General - Project.

Les propriétés du projet sont définies comme suit :

14EP03.png

Dans la figure ci-avant, la localisation du projet par défaut (répertoire workspace) est remplacée par le répertoire pentaho-solutions.

La fenêtre Project Explorer présente le contenu du répertoire sous la forme d’un arbre :

14EP04.png

Étude d’une première action pré-enregistrée

Dans l’installation par défaut du portail Pentaho (cf. chapitre "Prise en main rapide de Pentaho"), de nombreux exemples sont inclus (rapports, analyses...). Ces exemples sont pilotés par des Xactions.

La prise en main de Pentaho Design Studio va commencer par l’étude de quelques-unes de ces actions et notamment l’action basique HelloWorld.

1. Le dossier de l’action HelloWorld

L’action HelloWorld est entreposée dans le dossier bi-developpers/getting-started.

Cette action simple est constituée d’un seul fichier HelloWorld.xaction.

2. Le code de l’action HelloWorld

Le code source, consultable avec un éditeur de texte quelconque, est le suivant :

<?xml version="1.0" encoding="UTF-8"?>
<action-sequence>
  <title>%title</title>
  <version>1</version>
  <logging-level>DEBUG</logging-level>
  <documentation>
    <author>Joe Pentaho</author>
    <description>%description</description>
    <help>%help</help>
    <result-type>rule</result-type>
    <icon>HelloWorld.png</icon>
  </documentation>

  <inputs/>

  <outputs/>

  <resources/>

  <actions> 
    <action-definition>
      <component-name>HelloWorldComponent</component-name>
      <action-type>Hello World</action-type>
      <component-definition>...

Création d’une première action

Dans le cadre d’un précédent chapitre, un dossier personnel intitulé Rapports de Christian VIGOUROUX a été créé dans le répertoire pentaho-solutions.

À partir du portail Web Pentaho, créons un sous-dossier nommé Actions sous le dossier parent Rapports de Christian VIGOUROUX, ceci par un clic droit de souris sur le dossier parent suivi du choix Nouveau dossier.

Sous PDS, après un rafraîchissement par la commande de menu File - Refresh (ou par la touche de fonction [F5]), le dossier Actions est visible dans la fenêtre Project Explorer.

Fixons-nous comme objectif de recréer une action analogue à HelloWorld vue dans le paragraphe précédent. On introduira une toute petite variante, elle sera nommée Bonjour et annoncera un simple Bonjour.

Pour déclencher l’assistant, qui va faciliter la création de l’action, il faut activer la commande de menu New - Other - Pentaho - New Action Sequence Wizard (ou le raccourci-clavier [Ctrl] N) en étant positionné dans le dossier Actions :

14EP10.png

Le champ Container est tout simplement le dossier Actions. Le champ File name sert à nommer l’action (Bonjour.xaction dans notre cas) et enfin le Template Hello World est utilisé pour faciliter la création de l’action.

Pour l’onglet...

Structure d’une action

Avant d’élaborer de nouvelles actions plus complexes que Bonjour vue au paragraphe précédent, il est important d’étudier la structure type d’une action.

Toutes les actions ont une structure quasi-identique. On retrouvera sur l’onglet Define Process les blocs suivants :

  • Process Inputs

  • Process Actions

  • Process Outputs

Lors de la génération du code XML, PDS considère en réalité quatre sections, le bloc Process Inputs étant subdivisé en Inputs et Resources.

1. Inputs

Les Process Inputs/inputs sont des paramètres qui vont être utilisés par les actions définies dans le bloc Process Actions. Considérons pour l’instant qu’un paramètre est une variable définie localement et à laquelle on affecte une valeur. Les variables doivent être typées. On peut pour l’action Bonjour vue précédemment lui associer une variable PRENOM à laquelle on affecte une valeur de prénom à qui dire Bonjour. Cette variable est ensuite utilisée en tant que message de l’action Bonjour paramétrée dans le bloc Process Actions. Cette variable devra être notée entre accolades ({}).

En réalité les possibilités des variables en entrée sont plus importantes. Les variables peuvent provenir de plusieurs...

Une action listant des données extraites d’une table MySQL

Créons une Xaction de nom Produits_AdventureWorks.xaction qui aura pour objectif, par l’intermédiaire d’une requête SQL, de lister le contenu partiel de la table dimproduct de la base de données utilisée notamment dans le chapitre "Mise en œuvre de Mondrian/JPivot".

Avant toute chose, il faut déclarer une connexion vers cette base de données MySQL au travers de l’interface Pentaho Administration Console. Cette opération a été présentée au chapitre "Prise en main rapide de Pentaho".

La suite Pentaho est livrée avec une multitude d’actions. Avant de créer soi-même des Xactions, il est fortement conseillé de consulter les actions existantes. Elles donnent un très bon aperçu des possibilités. Il ne faut pas non plus hésiter à réaliser des copiés/collés pour construire les nouvelles actions.

Pour notre extraction de données, on va réaliser justement une copie de l’action SQL_Datasource.xaction se trouvant dans le dossier bi-developers/datasources pour la reporter par exemple dans le dossier Rapports de Christian VIGOUROUX/Actions.

Renommons cette action sous l’appellation Produits_AdventureWorks.xaction par exemple, par un clic droit de souris suivi de l’option...