Кэш
Заполнение кэша
В начале выполнения dbt кэшир ует метаданные обо всех объектах во всех схемах, где могут быть материализованы ресурсы (такие как модели). По умолчанию dbt заполняет реляционный кэш информацией обо всех схемах, связанных с проектом.
Существует два способа изменить это поведение:
POPULATE_CACHE
(по умолчанию:True
): Заполнять ли кэш вообще. Чтобы полностью пропустить заполнение кэша, используйте флаг--no-populate-cache
илиDBT_POPULATE_CACHE: False
. Обратите внимание, что это не отключает кэш; пропущенные запросы к кэшу будут выполняться, и кэш будет обновляться после этого.CACHE_SELECTED_ONLY
(по умолчаниюFalse
): Ограничить ли заполнение кэша только ресурсами, выбранными в текущем запуске. Это может значительно ускорить выполнение, если вы работаете с небольшой частью большого проекта, при этом сохраняя преимущества предварительного кэширования.
Например, чтобы быстро скомпилировать модель, которая не требует метаданных базы данных или интроспективных запросов:
dbt --no-populate-cache compile --select my_model_name
Или, чтобы улучшить скорость и производительность при разработке моделей Salesforce, которые материализуются в своей собственной выделенной схеме, вы можете выбрать эти модели и передать флаг cache-selected-only
:
dbt --cache-selected-only run --select salesforce
Логирование событий реляционного кэша
Конфигурация LOG_CACHE_EVENTS
позволяет вести детализированный журнал для relational cache, которые по умолчанию отключены.
dbt --log-cache-events compile
0