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

Veronika Špryslová
datový detektiv
LinkedIn

Jak datová analytika mění fotbal | Mňamka #397

Jak datová analytika mění fotbal | Mňamka #397

Datová analytika už je všudypřítomná, a to i na moderních fotbalových hřištích. Možná jste si také všimli, že ještě zhruba před 10 lety stříleli hráči napříč všemi ligami na branku z mnohem větší vzdálenosti, než je běžné dnes. Co stálo za touto změnou? No samozřejmě, že data. Fotbalové týmy sbírají obrovské množství dat a díky tomu tak už v dnešní době naprosto přesně vědí, jaká je šance na vstřelení gólu z jakékoliv pozice na hřišti. Přečtěte si článek z Nature o tom, jak data mění svět fotbalu!

Data-driven firmy v roce 2023 | Mňamka #396

Data-driven firmy v roce 2023 | Mňamka #396

Většina firem v letošním roce na cestě stát se data-driven příliš nepokročila. Například podle nedávného průzkumu agentury Forrester pouze 48 % dotázaných firem činilo rozhodnutí na bázi kvantitativní analýzy. Zbytek se tak stále ještě rozhoduje spíše podle intuice. Právě v tomto ohledu by ale v roce 2023 mohly nastat velké změny. Zvláště v časech ekonomické nejistoty je totiž naprosto klíčové činit taková rozhodnutí, která vaši firmu nasměrují na růstovou trajektorii. Podívejte se proto na 5 pragmatických kroků, které můžete učinit i vy!

Před a po – datová edice | Mňamka #395

Před a po – datová edice | Mňamka #395

Většina grafů a dashboardů začíná svůj život v celkem jednoduché a přehledné formě. Všichni se v nich tak snadno orientují a mohou se na jejich základě i rychle rozhodovat. Pak to ale začne – proces postupného nabalování. S každým dalším meetingem přicházejí nové požadavky na to, co všechno je potřeba doplnit a vylepšit. Takhle to pokračuje tak dlouho, až jednoho krásného dne koukáte na report a není vám vůbec jasné, co si z něj máte vlastně odnést. Pokud vám tohle zní povědomě, podívejte se, jak z toho ven!