Jde dohromady Dbt a Snowflake? Jasně na pohodu a pokud to ještě zabalíte do nějakého ETL/orchestračního nástroje jako například Keboola (cloud) nebo Mage.ai (onprem) tak máte slušnou data mlátičku. Dnes už většina ETL frameworků (alespoň těch lepších) s dbt počítá.
Lokální konfigurace Dbt a Snowflake
V tomto tutoriálu počítáme s tím, že dbt máme lokálně a konfigurujeme ho na Snowflake databázi. Postup se skládá s několika kroků
Krok 1 – Instalace dbt-core a snowflake adaptéru – příkazem “pip install dbt-snowflake“. Tím dojde k instalaci dbt-core a snowflake adaptéru, který je potřebný pro komunikaci s databází.
Krok 2 – Vytvoření dbt projektu – máme 2 možnosti, bud vytvoříme prázdný projekt nebo už nějaký máme v gitu
- Prázdného – vlezu si v terminálu do umístění kde chci mít projekt a spustím příkaz “dbt init”.
- Existujícího – provedete git clone vašeho projektu z existujícího git Dbt repozitáře
V případě vytvoření nového projeku se nás to poté zeptá na název projektu a adaptér (vybereme snowflake). Vytvoří se nám nový dbt projekt.
Krok 3 – Konfigurace profiles.yml a dbt_project.yml souboru – dokumentaci k tomu, jak má vypadat konfigurace v profiles.yml najdete zde. Nebo si upravte template níže (vyplňte vaše údaje).
Krok 4 – test konfigurace přes “dbt debug” dopadl okej a vidíme, že byly splněny všechny testy.
Krok 5 – spuštění dbt přes “dbt run” a kontrola dat přímo ve Snowflake. Zpracují se 2 defaultní objekty (my_first_dbt_model.sql a my_second_dbt_model.sql)
Data byla úspěšně doručena do Snowflake databáze DBT_DATABASE