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

Актуальность источников

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

Источники данных в dbt CloudИсточники данных в dbt Cloud

Включение снимков актуальности источников

dbt build не включает проверки актуальности источников при построении и тестировании ресурсов в вашем DAG. Вместо этого вы можете использовать один из следующих распространенных шаблонов для определения задач:

Выбор актуальности источниковВыбор актуальности источников

Чтобы включить снимки актуальности источников, сначала убедитесь, что ваши источники настроены для снимка информации об актуальности. Вы можете добавить актуальность источников в список команд на этапах выполнения задачи или включить флажок. Однако вы можете ожидать разные результаты при настройке задачи, выбрав флажок Run source freshness по сравнению с добавлением команды в этапы выполнения.

Рассмотрите следующие варианты и результаты:

ВариантыРезультаты
Выбор флажка Флажок Run source freshness в ваших Execution Settings запустит dbt source freshness как первый шаг в вашей задаче и не прервет последующие шаги, если он завершится неудачей. Если вы хотите, чтобы ваша задача была посвящена исключительно проверкам актуальности, вам все равно нужно включить хотя бы один фиктивный шаг, например, dbt compile.
Добавить как этап выполненияДобавьте команду dbt source freshness в задачу в любом месте вашего списка этапов выполнения. Однако, если ваши исходные данные устарели — этот шаг "провалится", и последующие шаги не будут выполнены. dbt Cloud отправит уведомления по электронной почте (если настроено) на основе конечного состояния этого шага.

Вы можете создать новую задачу для снимка актуальности источников.

Если вы не хотите, чтобы ваши модели запускались, если ваши исходные данные устарели, то может быть хорошей идеей запустить dbt source freshness как первый шаг в вашей задаче. В противном случае мы рекомендуем добавлять dbt source freshness как последний шаг в задаче или создавать отдельную задачу только для этой задачи.
Добавление шага для снимка актуальности источниковДобавление шага для снимка актуальности источников

Частота снимков актуальности источников

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

SLAЧастота снимков
1 час30 минут
1 день12 часов
1 неделяОколо одного раза в день

Дополнительное чтение

  • Обратитесь к Артефактам для получения дополнительной информации о том, как создавать артефакты dbt Cloud, делиться ссылками на последнюю документацию и делиться отчетами об актуальности источников с вашей командой.
  • Актуальность источников для Snowflake рассчитывается с использованием столбца LAST_ALTERED. Прочтите о ограничениях в конфигурациях Snowflake.
0