Introducció a Pentaho Data Integration (PDI)

De wikijoan
Salta a la navegació Salta a la cerca

Introducció

Pentaho Data Integration (antiguament Kettle ETTL Environment) és una ETL (o ETTL), és a dir, una eina que permet:

  • L’Extracció de dades que tenen per origen fonts diverses (fitxers, bases de dades)
  • El Transport de dades d'una unitat d'emmagatzematge a una altra
  • La Transformació de les dades
  • La càrrega de les dades a un repositori

Esquema pdi.png

Pentaho Data Integration - PDI és un producte Open Source que proporciona una interfície gràfica per a la manipulació de les dades-

La petita història

KETTLE es va desenvolupar l'any 2001 per Matt CASTERS, un consultor de Business Intelligence (BI) independent, d'entrada per les seves necessitats. El projecte va esdevenir lliure el 2005 i PENTAHO el va adquirir el 2006. És així que KETTLE va passar a dir-se Pentaho Data Integration (PDI).

Matt Casters conserva el lideratge sobre el projecte com a Cap d'Integració de Dades a PENTAHO.

Els components de PDI

PDI és un entorn que permet d'una banda definir les transformacions sobre les dades i executar-les, i d'altra banda guardar-les en fitxers o bases de dades relacionals.

PDI permet connectar-se a un gran número de bases de dades comercials o no.

PDI consta de diferents components: Spoon, Pan, chef, Kitchen

SPOON

SPOON és l'eina que permet gràcies a la seva interfície gràfica crear les transformacions, executar-les i guardar-les. Els components que permeten la manipulació de les dades s'anomenen etapes o passos (steps). Per exemple, existex una etapa que permet extreure les dades d'una base de dades, una altra que ajuda a l'extracció des de fitxes. SPOON comprèn un gran nombre d'etapes.

Entre les etapes establim un lligam (hop), que són les línies verdes, i que indica cap a on es dirigeix el flux de les dades.

Spoon.png

SPOON manipula els registres (o línies) sota la següent forma:

Columna1   Columna2   ...   Columna n
  VC10       VC20              VCN0
  VC11       VC21              VCN1
  ...

Gràcies a SPOON pots crear les teves transformacions, testejar-les i guardar-les en un fitxer.

Si el que vols és automatitzar l'execució de les transformacions a unes hores concretes necessitarem la utilitat PAN.

PAN

PAN és un programa d'ús simple que permet executar una transformació en línia de comandes. Es pot integrar amb el cron de Linux o el Planificador de Tasques de Windows.

Com que l'objectiu és alimentar un repositori de dades, segurament s'haurà d'executar diferents transformacions (extracció de les dimensionsm, alimentació de les taules de fets,...). Aquestes transformacions no són independents les unes de les altres. És a dir, l'alimentació de les taules de fet només es realitzarà si la tasca prèvia ha funcionat correctament. Això ens porta a parlar de Tasques.

CHEF

CHEF introdueix un altre concepte: la Tasca (Task). Una tasca són unes regles que permeten automatitzar complexes tasques de transformacions. L'execució de cada tasca només s'ha de dur a terme si la tasca precedent ha funcionat correctament.

Una entrada pot ser una transformació o transformacions especials com ara la recuperació de fitxers per FTP o l'execució d'un fitxer shell. Tasca PDI.png

Comentem el següent exemple. Llistem totes les entrades de la tasca:

  • L'entrada Start indica l'inici de la tasca.
  • L'entrada Get source files permet recuperar fitxers des d'un servidor FTP. Els fitxers obtinguts es fiquen en un repositori.
  • Les entrades Load source files, Update dimensions, Update fact tables, Update aggregates executen les tasques (sub-tasques).
  • L’entrada Remove source files permet de suprimir els fitxers recuperats.

Observar les fletxes verdes entre les entrades. Indica que l'etapa següent només s'executarà si l'entrada precedent ha funcionat bé.

  • La última entrada Send error mail envia un correu electrònic si una entrada no ha funcionat.

CHEF té una interfície gràfica que permet la creació, execució i salvaguarda de les tasques. CHEF també es pot executar en línia de comandes: KITCHEN

KITCHEN

KITCHEN permet executar una tasca en línia de comandes.


Copiat de la documentació oficial. Autor: Samatar HASSAN