Tworzenie projektu dbt

Wprowadzenie do dbt

Mike Metzger

Data Engineer

Czym jest projekt dbt

  • Zawiera komponenty do pracy z danymi w dbt

    • Konfiguracja projektu
    • Źródła i miejsca docelowe danych
    • Zapytania SQL
    • Szablony
    • Dokumentacja
  • Realizowany jako struktura folderów

struktura folderów dbt

Wprowadzenie do dbt

Jak utworzyć nowy projekt

  • Użyj polecenia dbt init
    • Prosi o nazwę projektu
    • Prosi o wybór typu bazy / hurtowni danych
  • Można skrócić do dbt init <projectname>
  • Tworzy główny folder projektu i całą wymaganą strukturę
repl:~/workspace$ dbt init
16:38:37  Running with dbt=1.8.4
Enter a name for your project (letters, digits, underscore): test_project
Which database would you like to use? [1] duckdb
Enter a number: 1
...
Wprowadzenie do dbt

Konfiguracja za pomocą profili projektu

  • Profil reprezentuje dany scenariusz wdrożenia
    • Środowisko deweloperskie
    • Staging / Testy
    • Produkcja
  • Projekt dbt może mieć wiele profili
  • Definiowany w pliku profiles.yml
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Wprowadzenie do dbt

YAML

  • Yet Another Markup Language
  • Plik tekstowy, w którym wcięcia mają znaczenie (jak w Pythonie)
  • Stosowany w wielu scenariuszach konfiguracyjnych
  • Zasady mogą być skomplikowane – głównie należy wyrównywać wpisy jak w przykładach
marketing_campaign_results:
  outputs:
    dev:
      type: duckdb
      path: dbt.duckdb
    prod:
      type: snowflake
      ...
  target: dev
Wprowadzenie do dbt

DuckDB

  • Otwartoźródłowa baza danych bez serwera
    • Podobna do sqlite
  • Zaprojektowana do analityki
  • Wektoryzowana (czyli SZYBKA)
  • Łatwa w użyciu

logo duckdb

Wprowadzenie do dbt

Czas na ćwiczenia!

Wprowadzenie do dbt

Preparing Video For Download...