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

Настройка семантического слоя dbt

Начало работы

Существует два варианта разработки проекта dbt, включая семантический слой:

  • dbt Cloud CLI — Команды MetricFlow встроены в dbt Cloud CLI под подкомандой dbt sl. Это самый простой и наиболее функциональный способ разработки кода семантического слоя dbt на данный момент. Вы можете использовать редактор по вашему выбору и выполнять команды из терминала.

  • dbt Cloud IDE — Вы можете создавать семантические модели и метрики в dbt Cloud IDE. Однако поддержка выполнения команд dbt sl пока недоступна, но активно разрабатывается. Это означает, что вы не сможете проверить ваш код, поэтому мы рекомендуем работать с Cloud CLI и локальным редактором на данный момент.

Основные команды

  • 🔍 Менее распространенная команда, которая будет полезна с семантическим слоем, это dbt parse. Она анализирует ваш проект и генерирует семантический манифест, представляющий собой описание значимых связей, описанных в вашем проекте. Этот файл загружается в dbt Cloud и используется для выполнения команд dbt sl в процессе разработки. Этот файл предоставляет MetricFlow состояние мира, из которого генерируются запросы.
  • 🧰 dbt sl query — ваш другой лучший друг, он выполнит запрос к вашему семантическому слою и вернет образец результатов. Это отлично подходит для тестирования ваших семантических моделей и метрик по мере их создания. Например, если вы создаете модель доходов, вы можете выполнить dbt sl query --metrics revenue --group-by metric_time__month, чтобы убедиться, что ежемесячный доход рассчитывается правильно.
  • 📝 Наконец, dbt sl list dimensions --metrics [metric name] выведет все доступные измерения для данной метрики. Это полезно для проверки увеличения размерности по мере вашего прогресса. Вы также можете dbt sl list другие аспекты вашего семантического слоя, выполните dbt sl list --help для полного списка опций.

Для получения дополнительной информации о доступных командах обратитесь к справочнику команд MetricFlow или используйте dbt sl --help и dbt sl [subcommand] --help в командной строке. Если вам нужно сначала настроить проект dbt, ознакомьтесь с руководствами по быстрому старту.

Вперед!

В остальной части руководства мы покажем пример кода на основе проекта Jaffle Shop, вымышленной сети ресторанов. Вы можете сами ознакомиться с кодом и попробовать его в репозитории Jaffle Shop. Так что если вы увидите, как мы рассчитываем метрики, такие как food_revenue, позже в этом руководстве, вот почему!

0