Кэш
Заполнение кэша
В начале выполнения 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