facebook LinkedIN LinkedIN - follow
IT SYSTEM 9/2000

Teradata a TeraMiner: Data Warehouse a Data Mining v podání NCR

Milan Kučera





Datový sklad představuje v současnosti technologii, která se postupně dostává do obecného povědomí managementu jednotlivých společností. Datový sklad je používán všude tam, kde je potřebné mít k disposici snadno přístupná data, která jsou pak používána pro tvorbu reportů či pro předem definované analýzy.

Datový sklad nemusí být implementován pouze pro potřeby podpory rozhodování (např. CRM, E-Business, DSS systémy), ale také z jiných důvodů, například při spojování firem, integrace dat, projekty data quality, apod. Možných způsobů pro použití datového skladu bychom našli mnoho. Datový sklad představuje skoro vrchol pyramidy budování informačně technologického prostředí společnosti, jak je patrno z uvedeného obrázku, ze kterého vyplývá, že společnost, která chce zavést data mining, musí mít vybudovaný data warehouse.

Data mining je proces využití zdrojových (detailních) dat pro objevování nových (neznámých) obchodních vazeb. Do tohoto procesu se plně promítá celopodniková znalostní báze jednotlivých obchodních procesů. Již implementace datového skladu představuje poměrně složitý a náročný proces, který s sebou přináší další doprovodné jevy, jakým je již zmíněná kvalita dat v informačních systémech podniků. Pro implementaci datového skladu existuje několik přístupů, přičemž nejznámější z nich jsou přístupy Ralpha Kimballa a Billa Inmona, kteří jsou současně považovány za "otce" data warehousingu. Firma NCR preferuje Inmonův přístup, který spočívá na vybudování celopodnikové integrované "databáze", nebo-li "celopodnikového datového skladu".

Abychom byli schopni kvalitně odpovídat na potřebné dotazy a provádět potřebné analýzy, je nutné, abychom v datovém skladu uchovávali detailní data neboť agregovaná data mohou skrýt některé detaily a pokud jinde nejsou k dispozici podrobná data, pak deagregace kumulované veličiny je prakticky nemožná. Detailní data nám totiž uchovávají všechny své nuance, které se neztrácejí v různých agregací a tak mají jednotlivé podniky možnost detailního poznání klienta, jeho chování a pod. Ukažme si některé příklady využití detailních dat v praxi.

Klienti bank vlastní kreditní karty, které využívají k různým operacím (výběry přes automat, platba nákupů a pod). V peněžních ústavech tato data, která získávají ze svých systémů, analyzují a díky tomu mohou následně provádět marketingovou segmentaci a definování potenciálních klientů banky, které je možno oslovit s nějakou zajímavou nabídkou.

V prostředí retailového bankovnictví je možné detailní data použít pro definování marketingových segmentů pro přímý marketing, analýzu distribučních kanálů, a samozřejmě pro customer relationships management. Podobné případy bychom mohli najít i pro jiná "průmyslová" odvětví, jako je pojišťovnictví, telekomunikace, retail, státní správa a pod.

Teradata RDBMS Utility
Již z uvedeného obrázku vyplývá, že vlastní data mining je budován až v posledních fázích implementace celopodnikového datového skladu, neboť je potřebné, aby všechna data byla integrována a dostupná tak, abychom je mohli pro proces data miningu plně využít. K tomu, abychom mohli implementovat data mining, je potřebné, abychom vybudovali architekturu, kterou jsme vám popsali výše. Zjednodušeně řečeno to znamená projít následujícími technickými etapami:

· extrakcí dat z produkčních systémů podniku
· transformací dat na základě předem definovaných pravidel
· transportem dat do cílového prostředí.

Extrakce dat znamená získávání data z produkčního prostředí. Data z tohoto prostředí jsou například ukládána do tzv. flat file a odtud jsou potom prostřednictvím utility FastLoad "přeneseny" do cílového prostředí, jímž je NCR - Teradata. Utilita FastLoad slouží pro iniciální naplnění cílové struktury datového skladu. Takto bychom však měli v datovém skladu pouze data za jeden den (resp. jedno období), ale datový sklad budujeme proto, abychom měli přístup k dlouhé historii detailních dat. K tomu, abychom mohli aktualizovat data v datovém skladu, používáme další dvě utility, a to MultiLoad nebo TPump . Použití té které utility pro aktualizaci datového skladu je záležitostí objemu dat, který je použit pro aktualizaci datového skladu, a způsobu aktualizace (dávkový, real - time).

Naplnili jsme datový sklad a umíme jej aktualizovat prostřednictvím příslušných Teradata Utilit. Vzhledem k tomu, že datový sklad je připravován hlavně pro koncového uživatele, je nutné abychom datový sklad zpřístupnili. Lze jednak použít jak nástroje třetích stran jako COGNOS, MicroStrategy, tak samozřejmě i přímo nástrojů od společnosti NCR, jmenovitě BTEQ a QueryMan, které zajistí komunikaci uživatelů s datovým sklady.

Aplikace BTEQ je připravena pro prostředí UNIX a Windows. V prostředí UNIX se jedná o řádkový editor, který však není tak komfortní jako BTEQ pro Windows. Mnohem pohodlnější aplikací je QueryMan, která např. umožňuje uživateli vracet se k předchozím SQL dotazům a obsahuje nápovědu se syntaxí jednotlivých SQL příkazů. Pro používání aplikace je nutná znalost Teradata-SQL, podobně jako v utilitě BTEQ.

TeraMiner
Dolování v datech je interaktivní proces v datovém skladu, který NCR podporuje jednak prostřednictvím metodiky CRISP-DM, tak svým nástrojem pro data mining - TeraMiner.

Ten je tvořen třemi moduly, které podporují metodiku CRISP-DM (CRoss Industrail Standard Process for Data Mining) a dovolují analýzu vašich dat s využitím MPP (Multi Paralel Processing) technologie. V současnosti je k dispozici modul TeraMiner Stats (zbývající dva budou uvedeny do konce roku), který poskytuje podporu pro předzpracování dat, jež je jednou z nejdůležitějších součástí zavádění procesu data miningu. Modul umožňují automatické generování skriptu, který obsahuje jeden nebo více SQL dotazů, které je možné spustit přímo ze stanice nebo z prostředí Unix.

Nástroj Stats je složen z jednotlivých komponent, kterými jsou TeraMiner Stats - API, Batch Generator, Matrix Builder a Windows Interface.

TeraMiner Stat - API je knihovna reprezentující specifické funkce programu, jenž například umožňují dynamické generování Teradata SQL, které obsahuje příkazy, které nejsou standardními příkazy ANSI SQL a výsledky jsou pomocí něj vráceny přímo uživateli. Výsledky lze uložit v prostředí Teradata jako pernamentní či dočasnou (temporary) tabulku, nebo je možné vytvořit na ně pohled - tzv. view.

Batch Generator je aplikace, která řídí aplikaci API a generuje script s výsledným SQL příkazem, Matrix Builder zase řídí provádění SQL příkazu, kterým jsou vytvářeny příslušná data použitelná pro další zpracování prostřednictvím SAS nástroje. Alternativou tohoto výstupu jsou flat soubory s pevnou délkou věty, které jsou použitelné jinými statistickými nástroji.

TeraMiner Stats - Windows Interface představuje rozhraní komunikující s nástrojem Teradata Dictionary Tables, kde jsou uloženy informace o databázích a tabulkách, a tak umožňující uživateli parametrizovat jak Batch Generator tak i Matrix Builder. Dále spouští výsledný skript (jeden nebo více SQL příkazů). Výsledky je možné zobrazit prostřednictvím Teradata Utilit pro Windows, Unix nebo též programem MS Office Excel.

Co nám to přinese?
První kategorií analýz, prováděných nástrojem TeraMiner Stats je deskriptivní analýza, která poskytuje detailní znalost o datech, která mají být analyzována (pochopení problematiky, odhalení kvality vstupních dat či izolovat data, která budou použita pro tvorbu vlastního matematického modelu). Druhou kategorií analýz tvoří funkce, umožňují provádět transformace dat potřebné před vlastním zpracováním.

Redukce dat představuje také jednu ze součástí nástroje TeraMiner Stats, kterou použijeme v případě, že není nutné pro analýzu tak velký objem dat. Redukce dat spočívá v tom, že vytváříme určité matice, které jsou poté základem pro další zpracování.

Poslední kategorii funkcí pro předpřípravu dat jsou funkce používané pro tvorbu náhodných výběrů z originální tabulky uložené v databázi. K těmto účelům je možné použít funkce partition a sample, které používáme tehdy, pokud potřebujeme vytvořit tabulky pro školení, testování atd.

Dost bylo teorie!
Podívejme se na jednoduchý příklad, kde máme k disposici data o obchodních transakcích. Datový soubor, který jsme použili pro naši ukázku, obsahoval něco přes 17000 záznamů o transakcích provedených ve fiktivní bance. Nejprve jsme vytvořili soubor ITBusiness01.gen - obr. 4, který obsahuje informace o tom, který BTEQ script se má spustit. Tento script obsahuje Teradata SQL příkazy, které jsou prostřednictvím vrstvy TeraMiner API´s "zaslány" do prostředí Teradata RDBMS.

Poté je nutno vygenerovat BTEQ script, který nám problematiku četnostního rozložení transakčních částek řeší. Výsledek tohoto scriptu jsme uložili do tabulky TM__bin, kde "TM_" představuje uživatelsky nastavenou identifikaci tabulek TeraMineru, neboť defaultní hodnotou je hodnota "teraminer" a "_bin" představuje analytickou funkci, kterou jsme použili. Výsledek našeho počínání je zobrazitelný prostřednictvím QueryMan - obr. 5 nebo prostřednictvím MS Excel.

NCR Česká Republika
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.