Pentaho

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Pentaho BI Platform je open source software pro business intelligence, tzn. pro získávání odpovědí na otázky související s řízením podniku a obchodu z firemních dat. Slučuje řadu původně samostatných projektů jako např. JFreeReport pro reporting, Mondrian a JPivot pro analýzu dat (OLAP), Weku pro těžbu dat (data mining) a Pentaho Data Integration (Kettle) pro ETL, kterým poskytuje jednotné prostředí pro spouštění, zobrazování výsledků a práci s nimi. Samotná Pentaho BI Platform i její součásti jsou napsány v Javě, případně s využitím J2EE, a běží jako webová aplikace na aplikačním serveru. Lze stáhnout přednastavenou verzi instalovanou na server JBoss.

Jak to funguje?[editovat | editovat zdroj]

Pentaho BI Platform funguje jako běhové prostředí pro jednotlivé komponenty, které provádějí vlastní BI operace s daty a jiné úkoly. Jádrem je jednoduchý workflow engine, který provádí v XML definovaný sled akcí (action sequence), což je v nejjednodušším případě popis toho, jaká komponenta a s jakými parametry se má spustit, a co dělat s jejím výstupem – např. komponenta pro generování reportu, jejímž vstupem je soubor s definicí reportu a výstup se má zobrazit na webové stránce. Sled však může také obsahovat volání více komponent, kde jedna pracuje s výstupy druhé, a také jednoduchou rozhodovací logiku a cykly. Například:

  1. Načtení dat z databáze na základě předem daného SQL dotazu (komponenta SQLLookupRule)
  2. Vygenerování reportu na základě těchto dat a jeho definice uložené v souboru (JFreeReportComponent)
  3. Pokud došlo v datech k překročení určité hranice, odeslání reportu emailem (condition + EmailComponent)
  4. Vrácení vygenerovaného reportu tomu, kdo sled spustil (obvykle prohlížeči uživatele)

Sled akcí může být volán z jiného sledu, může být spuštěn prostřednictvím webového prohlížeče z webové aplikace Pentaho a dokonce může být volán jako webová služba.

Ústředním pojmem Pentaha je „řešení“ (solution), což je skupina zdrojů (obrázky, definice reportů atd.) a definice sledu akcí, které řeší jeden konkrétní problém managementu – viz příklad výše. Na fyzické úrovni odpovídá každému řešení adresář v repozitáři řešení, což je u přednastavené verze adresář pentaho-solutions v instalačním adresáři Pentaha.

Tvorba „řešení“[editovat | editovat zdroj]

Jak bylo řečeno, Pentaho BI Platform je běhové prostředí pro spouštění řešení a neumožňuje jejich tvorbu či úpravy. Definice reportů, OLAP kostek a dotazů nad nimi atd. se provádí mimo vlastni webovou aplikaci, buď ruční editací převážně XML souborů, nebo s využitím samostatných nástrojů, postupně vznikajících v rámci projektu Pentaho, jako např. Pentaho Design Studio pro tvorbu řešení a sledů akci, Schema Workbench pro tvorbu OLAP kostek nebo Report Designer.

Co poskytuje Pentaho navíc?[editovat | editovat zdroj]

To, čím Pentaho BI Platform obohacuje své podprojekty, resp. komponenty, je:

  • Možnost kombinace, řízení a spouštění komponent pomocí workflow engine a definice sledu akcí
  • Jednotné uživatelské rozhraní ve formě webové aplikace nebo portletů, umožňující procházení repozitáře řešení, jejich spouštění, administraci aj.
  • Zpřístupnění řešení/sledu akcí také jako webové služby
  • Možnost naplánovat spuštění či spouštění libovolného řešení pomocí plánovače Quartz – umožňuje např. generování pravidelných měsíčních reportů hospodářských výsledků vždy první pondělí měsíce
  • Metadatová vrstva, která abstrahuje od konkrétní podoby dat v databází či datovém skladu (tzn. tabulky, sloupce) a umožňuje uživateli pracovat s jemu mnohem bližšími pojmy relevantními pro danou doménu - může tak např. pracovat s objektem "Zákazník" s atributy "jméno", "IČO", aniž by se musel starat z jaké tabulky či tabulek – často s kryptickými názvy – se berou.

Bezplatná vs. komerční varianta Pentaha[editovat | editovat zdroj]

Vedle Pentaha jako open source software existuje i pokročilejší komerční varianta (Enterprise Edition), která přidává např. pokročilou správu práv uživatelů.

Vybrané součásti Pentaho[editovat | editovat zdroj]

Analýza: OLAP server Mondrian (a prohlížeč JPivot)[editovat | editovat zdroj]

Mondrian je ROLAP server, tzn. OLAP dotazy, definované v de facto standardním microsoftím jazyce MDX s některými dodatky, převádí do SQL dotazů nad klasickou relační databází, a provádí potřebné agregace, kešování atd. Umí pracovat s tabulkami ve star i snowflake schématu a rovněž podporuje dimenzi přímo vyjádřenou v tabulce faktů (viz degenerated dimension). Zvládá dokonce hierarchie založené na vztahu rodič-dítě, kde libovolný prvek může být nadřazeným jiného z téže tabulky, bez omezení na hloubku hierarchie (např. v tabulce/dimenzi Zaměstnanci může být Adam podřízeným Bořivoje, který podléhá Cyrilovi atd.).

ETL: Pentaho Data Integration (Kettle)[editovat | editovat zdroj]

Pentaho Data Integration je nástroj pro extrahování, transformaci a vložení dat do datového skladu, resp. databáze. Jeho základními komponentami jsou Spoon, uživatelské rozhraní pro definici transformací včetně vstupů a výstupů, a Chef, uživatelské rozhraní pro definici úloh, které provádí spuštění transformací, řeší, co dělat, když některá selže atd.

Externí odkazy[editovat | editovat zdroj]