# Composants

{% hint style="info" %}

#### **Architecture client/serveur de Pentaho**

L'architecture client/serveur de Pentaho constitue la base de sa suite d'intégration de données et d'analytique métier, offrant une plateforme flexible et évolutive pour la gestion et l'analyse des données en entreprise. L'architecture est conçue pour prendre en charge divers besoins d'intégration de données, de reporting et d'analytique au sein d'une organisation.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2FcbpkrvVMonJJFJefyViV%2Fimage.png?alt=media&#x26;token=ce793c9f-802e-435e-b971-b8b1114a8c8f" alt=""><figcaption><p>Architecture Pentaho</p></figcaption></figure>

<table><thead><tr><th width="186">Numéro de port</th><th>Description</th></tr></thead><tbody><tr><td>5432</td><td>Serveur PostgreSQL</td></tr><tr><td>8080</td><td>Port de démarrage du serveur Web Tomcat du serveur Pentaho</td></tr><tr><td>8012</td><td>Port d'arrêt du serveur Pentaho</td></tr><tr><td>9001</td><td>Port du serveur HSQL</td></tr><tr><td>9092</td><td>Base de données H2 embarquée</td></tr></tbody></table>

Les composants clés incluent :

{% tabs %}
{% tab title="Outils client Pentaho" %}
{% hint style="info" %}

#### **Outils client Pentaho**

Le client Pentaho, composant clé de la suite Pentaho, englobe plusieurs outils destinés aux utilisateurs pour la gestion des données et l'analytique. Ils comprennent l'outil d'intégration de données (PDI), central pour les opérations d'extraction, transformation et chargement (ETL) ; Spoon, une interface graphique pour concevoir les processus ETL ; Designer pour la conception pratique de pipelines ; Scheduler lié à Quartz pour la planification des tâches ; Repository Browser pour la gestion des ressources ETL ; et Database Explorer pour les opérations sur les bases de données.

De plus, il propose des outils tels que Metadata Editor et Schema Workbench pour la manipulation avancée des données. Ensemble, ces outils permettent aux utilisateurs de traiter et d'analyser efficacement les données au sein de l'écosystème Pentaho.
{% endhint %}

{% tabs %}
{% tab title="Intégration de données" %}
{% hint style="info" %}

#### **Intégration de données**

Pentaho Data Integration (PDI), également connu sous le nom de Kettle, est un outil open-source d'intégration de données qui permet l'extraction, la transformation et le chargement (ETL) des données dans des bases de données, des entrepôts de données et des applications métiers. Il est conçu pour gérer une grande variété de sources de données, y compris les bases de données relationnelles traditionnelles, les formats de données non structurées et le stockage cloud. PDI est composé de plusieurs composants clés qui travaillent ensemble pour fournir une solution ETL complète.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-e1ac1f3b830f111a425cb7498ad789d74d50b673%2Farchitecture.png?alt=media" alt=""><figcaption><p>Architecture client/serveur de Pentaho</p></figcaption></figure>

{% hint style="info" %}
**Spoon**

Spoon est l'interface graphique (GUI) pour la conception et le test des jobs et des transformations PDI. Il permet aux utilisateurs de créer, modifier et gérer visuellement les processus ETL sans écrire de code.

**Designer**

Glisser-déposer d'« objets » pour concevoir vos pipelines et flux de travail.

**Scheduler**

Se connecte au planificateur Quartz sur le serveur. Les jobs et transformations doivent être téléchargés dans le dépôt (Repository).

**Repository Browser**

Le dépôt est une zone de stockage centrale pour les ressources PDI telles que les jobs, transformations et connexions de base de données. Il facilite la collaboration entre les membres de l'équipe en leur permettant de partager et de gérer efficacement les actifs ETL.

Ces composants font collectivement de PDI un outil puissant pour l'intégration de données, permettant aux entreprises de nettoyer, intégrer et analyser des données provenant de sources diverses de manière plus efficace.

Se connecte au repository de contenu Apache Jackrabbit, pointant vers une base de données prise en charge :

* PostgreSQL
* Serveur MSSQL
* Oracle
* MySQL
* MariaDB

**DB Explorer**

Explorateur de base de données qui vous permet d'effectuer des opérations minimales sur la base de données.
{% endhint %}
{% endtab %}

{% tab title="Éditeur de métadonnées" %}
{% hint style="info" %}

#### **Éditeur de métadonnées**

Le Metadata Editor de Pentaho est un outil de la suite Pentaho qui facilite la création et la gestion de modèles métier. Ces modèles forment la base du reporting et de l'analyse, permettant aux utilisateurs finaux d'interagir avec les données sans avoir besoin d'une connaissance approfondie des structures de base de données sous-jacentes.

Les fonctionnalités clés incluent :

**Interface conviviale :** Offre un environnement graphique où les utilisateurs peuvent définir des modèles métier, des relations et des concepts de métadonnées, simplifiant des structures de données complexes en termes plus compréhensibles.

**Connexion aux sources de données :** Permet la connexion à diverses sources de données, permettant l'extraction de métadonnées depuis des bases de données relationnelles, des sources OLAP, et plus encore.

**Paramètres de sécurité :** Prend en charge la définition de contraintes de sécurité au niveau du modèle, garantissant que les données sensibles restent protégées et que l'accès est contrôlé.

**Localisation et internationalisation :** Les modèles peuvent être localisés, permettant la présentation des métadonnées dans différentes langues pour soutenir les déploiements mondiaux.

Le Metadata Editor joue un rôle crucial dans la suite Pentaho Business Analytics, simplifiant la création de rapports et d'analyses complexes en offrant une vue simplifiée des données pour les utilisateurs métier.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-6914ac9a225b1c10c68e55eb4ce22c291d746f57%2Fimage%20(10).png?alt=media" alt=""><figcaption><p>Éditeur de métadonnées</p></figcaption></figure>
{% endtab %}

{% tab title="Schema Workbench" %}
{% hint style="info" %}

#### **Schema Workbench**

Le Pentaho Schema Workbench est un outil essentiel de la suite Pentaho conçu pour les développeurs et les architectes de données afin de créer et d'éditer des schémas OLAP (Online Analytical Processing). Il fournit une interface graphique pour définir les modèles multidimensionnels nécessaires aux requêtes analytiques complexes, permettant l'organisation et la visualisation efficaces de grands ensembles de données.

Avec son interface conviviale, les utilisateurs peuvent facilement concevoir des cubes OLAP qui forment la base des analyses avancées et des applications de business intelligence, rendant les données plus exploitables et les insights plus accessibles.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-61d1ba77c62380878477f22ed8bcaca3d59698d1%2Fimage%20(11).png?alt=media" alt=""><figcaption><p>Schema Workbench</p></figcaption></figure>
{% endtab %}

{% tab title="Aggregation Designer" %}
{% hint style="info" %}

#### **Aggregation Designer**

Le Pentaho Aggregation Designer est un outil central visant à améliorer les performances des requêtes en simplifiant la création et la gestion de tables d'agrégation dans une base de données en schéma en étoile. Cet outil graphique aide les utilisateurs à définir, générer et déployer des tables d'agrégation basées sur SQL qui condensent de manière résumée les données détaillées, rendant les processus de récupération des données nettement plus efficaces pour les requêtes analytiques.

Cette capacité est essentielle pour améliorer les performances des cubes OLAP, faciliter une analyse de données plus rapide et offrir une expérience utilisateur plus fluide dans la suite Pentaho Business Analytics.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-14b29c6840d46bcf35cc754eb865340e0733e813%2Fimage%20(16).png?alt=media" alt=""><figcaption><p>Aggregation Designer</p></figcaption></figure>
{% endtab %}
{% endtabs %}
{% endtab %}

{% tab title="Serveur Pentaho" %}
{% hint style="info" %}
**Serveur Pentaho**

Le serveur Pentaho agit comme la plateforme centrale pour héberger et gérer toutes les applications et services Pentaho. Il fournit un environnement sécurisé et évolutif pour déployer et exécuter les solutions d'analytique et d'intégration de données de Pentaho. Les composants clés incluent :

* **Serveur BI :** Facilite le reporting interactif, l'analytique, les tableaux de bord et l'exploration de données.
* **Serveur d'intégration de données :** Prend en charge l'orchestration et la planification des processus ETL (Extract, Transform, Load).
* **Console utilisateur :** Offre une interface web pour accéder, créer et gérer le contenu au sein de la suite Pentaho.
* **Sécurité :** S'intègre aux systèmes de sécurité d'entreprise pour fournir authentification, autorisation et accès sécurisé.
* **Dépôt :** Centralise le stockage de tous les actifs Pentaho, y compris rapports, tableaux de bord et scripts ETL, assurant la collaboration et le contrôle de version.

Le serveur permet aux organisations de tirer pleinement parti de la suite Pentaho en fournissant une plateforme complète pour les activités de business intelligence et de gestion des données.
{% endhint %}

**Suite de reporting du serveur Pentaho**

{% tabs %}
{% tab title="Analyzer" %}
{% hint style="info" %}

#### **Analyzer**

Pentaho Analyzer est un outil d'analytique interactive et de visualisation de données faisant partie de la suite Pentaho Business Analytics. Il permet aux utilisateurs d'explorer et d'analyser les données via une interface web intuitive, offrant des représentations graphiques riches des données telles que graphiques, tableaux et cartes de chaleur. Les utilisateurs peuvent créer et personnaliser des rapports et tableaux de bord sans besoin de connaissances techniques approfondies, le rendant accessible à un large éventail d'utilisateurs. Les fonctionnalités clés incluent :

* **Analyse ad hoc :** Permet aux utilisateurs de créer et modifier rapidement des rapports en fonction de leurs questions et besoins spécifiques.
* **Interface glisser-déposer :** Simplifie le processus de conception de rapports en permettant aux utilisateurs de sélectionner et d'organiser facilement les éléments de données.
* **Visualisations riches :** Prend en charge un large éventail d'options de visualisation pour aider les utilisateurs à découvrir des insights à partir de leurs données.
* **Collaboration et partage :** Permet le partage de rapports et tableaux de bord avec d'autres utilisateurs pour faciliter la prise de décision entre équipes et départements.

Pentaho Analyzer est conçu pour fonctionner de manière transparente avec la suite Pentaho, s'intégrant directement aux capacités d'intégration de données, ETL et d'entrepôt de données de Pentaho. Cela permet aux utilisateurs de tirer parti de la puissance complète de la suite pour des solutions d'analyse de données et de business intelligence complètes.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-3ff87857b9e5b181ecc10a01fb3edf38040fad90%2Fimage%20(12).png?alt=media" alt=""><figcaption><p>Rapport Analyzer</p></figcaption></figure>
{% endtab %}

{% tab title="Rapports interactifs" %}
{% hint style="info" %}

#### **Rapports interactifs**

Les rapports interactifs Pentaho offrent une interface très conviviale pour créer, modifier et visualiser des rapports ad hoc. Cette fonctionnalité est conçue pour les utilisateurs métier qui doivent générer des rapports rapidement sans connaissances techniques approfondies de la structure de données sous-jacente.

* **Interface conviviale :** Fournit une interface glisser-déposer, facilitant la sélection, l'organisation et la présentation des données sans connaissance de SQL.
* **Exploration de données en temps réel :** Permet aux utilisateurs d'interagir avec leurs données en temps réel, autorisant le filtrage, le tri et l'agrégation instantanés pour identifier tendances et insights.
* **Mises en page personnalisables :** Les utilisateurs peuvent personnaliser la mise en page de leurs rapports en ajustant colonnes, lignes et résumés pour répondre à leurs besoins spécifiques de reporting.
* **Exporter et partager :** Les rapports peuvent être exportés dans divers formats (par ex. PDF, Excel, CSV) et partagés avec les parties prenantes pour soutenir la prise de décision basée sur les données.

Les rapports interactifs font partie de la suite Pentaho Business Analytics plus large, offrant une intégration transparente avec les outils ETL et d'analyse de données de Pentaho, garantissant aux entreprises une solution complète pour leurs besoins d'intégration et de reporting des données.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-916f227f8a4864a513e31e2ea06483a9b3355160%2Fimage%20(13).png?alt=media" alt=""><figcaption><p>Rapport interactif</p></figcaption></figure>
{% endtab %}

{% tab title="Concepteur de tableaux de bord" %}
{% hint style="info" %}

#### **Concepteur de tableaux de bord**

Pentaho Dashboard Designer est un outil riche en fonctionnalités de la suite Pentaho Business Analytics, conçu pour créer des tableaux de bord interactifs et visuellement attrayants. Ces tableaux de bord agrègent et affichent des données provenant de diverses sources, offrant aux utilisateurs des informations d'un coup d'œil. Voici un aperçu rapide :

* **Interface de conception intuitive**: Offre une interface glisser-déposer, la rendant accessible aux utilisateurs non techniques pour créer et personnaliser des tableaux de bord.
* **Intégration de données**: S'intègre de manière transparente avec Pentaho Data Integration (PDI), lui permettant de récupérer des données d'une large gamme de sources pour l'analytique en temps réel.
* **Widgets interactifs**: Prend en charge divers types de widgets incluant graphiques, tableaux et filtres, permettant une exploration interactive des données.
* **Personnalisation et image de marque**: Permet la personnalisation de la mise en page et du design, permettant l'alignement avec l'image de marque de l'entreprise.
* **Fonctionnalités de collaboration**: Facilite le partage et la collaboration en permettant aux utilisateurs de publier des tableaux de bord au sein de l'organisation ou à un public plus large.
* **Sécurité**: S'intègre aux frameworks de sécurité existants, assurant la protection des données et un accès contrôlé en fonction des rôles et permissions.

Pentaho Dashboard Designer joue un rôle crucial dans la transformation des données en insights exploitables, favorisant une prise de décision éclairée au sein des organisations.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-8dc55b144dee05b8e25a9e11fe8538112cbf7ded%2Fimage%20(14).png?alt=media" alt=""><figcaption><p>Tableau de bord</p></figcaption></figure>
{% endtab %}

{% tab title="Pipeline Designer" %}
{% hint style="info" %}

#### Pipeline Designer

{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2FSwL7C0y6P64C93dUjIkU%2Fimage.png?alt=media&#x26;token=22d85eef-7739-4975-94fe-50a4a4155b29" alt=""><figcaption><p>Pipeline Designer</p></figcaption></figure>
{% endtab %}

{% tab title="Éditeur de modèle sémantique" %}
{% hint style="info" %}

#### Éditeur de modèle sémantique

{% endhint %}

x
{% endtab %}
{% endtabs %}
{% endtab %}

{% tab title="Serveur Carte" %}
{% hint style="info" %}
**Serveur Carte**

Pentaho Carte est un serveur web léger pour l'exécution distante et la surveillance des processus ETL créés dans Pentaho Data Integration (PDI/Kettle).

Carte est construit en Java et utilise le serveur web embarqué Jetty. Il repose sur une configuration basée sur XML et expose des fonctionnalités via une API REST, avec une interface simple accessible par navigateur pour la surveillance.

Le serveur permet l'exécution à distance des transformations et des jobs, prend en charge le clustering pour l'équilibrage de charge, fournit une surveillance en temps réel et permet la planification des processus ETL.

Carte peut être déployé en tant que serveur autonome, dans une configuration master-slave en cluster, ou dans un environnement équilibré pour une haute disponibilité. Il est généralement lancé via la ligne de commande avec un fichier de configuration contenant les paramètres du serveur.

Ce composant est crucial pour l'architecture de traitement distribué de Pentaho, permettant aux organisations de faire évoluer les processus d'intégration de données sur plusieurs machines.
{% endhint %}

<figure><img src="https://3016379417-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5WjeDOi3MsT9tY3oU6mQ%2Fuploads%2Fgit-blob-9eec7d626b905e378f9c556e415d1a03b9268419%2Fimage%20(15).png?alt=media" alt=""><figcaption><p>Cluster Carte</p></figcaption></figure>
{% endtab %}

{% tab title="API" %}
{% hint style="info" %}
**Kitchen**

Kitchen est un outil en ligne de commande qui permet l'exécution des jobs PDI. Il prend en charge le traitement par lots et peut être intégré aux workflows automatisés, permettant un traitement efficace des données.
{% endhint %}

```
kitchen.sh -file=/PRD/updateWarehouse.kjb -level=Minimal
kitchen.bat /file:D:\Jobs\updateWarehouse.kjb /level:Basic
```

{% hint style="info" %}
**Pan**

Similaire à Kitchen, Pan est un outil en ligne de commande mais est spécifiquement conçu pour exécuter des transformations PDI. Il offre la flexibilité d'exécuter des transformations ETL depuis des scripts shell ou des systèmes de planification.
{% endhint %}

```
pan.sh -file="/PRD/Customer Dimension.ktr" -level=Minimal
pan.bat /file:"D:\Transformations\Customer Dimension.ktr" /level:Basic
```

{% embed url="<https://docs.pentaho.com/pentaho-rest-api>" %}
{% endtab %}
{% endtabs %}
