Co jsou ETL systémy

ETL nástroje obecně slouží k centralizovanému zpracování dat. Bez jejich použití by celá situace mohla vypadat přesně jako na obrázku níže, kde existuje několik datových zdrojů. V případech, kdy je potřeba tyto datové zdroje kombinovat a přistupovat k celkovému datasetu, vznikají nemalé problémy.

Decentralizované zpracování dat

 

Centralizované zpracování dat, které můžeme chápat jako platformu jako službu (PaaS), můžeme znázornit takto:

Centralizované zpracování dat

 

V levé části jsou datové zdroje, které je potřeba zpracovávat, uprostřed se nachází ETL nástroj, např. Keboola, a vpravo je část, kdy už zpracovaná data posílá ETL někam dál. To celé je možné chápat jako “průtokový ohřívač”. Do ETL nástroje nejprve vstoupí data z datových zdrojů, na straně ETL proběhne jejich konsolidace a zpracováním, a všechna takto zpracovaná data postupně odcházejí ven z ETL nástroje do systémů třetích stran. Může jít o databáze, CRM, ERP, vizualizační platformy, jako je např. Tableau, Microsoft PowerBI, nebo je výstupem klidně i sešit pro Microsoft Excel.

A tak jsme se vlastně dostali k tomu, co znamená zkratka ETL. Jde o extract — transformation — load. Tedy “načti — zpracuj — pošli”.

Jak ETL systémy pracují

Schema ETL systémů

 

Jak fungují ETL systémy je poměrně jednoduché. Na začátku jsou datové zdroje, ke kterým potřebujeme přistupovat. Prostřednictvím extractorů, což jsou komponenty ETL, je možné se připojovat na tyto datové zdroje a konzumovat jejich data. Data poté, co jsou vyextrahovány, se ukládají do interní storage ETL nástroje. Tou je databázový server, např. Snowflake. Následně je možné s těmito daty pracovat. Buď prostřednictvím transformací, tedy pomocí skriptů, které mohou být napsány jak v jazyce Python, R, SQL apod., nebo je možné k těmto datům přistupovat prostředictvím “Data Apps”. To jsou víceméně transformace zapouzdřené do podoby aplikací. Tyto aplikace mohou být třetích stran, ale mohou být i interní, napsané přímo implementátorem. Na konci je potom výstup zpracovaných dat pomocí writerů, které pošlou data zase dál, třeba do vizualizačního nástroje, informačního systému, nebo do data warehousu.

Filozofie ETL systémů

 

Na trhu existuje spousta ETL nástrojů. Cloudových, ale i těch, které je možné nasadit on-premise přímo do lokální infrastrutury. Vždy jsou to ale nástroje, které významně pomáhají zpracovávat data, a bez nichž se u většiny projektů zaměřených na zpracování dat dá jen ztěží obejít. Zprístupňují data z různých datových zdrojů na jednom místě, umožňují jejich zpracování a následný výstup z ETL nástroje.

A co mají tedy ETL nástroje společného s Karmou? No přece, že fungují „průtokově“.