DBT vs. Dataform | Mňamka #177
To, že máme v Bizztreatu rádi dbt, už víte. CTomča se o tom rozpovídal třeba v tomhle videu.
Nedávno se ale na trhu udála další zajímavá věc - do Google Cloud rodinky se přidal Dataform. A Dataform je produkt hodně podobný dbt (oba “dělaj to T v ELT”), takže jsme se rozhodli si na to trochu posvítit a oba produkty srovnat.
Co mají společného?
Tak hlavně “dělaj to T v ELT”, což znamená, že umožňují vytvořit transformační vrstvu nad vaším DWH - umí materializované tabulky, ale také umí viewčka a to tak, že ty viewčka dokáží zorchestrovat, jinými slovy vytvořit strom závislostí (dependency tree) pomocí ref funkce a sami tak vyhodnotí, ve kterém pořadí mají příkazy běžet. Na extrakci dat do svého DWH nebo posílání dat ven z DWH musíte využít jiný nástroj, “E” ani “L” se tady neřeší.
Oba produkty podporují version control, tj. gitování a v Bizztreat platí, že co nejde zagitovat, to letí z okna ven :) Kdyby to šlo, gitujeme i sami sebe.
Dále se oba produkty samo dokumentují (to zní blbě... prostě self-dokumentují), což znamená, že v cloudovém prostředí si z metadat lehce vygenerujete nebo zobrazíte dokumentaci včetně datové lineage a možnosti vyhledávat (data discovery). Oba tooly navíc umožňují napsat popisky tabulek a sloupců velmi blízko SQL kódu (dbt v yamlu vedle, Dataform v tzv. SQLX přímo nad SQL kódem) a to je prostě lepší než to (ne)psát někam do Confluence.
No a pak jsou tu data testy! Oba nástroje umí otestovat datovou kvalitu, dbt toho umí trochu víc a trochu líp (viz níže), ale i Dataform nabízí testovat tzv. assertions a proaktivně si tak hlídat datovou kvalitu. V bizztreat je to mimochodem důležitou součástí našeho DQA frameworku (mrkněte na DQA ebook). V obouch nástrojích se testy definují tam, kam píšete popisky tabulek a sloupců, všechno je zkrátka pěkně po ruce.
V čem vede dbt
Asi neexistuje projekt, kde by nesnapshotovalo. A v tomhle je dbt trochu dál než Dataform, protože má implentovanou pomalu se měnící dimenzi (to zní ještě hůř... prostě type-2 Slowly Changing Dimension). Další vychytávku, kterou zatím umí jen dbt, je možnosti si nadefinovat svoje vlastní globální testy datové kvality, které jsou 100% konfigurovatelné pro jakkouliv tabulku (je to tedy takové makro, které napíšete jednou, a pak ho můžete pouštět na jakékoliv tabulce/sloupci). No a v neposlední řadě dbt je kombinace SQL a Jinja, to znamená Pythonu a Python nemáme rádi jen my, ale i poměrně rozsáhlá komunita lidí kolem dbt.
A ještě jedna důležitá věc: dbt pustíte nad všemi nejběžnějšími DWH, u Dataform se už brzy budete muset spokojit jen s BigQuery, protože produkt bude integrován do Google Cloud platformy. Na stránkách Dataform se aktuálně dočtete: “We plan to turn down the legacy Dataform product within 3 months of integration completion. If you are an existing Dataform customer using a non-BigQuery warehouse and won’t be able to migrate over to the new product inside BigQuery then you will have 3 months to migrate to a non-Dataform solution once integration is complete.”
V čem vede Dataform
Online prostředí Dataform je velmi intuitivní a setup projektu má zmáknutý opravdu skvěle - je to doslova na 2 kliknutí - a očekáváme, že i po integraci do BigQuery to nebude o nic složitější. No a pokud jste nejen milovníci Google Cloud, ale i JavaScriptu, tak to může být zajímavá alternativa dbt.
Pricing
Cloud/Web prostředí
Dbt Cloud je zdarma pro jednoho developera, pro týmy začíná od $50 na měsíc per developer, viz. dbt pricing. Dataform je zatím zcela zdarma, viz. Dataform pricing, ale momentálně probíhá integrace do BigQuery.
CLI
My si dbt jedeme v CLI, protože ho integrujeme s Bizzflow (jazyk samotný je open source, takže zcela zdarma). Instalace je jednoduchá - poté, co mi CTomča pomohl zapnout počítač, jsem to “pip install dbt” zvládla pustit i já. Jak na instalaci můžete mrknout zde.
I Dataform můžete pouštět lokálně a integrovat, mrkněte na návod na instalaci. Místo pip zde musíte sáhnout po npm a customizaci si místo v Pythonu jedete v JavaScriptu.
Shrnutí
U nás vede dbt, protože je zkrátka dál, můžeme toho s ním více vyvádět a integrovat do Bizzflow na všech platformách. Ale i na ten Dataform v BigQuery se těšíme, to né, že ne!
Zapomněla jsem na něco? Chcete se na něco zeptat? Napište mi.
Verča
Síla dobře navržených dashboardů a KPI | Mňamka #535
V dnešní době chce být každý "data-driven" – rozhodovat se na základě dat, a ne podle pocitů. Jedním z klíčových způsobů, jak toho dosáhnout, jsou správně nastavené KPI a přehledné dashboardy. Ty poskytují jasný přehled o výkonnosti a pomáhají firmám činit rozhodnutí, která opravdu stojí na datových základech, ne na odhadech.
Klíčové ukazatele výkonnosti (KPI): Jak je správně nastavit a efektivně vyhodnotit pomocí business intelligence | Mňamka #534
Jak efektivně řídit růst a sledovat dosažení cílů? Jak klíčové ukazatele výkonnosti (KPI) pomáhají firmám zlepšovat výkon a naplňovat strategické záměry?V článku najdete příklady KPI pro oblasti jako finance, marketing, zákaznický servis, výroba, lidské zdroje a IT, včetně praktických příkladů jejich využití. Zjistěte, jak zavést a sledovat KPI, abyste získali lepší přehled o efektivitě klíčových procesů.
Datové sklady, jezera a lakehouse: Jak vybrat správnou architekturu pro správu dat? | Mňamka #533
Svět správy dat prošel rychlým vývojem, který je poháněn rostoucí potřebou zpracovávat a analyzovat obrovské množství dat v reálném čase. Firmy, které chtějí porozumět svým datům, narazily na různé architektury – datové sklady, datová jezera a nyní i tzv. lakehouse – které nabízejí různé možnosti pro ukládání a správu dat. Tento článek se zabývá těmito třemi architekturami, porovnává jejich výhody a nevýhody a podrobněji se zaměřuje na lakehouse, nejnovější inovaci, která se snaží řešit problémy z dřívějších systémů.