Перейти к основному содержимому

Настройка материализаций

Настройка материализаций

Выбор материализации так же прост, как и установка любой другой конфигурации в dbt. Сначала мы рассмотрим, как выбрать материализации для отдельных моделей, а затем более мощные способы настройки материализаций для целых папок моделей.

Настройка таблиц и представлений

Давайте посмотрим, как мы можем использовать таблицы и представления для начала работы с материализациями:

  • ⚙️ Мы можем настроить материализацию отдельной модели, используя Jinja-блок config и передав в него аргумент materialized. Это указывает dbt, какую материализацию использовать.
  • 🚰 Конкретные детали того, что выполняется, зависят от какого адаптера вы используете, но конечные результаты будут эквивалентны.
  • 😌 Это один из многих ценных аспектов dbt: он позволяет нам использовать декларативный подход, указывая результат, который мы хотим получить в нашем коде, а не конкретные шаги для его достижения (последнее является императивным подходом, если вы хотите углубиться в компьютерные науки 🤓).
  • 🔍 В приведенном ниже случае мы хотим создать SQL представление и можем задекларировать это в одной строке кода. Обратите внимание, что python-модели пока не поддерживают материализацию в виде представлений.
    {{
config(
materialized='view'
)
}}

select ...
к сведению

🐍 Не все адаптеры пока поддерживают python, проверьте документацию здесь, чтобы быть уверенным, прежде чем тратить время на написание python-моделей.

  • Настройка модели для материализации в виде table проста и возможна как для SQL, так и для python моделей.
{{
config(
materialized='table'
)
}}

select ...

Попробуйте некоторые из этих примеров!

0