Настройка вычислений для конвейера DLT
В этой статье содержатся инструкции и рекомендации по настройке пользовательских параметров вычислений для конвейеров DLT.
Бессерверные конвейеры не предоставляют параметры конфигурации вычислений. См. настройка бессерверного конвейера DLT.
Выбор политики кластера
Пользователи должны иметь разрешение на развертывание вычислительных ресурсов для настройки и обновления конвейеров DLT. Администраторы рабочей области могут настроить политики кластера для предоставления пользователям доступа к вычислительным ресурсам для DLT. См. раздел Определение ограниченийдля вычислительных ресурсов DLT.
Заметка
Политики кластера являются необязательными. Обратитесь к администратору рабочей области, если у вас отсутствуют привилегии вычислений, необходимые для DLT.
Чтобы гарантировать правильное применение значений политики кластера по умолчанию, установите для
apply_policy_default_values
значениеtrue
в конфигурациях кластера и в конфигурации вашего конвейера.{ "clusters": [ { "label": "default", "policy_id": "<policy-id>", "apply_policy_default_values": true } ] }
Настройка тегов кластера
Вы можете использовать теги кластера для мониторинга использования ваших кластеров для обработки данных. Добавьте теги кластера в пользовательский интерфейс DLT при создании или изменении конвейера или путем редактирования параметров JSON для кластеров конвейеров.
Выбор типов экземпляров для запуска конвейера
По умолчанию DLT выбирает типы экземпляров для драйверов и рабочих узлов конвейера. При необходимости можно настроить типы экземпляров.
Например, выберите типы экземпляров, чтобы повысить производительность конвейера или устранить проблемы с памятью при запуске конвейера. Типы экземпляров можно настроить при создании или редактировании конвейера с помощью REST API или пользовательского интерфейса DLT.
Чтобы настроить типы экземпляров при создании или изменении конвейера в пользовательском интерфейсе DLT:
- Нажмите кнопку "Настройки".
- В разделе Advanced параметров конвейера в раскрывающемся меню типа рабочего элемента и типа драйвера выберите типы экземпляров для конвейера.
расширенные конфигурации вычислений
Заметка
Поскольку вычислительные ресурсы полностью управляются для бессерверных DLT-конвейеров, параметры вычислений недоступны при выборе Бессерверные для конвейера.
Каждый конвейер DLT имеет два связанных кластера:
-
updates
кластер обрабатывает обновления потока данных. - Кластер
maintenance
выполняет ежедневные задачи обслуживания.
Параметры вычислений, указанные с помощью пользовательского интерфейса конфигурации конвейера рабочей области, применяются как к кластерам обновления, так и к кластерам обслуживания. Чтобы изменить эти параметры независимо, необходимо изменить конфигурацию JSON.
Конфигурация этих кластеров определяется атрибутом clusters
, указанным в параметрах конвейера.
С помощью меток кластера можно добавить параметры вычислений, которые применяются только к определенному типу кластера. При настройке кластеров конвейеров можно использовать три метки:
Заметка
Параметр метки кластера может быть опущен, если определить только одну конфигурацию кластера. Метка default
применяется к конфигурациям кластера, если не указан параметр метки. Параметр метки кластера требуется только в том случае, если необходимо настроить параметры для разных типов кластеров.
- Метка
default
определяет параметры вычислений для кластеровupdates
иmaintenance
. Применение одинаковых параметров к обоим кластерам повышает надежность выполнения операций обслуживания, обеспечивая применение необходимых конфигураций, таких как учетные данные для доступа к хранилищу данных, к каждому из кластеров. - Метка
maintenance
определяет параметры вычислений, которые применяются только к кластеруmaintenance
. Можно также использовать меткуmaintenance
для переопределения параметров, настроенных меткойdefault
. - Метка
updates
определяет параметры, которые применяются только к кластеруupdates
. Используйте его для настройки параметров, которые не должны применяться к кластеруmaintenance
.
Параметры, определенные с помощью меток default
и updates
, объединяются для создания окончательной конфигурации для кластера updates
. Если один и тот же параметр определен с помощью default
и updates
меток, параметр, определенный с помощью метки updates
, переопределяет параметр, определенный с помощью метки default
.
В следующем примере определяется параметр конфигурации Spark, добавляемый только в конфигурацию для кластера updates
:
{
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
},
{
"label": "updates",
"spark_conf": {
"key": "value"
}
}
]
}
DLT имеет аналогичные параметры для параметров кластера, как и другие вычисления в Azure Databricks. Как и другие параметры конвейера, можно изменить конфигурацию JSON для кластеров, чтобы указать параметры, которые отсутствуют в пользовательском интерфейсе. См. Вычислить.
Заметка
Так как среда выполнения DLT управляет жизненным циклом кластеров конвейеров и запускает пользовательскую версию Databricks Runtime, вы не можете вручную задать некоторые параметры кластера в конфигурации конвейера, например версию Spark или имена кластеров. См. атрибуты кластера , которые нельзя настроить пользователем.
Настройка типов экземпляров для кластеров обновления и обслуживания
Чтобы настроить типы экземпляров в параметрах JSON конвейера, нажмите кнопку JSON и введите конфигурации типов экземпляра в конфигурации кластера:
Заметка
Чтобы избежать назначения ненужных ресурсов кластеру maintenance
, в этом примере используется метка updates
для задания типов экземпляров только для кластера updates
. Чтобы назначить типы экземпляров кластерам updates
и maintenance
, можете использовать метку default
или опустите параметр метки. Метка default
применяется к конфигурациям кластера конвейера, если не указан параметр метки. См. расширенные конфигурации вычислений.
{
"clusters": [
{
"label": "updates",
"node_type_id": "Standard_D12_v2",
"driver_node_type_id": "Standard_D3_v2",
"...": "..."
}
]
}
Задержка завершения работы вычислений
Для управления поведением завершения работы кластера можно использовать режим разработки или рабочей среды или использовать параметр pipelines.clusterShutdown.delay
в конфигурации конвейера. В следующем примере значение pipelines.clusterShutdown.delay
равно 60 секундам:
{
"configuration": {
"pipelines.clusterShutdown.delay": "60s"
}
}
Если режим production
включен, то значение по умолчанию для pipelines.clusterShutdown.delay
становится 0 seconds
. Если режим development
включен, установлено значение по умолчанию 2 hours
.
Заметка
Так как кластер DLT автоматически завершает работу, если он не используется, ссылка на политику кластера, которая задает autotermination_minutes
в конфигурации кластера, приводит к ошибке.
Создание одного кластера узлов
Если в параметрах кластера задано значение num_workers
0, кластер создается в качестве кластера с одним узлом. Настройка кластера автомасштабирования и задание min_workers
до значения 0 и max_workers
до 0 создает кластер из одного узла.
Если вы настраиваете кластер автомасштабирования и задаете только min_workers
значение 0, кластер не создается в качестве одного кластера узлов. Кластер всегда имеет по крайней мере одного активного рабочего до завершения.
Пример конфигурации кластера для создания кластера из одного узла в DLT.
{
"clusters": [
{
"num_workers": 0
}
]
}