Оптимизация использования кластеров конвейеров Delta Live Tables с расширенным автомасштабированием
В этой статье описывается использование расширенного автомасштабирования для оптимизации конвейеров Delta Live Tables в Azure Databricks.
Расширенная автомасштабирование включена по умолчанию для всех новых конвейеров.
Для бессерверных конвейеров расширенная автомасштабирование всегда включена и не может быть отключена. См. статью "Настройка конвейера бессерверных динамических таблиц Delta Live Tables".
Что такое расширенное автомасштабирование?
Расширенное автоматическое масштабирование Databricks оптимизирует использование кластера путем автоматического выделения ресурсов кластера на основе тома рабочей нагрузки с минимальным воздействием на задержку обработки данных конвейеров.
Улучшенная автомасштабирование улучшает возможности автомасштабирования кластера Azure Databricks со следующими функциями:
- Улучшенная автомасштабирование реализует оптимизацию потоковых рабочих нагрузок и добавляет улучшения для повышения производительности пакетных рабочих нагрузок. Улучшенная автомасштабирование оптимизирует затраты путем добавления или удаления компьютеров при изменении рабочей нагрузки.
- Расширенное автоматическое масштабирование заранее завершает работу недостаточно используемых узлов, гарантируя отсутствие неудачных задач во время завершения работы. Существующая функция автомасштабирования кластера масштабирует узлы, только если узел простаивает.
Расширенный автомасштабирование — это режим автомасштабирования по умолчанию при создании конвейера в пользовательском интерфейсе Delta Live Tables. Вы можете включить расширенный автомасштабирование для существующих конвейеров, изменив параметры конвейера в пользовательском интерфейсе. Вы также можете включить расширенный автомасштабирование при создании или изменении конвейеров с помощью API разностных динамических таблиц.
Какие метрики используют расширенный автомасштабирование для принятия решения по масштабированию или уменьшению масштаба?
Улучшенная автомасштабирование использует две метрики для решения о масштабировании вверх или уменьшении масштаба:
- Использование слотов задач: это среднее соотношение количества слотов занятой задачи к общему количеству слотов задач, доступных в кластере.
- Размер очереди задач: это количество задач, ожидающих выполнения в слотах задач.
Включение расширенного автомасштабирования для конвейера разностных динамических таблиц
Расширенный автомасштабирование — это режим автомасштабирования по умолчанию при создании конвейера в пользовательском интерфейсе Delta Live Tables. Вы можете включить расширенный автомасштабирование для существующих конвейеров, изменив параметры конвейера в пользовательском интерфейсе. Вы также можете включить расширенный автомасштабирование при создании или изменении конвейера с помощью API разностных динамических таблиц.
Чтобы использовать расширенный автомасштабирование, выполните одно из следующих действий:
- Задайте режим кластера для расширенного автомасштабирования при создании или редактировании конвейера в пользовательском интерфейсе разностных динамических таблиц.
- Добавьте параметр в
autoscale
конфигурацию кластера конвейера и задайтеmode
для этого поля значениеENHANCED
. Сведения о настройке вычислений для конвейера Delta Live Tables.
Используйте следующие рекомендации при настройке расширенного автомасштабирования для рабочих конвейеров:
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
основе конфигурации, а задержка конвейера должна вернуться к предыдущим характеристикам задержки.
Ограничение затрат на конвейеры, использующие расширенное автомасштабирование
Примечание.
Невозможно настроить рабочие роли для бессерверных конвейеров.
Задание параметра Max worker в области вычислений конвейеров задает верхнюю границу для автомасштабирования. Сокращение числа доступных рабочих ролей может увеличить задержку для некоторых рабочих нагрузок, но предотвращает увеличение затрат на вычислительные ресурсы во время операций с интенсивным вычислением.
Databricks рекомендует настроить параметры максимальной рабочей роли , чтобы сбалансировать компромисс по задержке затрат для конкретных потребностей.
Мониторинг расширенных классических конвейеров с поддержкой автомасштабирования
Журнал событий в пользовательском интерфейсе 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 |
Кроме того, можно просматривать расширенные события автомасштабирования, напрямую запрашивая журнал событий:
- Чтобы запросить журнал событий для метрик невыполненной работы, см . статью "Мониторинг невыполненной работы данных", запрашивая журнал событий.
- Чтобы отслеживать изменение размера запросов и ответов кластера во время расширенных операций автомасштабирования, см. статью "Мониторинг расширенных событий автомасштабирования" из журнала событий для конвейеров без поддержки сервера.