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

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

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

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

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

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

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

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

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

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

select ...

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

Нашли ошибку?

0
Loading