ETL: Vytáhnout, převést a nahrát data

DEFINICE Zkratka ETL pochází ze slov Extract, Transform and Load. Jde o označení procesů, které firmám dovolují brát...


DEFINICE
Zkratka ETL pochází ze slov Extract, Transform and Load. Jde o označení
procesů, které firmám dovolují brát data z mnoha zdrojů, přeformátovat je,
vyčistit a nahrát do společné databáze, do datového tržiště nebo do datového
skladu. Zde mohou sloužit jako podklad pro následnou analýzu nebo jako přímá
podpora nějakého obchodního procesu.
V zařízeních zapojených ve firemních počítačových sítích se zpravidla nachází
množství cenných dat a zaměstnanci většiny firem si to dnes už uvědomují.
Problémem ovšem je, že uvedená data je často nezbytné přesunout do jiné
destinace a současně provést jejich přeformátování například v okamžiku, kdy je
třeba poskytnout informace z jedné obchodní aplikace aplikaci další, případně
když je třeba sebrat data pro datový sklad, kde poslouží pro další analýzu.
Hlavním problémem je skutečnost, že data leží v mnoha druzích heterogenních
systémů, a tedy v řadě odlišných formátů. Například systém CRM může definovat
zákazníka jedním způsobem, zatímco účetní systém toho samého zákazníka často
vidí zcela odlišně.
K řešení tohoto problému používají firmy software označovaný zkratkou ETL
(Extract, Transform and Load), který zahrnuje funkce čtení dat z jejich zdrojů,
jejich vyčištění, unifikované zformátování a zápis do cílového úložiště pro
další využití.
Data, se kterými procesy ETL pracují, mohou pocházet z libovolného zdroje z
mainframové aplikace, z aplikace ERP, z nějakého nástroje CRM, z prostého
souboru, z tabulky Excelu nebo dokonce z fronty zpráv na serveru.

Získání dat
"Extrakce dat může být prováděna prostřednictvím JDBC (Java DataBase
Connectivity), ODBC (Open DataBase Connectivity) Microsoftu, za použití nějaké
proprietární technologie, případně prostřednictvím tvorby běžných textových
souborů," říká Mike Schiff, analytik konzultační společnosti Current Analysis.
Po extrakci jsou data transformována nebo modifikována v závislosti na zahrnuté
specifické obchodní logice tak, aby mohla být přesunuta do cílového úložiště. V
praxi existuje množství různých požadavků na realizaci těchto proměn. Některá
data mohou vyžadovat pouze přeformátování, většina operací ETL však zahrnuje
rovněž vyčištění dat vyřazující případné duplicity a zajišťující konzistenci.
"Jednou z věcí, které tento druh softwaru provádí, je prohlížení jednotlivých
datových záznamů a aplikování pravidel pro konzistentní konverzi obsahu do
formy požadované cílovým úložištěm nebo aplikací," vysvětluje Schiff. Například
kategorie "muž" může být reprezentována třemi odlišnými systémy, jako M, muž a
0/1. Software ETL by měl rozpoznat, že tyto položky znamenají to samé, a
konvertovat je do stejného formátu.
Navíc může proces ETL zahrnovat standardizaci jmenných a adresových polí,
kontrolu telefonních čísel nebo rozšíření záznamů o další pole obsahující
demografické informace nebo jiná data z dalších systémů.

Příklad
Harriet Frymanová, ředitelka produktového marketingu kalifornské společnosti
Informatica, nabízí následující příklad: Řekněme, že zákazník provozuje
aplikace Oracle financials a PeopleSoft HR. K tomu používá aplikaci SAPu pro
řízení výroby. A potřebuje přistupovat k datům každého z těchto systémů, aby
mohl realizovat elektronicky kompletní proces od objednávky po zaplacení zboží.
To bude po firemním softwaru ETL vyžadovat, aby extrahoval data z původních
systémů, což ale není ve všech případech tak snadné, jak to na první pohled
vypadá. V případě získání dat ze zmiňované aplikace SAPu to například bude
vyžadovat napsání proprietárního kódu v ABAPu, aby mohly být extrahovány
informace o dodání a o objednávkách.
Jakmile jsou data z každého zdroje namapována, dojde k transformacím, čištění a
uspořádání dat tak, aby mohla být složena dohromady. Zde už jsou příjemci
provázáni s fakturačními informacemi a podobně. Po novém uspořádání jsou data
transportována a nahrána do datového skladu pro analýzu tady lze například
zjistit dobu potřebnou pro uspokojení každé objednávky nebo celkový objem
objednávek, jejich cenu a podobně.
Podle Frymana zákazníci využívají ETL nejen pro aktivity související s datovými
sklady nebo s procesy business intelligence; dle jeho slov tímto způsobem
rovněž realizují přesun dat z jednoho operačního systému do druhého například z
toho, na kterém běží systém ERP, do toho, kde se nachází aplikace CRM.

Jediná realita
"ETL dovoluje týmům firemních uživatelů pracovat s jedinou verzí reality," říká
Chet Phillips, ředitel IT pro oblast business intelligence společnosti
Motorola. Jeho firma používá ETL pro naplnění svých datových skladů pořízených
od firmy Informatica.
"ETL dovolilo Motorole shromáždit data z 30 rozdílných systémů používaných ve
výrobě a poslat je do jejího globálního datového skladu systému SCM k analýze,
za co firma celkově utrácí a kolik," říká Phillips.
"V minulosti společnosti, které pracovaly na projektech datových skladů, často
používaly pro realizaci procesů ETL vlastní kód," vysvětluje Schiff. Nicméně
dokonce i ty z nich, kterým se podařila úspěšná implementace, zjistily, že
zdrojové datové formáty a validační pravidla aplikovaná na sebraná data
vyžadují, aby byl kód ETL průběžně měněn a udržován. A firmy zažívaly problémy,
když přidávaly další systémy a zvětšoval se objem dat. U doma na koleně
vyrobených ETL řešení byla závažným problémem chybějící škálovatelnost.

Od koho
K výrobcům balíků systémů ETL patří společnost Microsoft, která nabízí služby
pro transformaci dat spolu se svou databází SQL Server, Oracle zahrnul některé
schopnosti ETL do své databáze a IBM nabízí komponentu DB2 Information
Integrator ke svým řešením datových skladů.
Existují také další výrobci, kteří dodávají příslušné nástroje. Patří k nim
například Informatica, Ascential Software z USA nebo kanadská společnost
Hummingbird. Software od těchto výrobců může podle Schiffa nabídnout integraci
pro širší škálu heterogenních aplikací a datových struktur.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.