Поделиться через


Инициация заданий при получении новых файлов

Триггеры прибытия файлов можно использовать для запуска задания Azure Databricks при поступлении новых файлов в внешнее расположение, например Amazon S3, хранилище Azure или Google Cloud Storage. Эту функцию можно использовать, если запланированные задания неэффективны из-за нерегулярного поступления новых данных.

Триггеры прибытия файлов делают все возможное, чтобы проверить наличие новых файлов каждую минуту, хотя это может повлиять на производительность базового облачного хранилища. Триггеры прибытия файлов не влечет за собой дополнительные затраты, отличные от затрат поставщика облачных служб, связанных с перечислением файлов в расположении хранилища.

Триггер прибытия файла можно настроить для мониторинга корневого каталога Unity Catalog внешнего хранилища или тома либо подпути внешнего хранилища или тома. Например, для корневого /Volumes/mycatalog/myschema/myvolume/тома Unity Catalog ниже приведены допустимые пути для триггера прибытия файла:

/Volumes/mycatalog/myschema/myvolume/
/Volumes/mycatalog/myschema/myvolume/mydirectory/

Триггер прибытия файла рекурсивно проверяет наличие новых файлов во всех подкаталогах настроенного расположения. Например, если вы создадите триггер прибытия файла для расположения /Volumes/mycatalog/myschema/myvolume/mydirectory/ , а в этом расположении есть следующие подкаталоги:

/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirA
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirB
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirC/subdirD

Триггер проверяет наличие новых файлов в mydirectory, subdirA, subdirB, subdirCи subdirC/subdirD.

Требования

Для использования триггеров прибытия файла необходимо следующее:

Ограничения

  • Запускается только новый триггер файлов. Перезапись существующего файла с тем же именем не запускает выполнение.
  • С помощью триггера прибытия файла в рабочую область Azure Databricks можно настроить не более пятидесяти заданий.
  • Расположение хранилища, настроенное для триггера прибытия файла, может содержать только до 10 000 файлов. Расположения с большими файлами не могут отслеживаться для получения новых поступлений файлов. Если настроенное расположение хранилища является подпатом к Unity Catalog внешнему расположению или тому, limit файла 10 000 применяется к подпутью, а не к корневому каталогу хранилища. Например, корневой каталог расположения хранилища может содержать более 10 000 файлов в подкаталогах, но настроенный подкаталог не должен превышать вместимость в 10 000 файлов limit.
  • Путь, используемый для триггера прибытия файла, не должен содержать внешних tables или управляемых местоположений catalogs и схем.
  • Путь, используемый для триггера прибытия файла, не может содержать подстановочные знаки, например * или ?.

Добавление триггера прибытия файла

Чтобы добавить триггер прибытия файла в задание:

  1. На боковой панели щелкните "Рабочие процессы".
  2. На вкладке Jobs, в Namecolumn, щелкните по имени задания.
  3. На панели сведений о задании справа нажмите кнопку "Добавить триггер".
  4. Втипа триггера .
  5. В расположении хранилищавведите URL-адрес корня или подпути Catalog внешнего расположения Unity либо корня или подпути тома Unity Catalog для мониторинга.
  6. (Необязательно) Настройка дополнительных параметров:
    • Минимальное время между триггерами в секундах: минимальное время ожидания запуска после завершения предыдущего выполнения. Файлы, поступающие в этот период, активируют запуск только после истечения срока ожидания. Используйте этот параметр для управления частотой создания запуска.
    • Подождите после последнего изменения в секундах: время ожидания запуска после прибытия файла. Другой прибытие файла в этот период сбрасывает таймер. Этот параметр можно использовать при поступлении файлов в пакеты, а весь пакет должен обрабатываться после поступления всех файлов.
  7. Чтобы проверить конфигурацию, нажмите кнопку "Проверить подключение".
  8. Нажмите кнопку Сохранить.

Получение уведомлений о неудавшихся попытках триггеров "При получении файла"

Чтобы получать оповещения, если триггеру "При получении файла" не удается выполнить оценку, настройте уведомления по электронной почте или системные уведомления о сбое задания. См. , добавьте уведомления для задания.