Оптимизация использования кластеров конвейеров Delta Live Tables с помощью расширенного автомасштабирования

Расширенное автомасштабирование Databricks оптимизирует использование кластера, автоматически распределяя ресурсы кластера в зависимости от объема рабочей нагрузки с минимальным влиянием на задержку обработки данных в ваших конвейерах.

Улучшенная автомасштабирование улучшает функции автомасштабирования кластера Azure Databricks со следующими функциями:

  • Расширенное автомасштабирование реализует оптимизацию потоковых рабочих нагрузок и добавляет улучшения для повышения производительности пакетных рабочих нагрузок. Расширенное автоматическое масштабирование оптимизирует затраты путем добавления или удаления компьютеров при изменении рабочей нагрузки.
  • Расширенное автомасштабирование заблаговременно отключает недостаточно используемые узлы, гарантируя отсутствие сбоев во время завершения работы. Существующая функция автомасштабирования кластера масштабирует узлы, только если узел простаивает.

Расширенный режим автомасштабирования — это режим автомасштабирования по умолчанию при создании конвейера в пользовательском интерфейсе разностных динамических таблиц. Вы можете включить расширенный автомасштабирование для существующих конвейеров, изменив параметры конвейера в пользовательском интерфейсе. При создании или изменении конвейеров можно также включить расширенный автомасштабирование с помощью API разностных динамических таблиц.

Включение расширенного автомасштабирования

Примечание.

Так как вычислительные ресурсы автоматически оптимизированы для бессерверных конвейеров, параметры расширенного автомасштабирования Databricks недоступны при выборе бессерверного ( общедоступная предварительная версия) для конвейера.

Чтобы узнать о включении конвейеров DLT без сервера, обратитесь к группе учетных записей Azure Databricks.

Чтобы использовать расширенный автомасштабирование, выполните одно из следующих действий.

  • Задайте режимкластера для расширенного автомасштабирования при создании конвейера или изменении конвейера в пользовательском интерфейсе Delta Live Tables.
  • Добавьте параметр в autoscale конфигурацию кластера конвейера и задайте mode для этого поля значение ENHANCED. См. раздел "Настройка параметров вычислений".

Используйте следующие рекомендации при настройке расширенного автомасштабирования для рабочих конвейеров:

  • Min workers Оставьте параметр по умолчанию.
  • Max workers Задайте для параметра значение в зависимости от бюджета и приоритета конвейера.

В следующем примере кластер расширенного автомасштабирования настраивается минимум с 5 и максимум с 10 рабочими процессами. max_workers должно быть больше или равно min_workers.

Примечание.

  • Расширенная автомасштабирование доступна только для updates кластеров. Для кластеров используется maintenance существующая функция автомасштабирования.
  • Конфигурация autoscale имеет два режима:
    • LEGACY: используйте автомасштабирование кластера.
    • ENHANCED: использование расширенного автомасштабирования.
{
  "clusters": [
    {
      "autoscale": {
        "min_workers": 5,
        "max_workers": 10,
        "mode": "ENHANCED"
      }
    }
  ]
}

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

Мониторинг конвейеров с поддержкой расширенного автомасштабирования

Журнал событий в пользовательском интерфейсе Delta Live Tables можно использовать для мониторинга метрик расширенного автомасштабирования. События расширенного автомасштабирования имеют тип события autoscale. Ниже приведены примеры событий.

Мероприятие Сообщение
Запрос на изменение размера кластера запущен Scaling [up or down] to <y> executors from current cluster size of <x>
Запрос на изменение размера кластера выполнен успешно Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED
Запрос на изменение размера кластера частично выполнен Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED
Запрос на изменение размера кластера не удалось выполнить Achieved cluster size <x> for cluster <cluster-id> with status FAILED

Вы также можете просматривать события расширенного автомасштабирования, напрямую запрашивая журнал событий: