facebook LinkedIN LinkedIN - follow
PříLOHA #1 3/2003

Využití open source technologii pro budování datových skladů






Přestože v poslední době zaznamenáváme řadu zpráv o rozvoji operačního systému Linux, o datových skladech a systémech business intelligence využívajících této platformy mnoho slyšet není. Na známém serveru sourceforge.net, který soustředí více než padesát tisíc open source projektů (s více než půl milionem registrovaných uživatelů), lze pro klíčové slovo OLAP (On-Line Analytical Processing) vyhledat asi osm projektů, z nichž nejvyšší aktivitu vykazují Mondrian a BEE. Mondrian je ambiciózním projektem, který má za cíl vytvořit analytickou aplikaci v jazyce Java (dokonce by se mělo jednat o jednu z prvních implementací standardu JOLAP). Druhý projekt Bee se snaží problematiku business intelligence pojímat v širším kontextu. Překvapením pro nás bylo, že členové jeho vývojového týmu jsou převážně našimi krajany. Za jedním z nich, Martinem Špaňhelem, jsme se vypravili do brněnské společnosti Insight Strategy, abychom mu položili několik otázek:


Martin Špaňhel, Insight Strategy a. s.

Co je vlastně cílem projektu BEE?

Cílem tohoto projektu, na kterém jsme začali pracovat v partnerství s firmou Intel na jaře loňského roku, bylo v první řadě ověřit použitelnost open source technologií pro budování datových skladů na platformě Linux/Intel. Záměrem bylo vytvořit metodiku implementace opírající se pokud možno o již dostupné technologie, která by zajišťovala technicky robustní a současně ekonomickou implementaci projektů business intelligence v prostředí středních podniků. Z hlediska objemu dat jsme se v první fázi zaměřili na datové sklady do velikosti desítek GB.

Zmínil jste se o open source technologiích. Co tento pojem přesně znamená?

V současné době na trhu softwaru vykrystalizovaly dva přístupy ke tvorbě programů. Ještě nedávno většina komerčně využívaného programového vybavení spadala do kategorie tzv. uzavřeného kódu. To znamená, že zdrojový kód byl vlastnictvím výrobce a uživatel měl přístup pouze k hotovému zkompilovanému produktu. Naopak v případě tzv. open source programů má uživatel zdrojový kód plně k dispozici. To přináší uživateli řadu výhod.

Řadu výhod? Většinou slyšíme, že jedinou výhodou open source programů jsou licence zdarma. V případě business intelligence projektů však očekávám, že cena licence představuje pouze zanedbatelnou část nákladů na implementaci ...

Myslím, že cena licence skutečně není to nejdůležitější. Licence zdarma může sice příznivě ovlivnit celkové náklady na vlastnictví systému, ale roli zde hraje ještě řada dalších faktorů. Se zúženým chápáním open source programů jen jako něčeho zadarmo se v českém prostředí setkáváme bohužel poměrně často. S open source hnutím se totiž obvykle spojuje anglické slovo "free", které čeština překládá dvěma způsoby. "Free" sice může znamenat i zdarma, ale v souvislosti s open source je potřeba jej chápat ve smyslu svoboda. Angličan by řekl: "Free as a freedom not as a free beer".


Grafické zobrazení fyzického modelu datového skladu

Co ale tato svoboda přináší uživatelům?

Možnost svobodně používat open source program, mít přístup k jeho zdrojovému kódu a mít možnost tento kód modifikovat přináší uživateli několik zásadních výhod. Uvedu zde namátkou jen některé: Za prvé je to snazší nalezení a oprava chyb, což je mj. jeden z důvodů vysoké stability a bezpečnosti Linuxu. Dále možnost s programem svobodně nakládat odbourává složitou administrativu se sledováním licencí. A v neposlední řadě je to také vyšší ochrana investice zákazníka, neboť tento není vydán na milost a nemilost jedinému dodavateli proprietární technologie.

Proč se vaše společnost do řešení open source projektu vůbec pustila?

Firma Insight Strategy se již několik let intenzivně zabývá problematikou datových skladů a analýzy dat. Technologie a metodologie, kterou používáme, se dosud výborně uplatňovala zejména v oblasti větších řešení. Současná vyzrálost operačního systému Linux nám umožňuje, abychom i zákazníkům z oblasti středních a menších firem nabídli robustní ale i ekonomické řešení datového skladu postavené na platformě operačního systému Unix a na otevřených standardech.

I když připustíme výhody open source programů pro zákazníka, neznamená vývoj open source programů ekonomické riziko pro vás jako dodavatele? V posledních letech jsme viděli řadu problémů firem spojených s Linuxem.

Je třeba otevřeně říct, že nalezení vhodného obchodního modelu pro firmy dodávající open source technologie nebylo snadné. V některých oborech informačního průmyslu to jde snáze a jsou zde příklady komerčně velmi úspěšných firem, někde se však vhodný model stále hledá. Myslím si, že právě v oblasti implementace business intelligence řešení to velký problém není. Sám jste před chvílí řekl, že v těchto projektech cena licencí tvoří zanedbatelnou část celkových nákladů.


Web klient - definice reportu

Co tedy tvoří podstatnou část ceny řešení?

Převážnou část stále tvoří náklady na implementaci extrakce dat z primárních systémů do datového skladu, jejich transformaci, kontrolu kvality atd. Nezanedbatelnou částku však tvoří i náklady na hardware vlastního uložiště datového skladu. Proto věnujeme velkou pozornost optimálnímu návrhu datového modelu a vyladění celého systému.

Z čeho se projekt BEE skládá?

V téměř každém systému business intelligence, například v systémech manažerských informačních systémů, můžeme rozeznat tři hlavní prvky. Systém pro extrakci a transformaci primárních dat (tzv. ETL procesy), systém vlastního uložiště dat datového skladu a analyticko-prezentační vrstvu. Projekt BEE zahrnuje všechny tyto tři oblasti. Pro oblast ETL procesů a prezentační vrstvy nebyla k dispozici technologie, která by vyhovovala technickému a ekonomickému zadání projektu, proto tyto dvě vrstvy řešení vyvíjíme v rámci projektu. Pro ETL procesy se konkrétně jedná o síťovou aplikaci využívající pro transformace skriptovacího jazyka Perl a disponující pokročilými vlastnostmi jako je kryptování přenosů, využití digitálních podpisů, centrální správa a možnost paralelního zpracování. Prezentační vrstva je pak navrhnuta jako vícevrstvá aplikace, využívající SOAP aplikační server a tenkého klienta jako uživatelské rozhraní. Pro vlastní uložiště datového skladu využíváme databázi MySQL.

Proč jste se rozhodli právě pro databázi MySQL?

Naše cesta k MySQL nebyla vůbec přímočará. Nejprve jsme v projektu s použitím open source databází ani nepočítali. Nepředpokládali jsme, že by pro oblast datových skladů byly dostatečně vybavené a výkonné. Testovali jsme několik komerčních databází, ale výsledky se nám pořád nějak nezdály. Nakonec jsme spíše ze zvědavosti sáhli také po open source databázích . Konkrétně k MySQL jsme se dostali vlastně až nakonec, vydatně živeni "šeptandou" a marketingem jejích rivalů, tvrdící, že se vlastně o žádnou databázi nejedná. Možná mohou být pochybnosti o vhodnosti jejího nasazení pro transakční systémy. Naopak pro využití jako systému řízení báze dat datového skladu disponuje vynikajícími vlastnostmi. Tehdy jsem ale ještě netušil, že nás čekají další čtyři měsíce úmorného testování, ladění a hledání optimálních strategií pro generování dotazů. Výsledkem je ale jasná metodika, jak datový sklad na databázi MySQL budovat. Výkon takového systému si troufám označit za vynikající.


Tenký web klient - definice formátu reportu

Je však MySQL dostatečně podporovaný produkt a produkt akceptovatelný komerčním zákazníkem?

MySQL je dostupný paralelně jak pod open source GPL licencí tak i jako komerční produkt se standardní úrovní podpory. Málo je známo, že se jedná o jednu z nejrozšířenějších databází, celosvětově jsou v provozu více než 4 miliony instalací.

Jaké máte s projektem BEE plány do budoucna?

Co se týká dalšího technologického rozvoje projektu, soustředíme se zejména na optimalizaci generování dotazů do datového skladu. Chceme zde využít naše zkušenosti z důkladného testování platformy MySQL pro data warehouse použití. Další práce nás čeká na zdokonalení uživatelského rozhraní tenkého klienta. Zahájili jsme také práce na rozhraní umožňující interaktivní 3D zobrazení vícerozměrných dat, někdy též nazývané vizuální data mining. Věnujeme také pozornost propojení našeho SOAP serveru se statistickým balíkem "R". Kombinace těchto technologií umožní našim zákazníkům analyzovat svá data sofistikovanými metodami a významně tak podpořit a optimalizovat své rozhodovací procesy.

Je možné se někde s výsledky vývoje seznámit?

Na serveru bee.sourceforge.net, kde jste nás také našel, se snažíme průběžně zveřejňovat základní informace o projektu. Nejbližší příležitost, kde se můžeme potkat, bude březnový veletrh LinuxExpo v Praze, a to na stánku naší firmy.

Na konec bych vám chtěl položit otázku, kterou jsem měl možná začít: Proč se projekt jmenuje právě BEE?

V rámci projektu jsme řešili nejprve vrstvu ETL procesů a datového úložiště. Tehdy někoho, tuším Dr. Skočovského, napadlo přirovnat přenos dat z primárních systémů do datového skladu ke včelám snášejícím med do úlu. K našemu překvapení jsme zjistili, že včelu jako maskota ještě žádný softwarový projekt nemá, tak bylo pojmenování na světě. Analytickou a prezentační vrstvu si pak můžeme představit jako medvěda, který chodí včelkám med vybírat. Tato část projektu tedy nese jméno "bear". Kromě toho u nás můžete potkat také tučňáky (Linux), delfíny (MySQL) a občas i skutečného velblouda (Perl).

Děkuji za rozhovor.

Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.


Inzerce

Modernizace IS je příležitost přehodnotit způsob práce

IT Systems 4/2025V aktuálním vydání IT Systems bych chtěl upozornit především na přílohu věnovanou kybernetické bezpečnosti. Jde o problematiku, které se věnujeme prakticky v každém vydání. Neustále se totiž vyvíjí a rozšiřuje. Tematická příloha Cyber Security je příležitostí podívat se podrobněji, jakým kybernetickým hrozbám dnes musíme čelit a jak se před nimi můžeme chránit. Kromě kybernetické bezpečnosti jsme se zaměřili také na digitalizaci průmyslu.