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

Использование потоков

Когда dbt выполняется, он создает ориентированный ациклический граф (DAG) связей между моделями. Количество потоков представляет собой максимальное количество путей через граф, над которыми dbt может работать одновременно – увеличение количества потоков может минимизировать время выполнения вашего проекта.

Например, если вы укажете threads: 1, dbt начнет строить только одну модель и завершит ее, прежде чем перейти к следующей. Указание threads: 8 означает, что dbt будет работать с до 8 моделями одновременно, не нарушая зависимостей – фактическое количество моделей, над которыми он может работать, вероятно, будет ограничено доступными путями через граф зависимостей.

Нет установленного предела максимального количества потоков, которые вы можете задать – хотя увеличение количества потоков обычно уменьшает время выполнения, есть несколько факторов, которые следует учитывать:

  • Увеличение количества потоков увеличивает нагрузку на ваш склад данных, что может повлиять на другие инструменты в вашем стеке данных. Например, если ваш BI-инструмент использует те же вычислительные ресурсы, что и dbt, их запросы могут быть поставлены в очередь во время выполнения dbt.
  • Количество одновременных запросов, которые ваша база данных позволит вам выполнять, может быть ограничивающим фактором в том, сколько моделей может активно строиться – некоторые модели могут ожидать в очереди, пока не освободится слот для запроса.

В общем, оптимальное количество потоков зависит от вашего хранилища данных и его конфигурации. Лучше всего протестировать разные значения, чтобы найти оптимальное количество потоков для вашего проекта. Мы рекомендуем начать с установки этого значения на 4.

Вы можете использовать другое количество потоков, чем значение, определенное в вашей цели, с помощью опции --threads при выполнении команды dbt.

Вы определите количество потоков в вашем файле profiles.yml (только для пользователей dbt Core), в определении задания dbt Cloud и в учетных данных разработки dbt Cloud в вашем профиле.

Связанные документы

0