Nový způsob transformace dat: Co to je dbt | Mňamka #129

Máme technologie, které milujeme, máme je odzkoušené a umíme je. To ale rozhodně neznamená, že stále netestujeme nové. A tak jsme narazili na dbt (Data Build Tool) - open source, který nás hodně baví.

Než si řekneme víc, pojďme o krok zpět. Máme data ve zdrojových systémech a ve finále se na ně potřebujeme koukat třeba v nějakém vizualizačním nástroji. Ale než se podíváme na pěkný grafíky a rozjedeme naplno business intelligence, musíme ujít ještě dlouhou cestu (který datový analytik by neznal, že...). No a ta cesta je zjednodušeně v zásadě dvojí. Buď si data vezmeme ze zdrojového systému (extract), cestou v nich uklidíme  (transform) a upravené je natáhneme do cíle (třeba cílový data warehouse) = ETL (na to se dá využít například nástroj Keboola nebo si to můžeme postavit na cloudových službách), nebo je ze zdrojového systému vytáhneme tak jak jsou a ten úklid děláme až v cíli, plus často až když je potřeba = ELT.

Co to je dbt?

Je to nástroj, který se v ELT stará o to “T”. Základem je projekt, který se konfiguruje sadou YAML souborů a SQL souborů s makry.
 

Zdroj obrázku: https://blog.getdbt.com/what--exactly--is-dbt-/

V čem je jeho kouzlo?


Tím, že dbt podporuje makra v SQL spojuje silu skriptovacího jazyka Python a SQL. Umožňuje používat cykly pro generování SQL, takže minimalizuje kopírování kóduAutomatické testování - stačí popsat, jak mají vypadat data, která vystupují z transformace, a dbt se postará o to, že to tak fakt je. 
 

Prostě kouzlo dbt je v tom, že k tomu “T” přistupuje tak, že se snaží usnadňovat věci, který jsou často třeba a je nutný je řešit opakováním kódu, případně kódem, kterej je náchylnej k chybám. V případě, že se něco změní v datech, transformace s dbt se dají napsat tak, že to dbt buď pozná a řekne, že je něco špatně, nebo na to bude připravený a zařídí, že se nestane nic špatného.

A mimojiné - je to opensource s velmi snadnou instalací. Správa kódu v gitu, která podporuje CI/CD principy a spolupráci týmu na projektu. Dá se integrovat do existující pipeline, de facto poběží všude, kde běží Python.

Za nás je to pecka. Chcete vědět víc? Mrkněte výše na Tomovo video. 

Zapomněla jsem na něco? Chcete se na něco zeptat? Napište mi. 

Eva

Eva Hankusová
detektiv nových příležitostí
LinkedIn

Seznamte se s Kats - jednotným kontaktním místem pro analýzu časových řad | Mňamka #203

Seznamte se s Kats - jednotným kontaktním místem pro analýzu časových řad | Mňamka #203

Pojďme se podívat na Kats – novou knihovnu v Pythonu pro analýzu časových řad! Kats je elegantně použitelný framework pro obecnou analýzu časových řad, včetně předpovědí nebo vícerozměrné analýzy a extrakce/vložení funkcí. Poskytuje klasické i pokročilé techniky pro modelování dat časových řad!

Jak si přidat vlastní KPIs do Airflow | Mňamka #202

Jak si přidat vlastní KPIs do Airflow | Mňamka #202

Airflow nám umožňuje programově vytvářet, plánovat a následně sledovat workflow. Standardní UI v Airflow nám umožňuje zobrazit pipelines a filtry. Jenže.. jak se zvyšuje počet pipelines, stává se mnohem složitější vyfiltrovat to, co potřebujeme. Jak si přidat vlastní pohledy/filtry na vaše DAGs v Airflow? Podívejte se, jak na to!

Jak využít Pohodu (a jiné datové zdroje) v BI? | Mňamka #201

Jak využít Pohodu (a jiné datové zdroje) v BI? | Mňamka #201

Vědět, v jaké je firma finanční kondici a kam pluje je jedna z klíčových věcí pro její správné kormidlování. Jenže jak to dát všechno dohromady? Jak využít všechny ty datové zdroje, které máme k dispozici? Potřebujete mít všechny finanční pohledy aktuální pár minut po zaúčtování dokladu? Pojďme se na to podívat krok za krokem – jen namátkově vytvoření mappingů, očištění dat, datový model a na závěr už chybí jen pár vymazlených dashboardů!