Ugrás a fő tartalomra

PDI Pentaho Data Integrátor (Kettle) Hitachi Vantara

 Hitachi Vantara Data Integrátor





Link : 

https://help.pentaho.com/Documentation

https://sourceforge.net/projects/pentaho/


Adat integráció fogalmai

BI infrastruktúra : A platformon belüli összes eszköz ugyanazt a közös biztonsági megoldást, metaadat kezelést, adminisztrációs felületet, portál megjelenést, objektum modellezést és lekérdezés motort használja. Így egységes kinézetet és érzést kelt a felhasználóban. 

Metaadat kezelés : Azon túl, hogy az összes eszköz ugyanazt a metaadat tárat használja, léteznie kell egy robusztus módnak, mellyel keresni, tárolni, újrafelhasználni és közzétenni lehet metaadat objektumokat. (Például dimenziókat, hierarchiákat, mérőszámokat és riport layoutokat) 

Fejlesztés : A BI platformnak nyújtania kell olyan fejlesztői eszközt, mely segítségével kódolás nélkül, varázsló-szerű komponensekkel, grafikus felületen lehet objektumokat létrehozni vagy módosítani. Az eszköz segítségével olyan feladatokat is el kell tudni végezni, mint (futás) ütemezés, az eredmények eljuttatása a felhasználókhoz, vagy adminisztráció. 

Munkafolyamatok és kollaboráció támogatása : A felhasználók megoszthatják és megvitathatják a kapott eredményeket például közös könyvtárak vagy vitafórumok segítségével. Fontos, hogy a BI alkalmazás tudjon hozzárendelni és követni eseményeket vagy feladatokat, és ezeket az előre definiált üzleti szabályok alapján felhasználókhoz tudja rendelni. 


Tényadatnak (vagy mutatószámnak – metric vagy measure) nevezzük azokat a mérhető, numerikus adatokat, melyeket elemezni szeretnénk. Például: árbevétel, eladott darabszám.

 Dimenziónak (dimension) nevezzük azokat a jellemzőket, tulajdonságokat, melyek szerint a mérőszámokat csoportosítani, jellemezni tudjuk. Például: idő, termék, vevő. A dimenziók elemei hierarchiába rendezhetők. Például idő dimenzió esetén év – hónap – nap felbontás.



PDI komponensei:

  •  Spoon: grafikus felületű transzformáció és job készítés
  •  Kitchen: parancssori job futtatás
  •  Pan: parancssori transzformáció futtatás
  •  Carte: egyszerű web szerver transzformációk távoli futtatása céljából

 



A transzformációkat és jobokat fizikailag két módon tárolhatjuk. Vagy egy adatbázis repository-ban, vagy (ktr és kjb kiterjesztésű) XML fájlokban. A repository ugyan nem követelmény, de több felhasználó (fejlesztő) esetén ajánlott. Szintén a repository használata mellett szólnak különböző biztonsági és adatvédelmi okok is. A fájl alapú tárolás akkor lehet előnyös, ha azokat egy verziókezelő rendszerrel (például subversion - SVN) kezeljük.

Nézzük meg, hogy miben különböznek a transzformációk és a job-ok. A transzformációk valósítják meg a szűk értelemben vett ETL feladatokat. A transzformációk adat orientáltak és lépései rekord folyamokkal (record steam) dolgoznak. A lépések különböző feladatokat tudnak ellátni, melynek végeredményeit átadja a következő lépésnek. Az egyes lépéseket összeköthetjük (úgynevezett hopokkal), melyeket olyan csővezetékeknek tekinthetjük, melyeken az adatok áramolnak. 

A feldolgozás során a transzformáció lépései egyidejűleg és aszinkron módon hajtódnak végre. Például azon lépések melyek az adat generálásáért felelősek (például adatbázis tábla vagy fájl beolvasás), elkezdik a beolvasást, de amint beolvastak, már egyből továbbítják a következő lépésnek, ami átalakítja azokat.

Egy job egy vagy több transzformációból áll. A jobok a transzformációk vezérlésére valók. Fontos különbség, hogy míg egy transzformáció adat orientált, addig egy job feladat orientált. A job szabályozza a transzformációk végrehajtásának sorrendjét. Ha példával akarjuk szemléltetni, akkor egy csillag sémát töltése erre a legjobb példa. Erre készíthetünk egy job-ot. Az egyes transzformációk végzik egy-egy tábla töltését, míg a job azt szabályozza, hogy először a dimenzió táblák töltése történjen meg, majd utána a tény táblák. 

A job-ok lépéseit is összeköthetjük hop-okkal, amiken azonban nem utazik semmi, csak a végrehajtási sorrendet szabályozza az előző lépés futtatásának státusza alapján (sikeres vagy sikertelen). A job-ok lépési ugyan főként transzformációk, azonban számos olyan segédfeladatot is elláthatnak, mint például adatbázis táblák vagy fájlok törlése, fájlok másolása FTP-n, HTTP-n, vagy e-mail küldés.


Tulajdonságok:

  •  platform függetlenség (100 % Java – Windows, Linux,…)
  •  egyszerű használhatóság (grafikus felület, specifikus ismereteket nem igényel)
  •  integrálhatóság
  • több száz komponens

 

PDI komponensek:

Integráció alapja a transzformáció (Kettle Transformation - kiterjesztés: ktr):

  •  Transzformációs lépés/elem (Step)
  • „Adatfolyam”(Hop)

 

Munkafolyamat (Kettle Job - kiterjesztés: kjb):

  •  Elem (Job entry)
  • „Adatfolyam” (Job hop)

 

 

PDI funkciók

Alapvető transzformációs komponensek

  •  Input, Output elemek (file, tábla, Excel, OLAP, LDAP, SAP)
  •  Adatok (sorok) generálása (Generate rows)
  •  Számítás (Calculator)
  •  Szűrés (Filter rows)
  •  Csoport művelet (Group by / Memory Group by)
  •  Sorba rendezés (Sort rows)
  •  Naplózás (Write to log)
  •  …




Alapvető job komponensek

  •  Folyamatvezérlési elemek (Start, Success, Abort, Job)
  •  Transzformációk hívása (Transformation)
  •  Feltételek (Conditions) (pl file exist, folder empty, check DB connection)
  •  File műveletek
  • ...



A transzformáció futtatásához használjuk az F9 gombot, vagy futtatás a gombot. 
A futtatás után megjelenik a képernyő alján az Execution Results ablak, melyben a futtatás eredménye és logja látható. Ezután megnézhetjük az elkészült fájlunkat.

Bonyolult transzformáció előtt célszerű a futtatást leellenőriztetni a Verify this transformation opció
segítségével. Ezt a gombbal, az F11 billentyűvel vagy a Menü > Transformation > Verify opcióval
tudjuk elindítani. 

Ez a funkció logikailag ellenőrzi, hogy minden rendben van-e, illetve a szükséges elemek rendelkezésre állnak-e. Például, hogy az adatbázis táblánk létezik-e és elérhető, illetve az egyik lépésben sem kötünk össze nem megfelelő típusú rekord stream-eket. A Verify egy ablakban jeleníti meg az egyes lépéseket, és színekkel megjelöli a végeredményüket. Ha zöld azt jelenti, hogy minden rendben, ha a sárga, akkor figyelmeztet valamire, de még futtatható, illetve ha piros, akkor hibát jelez.




Jó tanácsok:

A folyamatokat összekötő nyilakra kattintással lehet egy folyamatot deaktiválni, így azokat lehetőség szerint kerüljük el.

Indításhoz a start nyilat kell megnyomni, aminek hatására felugrik egy ablak, ahol szerkeszteni tudjuk a paramétereket. A Value oszlopba beírtakkal felül lehet írni.

Jelöljük ki a forrás vagy cél lépést és a megjelenő választható műveletgombok használatával jelöljük ki az összekötés típust majd a következő lépés objektumot.







Steps tulajdonságok beállítása, futtatás és sikeres végrehajtás jelzés







Jobs tulajdonság





Komponensek és telepítésük:







Az adatárház építés folyamata, ha igény fogalmak oldalról indulunk el:









Megjegyzések