Справочник по конфигурации вычислительных систем
Примечание.
Структура этой статьи предполагает, что вы используете простой интерфейс вычислений. Общие сведения об обновлениях простых форм см. в статье Использование простой формы для управления вычислительными.
В этой статье описываются параметры конфигурации, доступные при создании нового вычислительного ресурса всех целей или заданий. Большинство пользователей создают вычислительные ресурсы с помощью назначенных политик, что ограничивает настраиваемые параметры. Если в пользовательском интерфейсе не отображается определенный параметр, это связано с тем, что выбранная политика не позволяет настраивать этот параметр.
Конфигурации и средства управления, описанные в этой статье, относятся как к универсальным, так и к вычислительным ресурсам для заданий. Дополнительные сведения о настройке вычислений заданий см. в разделе "Настройка вычислений для заданий".
Создание нового вычислительного ресурса для всех целей
Чтобы создать новый вычислительный ресурс для всех целей, выполните приведенные действия.
- На боковой панели рабочей области щелкните " Вычисления".
- Нажмите кнопку "Создать вычисления ".
- Настройте вычислительный ресурс.
- Нажмите кнопку Создать.
Новый вычислительный ресурс автоматически запустится и будет готов к использованию в ближайшее время.
политика вычислений
Политики — это набор правил, используемых для ограничения параметров конфигурации, доступных пользователям при создании вычислительных ресурсов. Если у пользователя нет права на создание неограниченного кластера, они могут создавать вычислительные ресурсы только с помощью предоставленных политик.
Чтобы создать вычислительные ресурсы в соответствии с политикой, выберите политику в раскрывающемся меню "Политика ".
По умолчанию все пользователи имеют доступ к политике личных вычислений , позволяя им создавать вычислительные ресурсы с одним компьютером. Если вам нужен доступ к персональным вычислениям или любым дополнительным политикам, обратитесь к администратору рабочей области.
Параметры производительности
Следующие параметры отображаются в разделе производительность интерфейса вычислений простой формы:
- Версии Databricks Runtime
- Используйте ускорение фотонов
- Тип рабочего узла
- Одноузловой вычислительный
- Включить автомасштабирование
- дополнительные параметры производительности
Версии Databricks Runtime
Databricks Runtime — это набор основных компонентов, которые выполняются в ваших вычислительных средах. Выберите среду выполнения с помощью раскрывающегося списка Databricks Runtime Version. Для получения сведений о конкретных версиях Databricks Runtime см. заметки о версиях и совместимости Databricks Runtime. Все версии включают Apache Spark. В Databricks рекомендуется следующее:
- Для всех целевых вычислений используйте самую последнюю версию, чтобы обеспечить последнюю оптимизацию и самую актуальную совместимость между кодом и предварительно загруженными пакетами.
- Для вычисления операционных задач рекомендуется использовать версию среды выполнения Databricks с длительной поддержкой (LTS). Использование версии LTS обеспечит отсутствие проблем совместимости и может тщательно протестировать рабочую нагрузку перед обновлением.
- Для случаев использования в науке о данных и машинном обучении рассмотрите версию Databricks Runtime ML.
Использование ускорения фотона
Photon включен по умолчанию для вычислительных операций, работающих на основе Databricks Runtime 9.1 LTS и выше.
Чтобы включить или отключить ускорение Фотона, установите флажок "Использовать ускорение фотона ". Дополнительные сведения о Фотоне см. в статье "Что такое Photon?".
тип рабочего узла
Вычислительный ресурс состоит из одного узла драйвера и нуля или нескольких рабочих узлов. Можно выбрать отдельные типы экземпляров поставщика облачных служб для узлов драйверов и рабочих узлов, хотя по умолчанию узел драйвера использует тот же тип экземпляра, что и рабочий узел. Параметр узла драйвера находится под разделом Advanced performance.
Различные семейства типов экземпляров подходят для различных вариантов использования, таких как рабочие нагрузки, потребляющие большой объем памяти или вычислительных ресурсов. Вы также можете выбрать пул для использования в качестве рабочего узла или узла драйвера.
Внимание
Не используйте пул с точечными экземплярами в качестве типа драйвера. Выберите тип драйвера по запросу, чтобы предотвратить восстановление драйвера. См. статью "Подключение к пулам".
В вычислительных ресурсах с несколькими узлами рабочие узлы запускают исполнителя Spark и другие службы, необходимые для правильного функционирования вычислительного ресурса. При распределении рабочей нагрузки с помощью Spark вся распределенная обработка выполняется на рабочих узлах. Azure Databricks запускает один исполнитель на каждый рабочий узел. Поэтому термины исполнителя и рабочей роли используются взаимозаменяемо в контексте архитектуры Databricks.
Совет
Для выполнения задания Spark требуется по меньшей мере один рабочий узел. Если вычислительный ресурс не имеет рабочих, можно выполнять любые команды, кроме команд Spark, на узле драйвера, но команды Spark будут завершаться с ошибкой.
IP-адреса рабочего узла
Azure Databricks запускает рабочие узлы с двумя частными IP-адресами. Основной частный IP-адрес узла содержит внутренний трафик Azure Databricks. Вторичный частный IP-адрес используется контейнером Spark для взаимодействия внутри кластера. Эта модель позволяет Azure Databricks обеспечить изоляцию между несколькими вычислительными ресурсами в одной рабочей области.
Типы экземпляров GPU
Для вычислительных задач, требующих высокой производительности, таких как те, которые связаны с глубоким обучением, Azure Databricks поддерживает вычислительные ресурсы, ускоряемые с помощью единиц обработки графики (GPU). Дополнительные сведения см. в разделе вычислений с поддержкой GPU.
Виртуальные машины конфиденциальных вычислений Azure
Типы виртуальных машин конфиденциальных вычислений Azure предотвращают несанкционированный доступ к данным во время его использования, включая оператора облака. Этот тип виртуальной машины подходит для строго регулируемых отраслей и регионов, а также предприятий с конфиденциальными данными в облаке. Дополнительные сведения о конфиденциальных вычислениях Azure см. в статье о конфиденциальных вычислениях Azure.
Чтобы запустить рабочие нагрузки с помощью виртуальных машин конфиденциальных вычислений Azure, выберите из типов виртуальных машин серии DC или EC в раскрывающемся списке рабочих и драйверов. Смотрите параметры конфиденциальной виртуальной машины Azure.
вычисление с одним узлом
Флажок «Один узел» позволяет создать вычислительный ресурс на одном узле.
Вычисления с одним узлом предназначены для заданий, использующих небольшие объемы данных или нераспределенные рабочие нагрузки, такие как библиотеки машинного обучения с одним узлом. Вычислительные ресурсы с несколькими узлами следует использовать для более крупных заданий с распределенными рабочими нагрузками.
Свойства одного узла
Вычислительный ресурс одного узла имеет следующие свойства:
- Запускает Spark локально.
- Драйвер выступает как в качестве главного, так и рабочего, без рабочих узлов.
- Создает один поток исполнителя на каждое логическое ядро в вычислительном ресурсе, за исключением одного ядра, зарезервированного для драйвера.
- Сохраняет все
stderr
,stdout
иlog4j
выходные данные журналов в журнале драйвера. - Невозможно преобразовать в вычислительный ресурс с несколькими узлами.
Выбор одного или нескольких узлов
Рассмотрим вариант использования при выборе между вычислительными ресурсами с одним или несколькими узлами:
Обработка крупномасштабных данных исчерпает ресурсы на одном вычислительном ресурсе узла. Для этих рабочих нагрузок Databricks рекомендует использовать вычислительные ресурсы с несколькими узлами.
Вычислительные ресурсы с одним узлом не предназначены для общего доступа. Чтобы избежать конфликтов ресурсов, Databricks рекомендует использовать вычислительный ресурс с несколькими узлами при совместном использовании вычислительных ресурсов.
Вычислительный ресурс с несколькими узлами нельзя масштабировать до 0 работников. Вместо этого используйте вычислительные ресурсы с одним узлом.
Вычисление с одним узлом несовместимо с изоляцией процесса.
Планирование GPU не включено на одном вычислительном узле.
При вычислении с одним узлом Spark не может считывать файлы Parquet с помощью столбца UDT. В результате появляется следующее сообщение об ошибке:
The Spark driver has stopped unexpectedly and is restarting. Your notebook will be automatically reattached.
Чтобы обойти эту проблему, отключите встроенный модуль чтения Parquet.
spark.conf.set("spark.databricks.io.parquet.nativeReader.enabled", False)
Включение автомасштабирования
Когда включено автоматическое масштабирование, можно указать минимальное и максимальное количество рабочих узлов для вычислительного ресурса. Затем Databricks выбирает соответствующее количество рабочих ролей, необходимых для выполнения задания.
Чтобы задать минимальное и максимальное количество рабочих, в пределах которого будет выполняться автомасштабирование, используйте поля Min и Max рядом с раскрывающимся списком тип рабочих.
Если автомасштабирование не включено, необходимо ввести фиксированное число рабочих в поле "Рабочие" рядом с выпадающим меню "Тип рабочих".
Примечание.
При запуске вычислительного ресурса на странице сведений о вычислениях отображается количество выделенных рабочих ролей. Можно сравнить число выделенных рабочих ролей с конфигурацией рабочей роли и внести необходимые изменения.
Преимущества автомасштабирования
При автомасштабировании Azure Databricks динамически перераспределяет рабочие роли с учетом характеристик конкретного задания. Некоторые части конвейера могут требовать больше вычислительных ресурсов, чем другие, и Databricks автоматически добавляет дополнительные рабочие узлы на данных этапах задания (и удаляет их, когда они больше не требуются).
Автоматическое масштабирование упрощает высокую загрузку, так как не требуется подготавливать вычислительные ресурсы для сопоставления рабочей нагрузки. Это относится, в частности, к рабочим нагрузкам, требования к которым изменяются с течением времени (например, исследование набора данных в течение дня), однако это также может относиться и к короткой одноразовой рабочей нагрузке с неизвестными требованиями к подготовке. Таким образом, автомасштабирование предоставляет два преимущества:
- Рабочие нагрузки могут выполняться быстрее по сравнению с недоукомплектованным вычислительным ресурсом фиксированного размера.
- Автоматическое масштабирование может снизить общие затраты по сравнению со статическим вычислительным ресурсом.
В зависимости от постоянного размера вычислительного ресурса и рабочей нагрузки автоматическое масштабирование обеспечивает одно или оба этих преимущества одновременно. Мощность вычислений может быть ниже минимального количества рабочих узлов, выбранных при отключении экземпляров поставщиком облачных услуг. В этом случае Azure Databricks постоянно предпринимает попытки повторной инициализации экземпляров для сохранения минимального числа рабочих ролей.
Примечание.
Автомасштабирование недоступно для заданий spark-submit
.
Примечание.
Автоматическое масштабирование вычислений имеет ограничения, ограничивающие размер кластера для структурированных рабочих нагрузок потоковой передачи. Databricks рекомендует использовать DLT с расширенным автомасштабированием для потоковых рабочих нагрузок. См. раздел Оптимизация использования кластеров потоков DLT с улучшенным автомасштабированием.
Как ведет себя автомасштабирование
Рабочая область плана Premium использует оптимизированное автомасштабирование. Рабочие области на стандартном тарифном плане используют стандартное автомасштабирование.
Оптимизированное автомасштабирование имеет следующие характеристики:
- Увеличение масштаба с минимального до максимального за два этапа.
- Может уменьшить масштаб, даже если ресурс вычислений не бездействует, анализируя состояние временного файла.
- Уменьшение масштаба на основе процента текущих узлов.
- При выполнении задания вычислительные ресурсы уменьшаются, если они недоиспользуются в течение последних 40 секунд.
- На универсальных вычислительных платформах происходит уменьшение масштаба, если вычислительный ресурс не используется в течение последних 150 секунд.
- Свойство
spark.databricks.aggressiveWindowDownS
конфигурации Spark указывает в секундах частоту принятия решений по уменьшению масштаба вычислений. Увеличение значения приводит к замедлению масштабирования вычислений. Максимальное значение — 600.
В рабочих областях стандартного плана используется стандартное автомасштабирование. Стандартное автомасштабирование имеет следующие характеристики:
- Начинается с добавления 8 узлов. Затем масштабируется экспоненциально, принимая столько шагов, сколько требуется для достижения максимальной величины.
- Выполняется уменьшение масштаба, если 90% узлов не занято в течение 10 минут, и вычисление неактивно в течение не менее 30 секунд.
- Экспоненциально уменьшается, начиная с 1 узла.
Автомасштабирование ресурсов с использованием пулов
Если вы подключаете вычислительный ресурс к пулу, рассмотрите следующее:
- Убедитесь, что запрошенный размер вычислительных ресурсов меньше или равен минимальному количеству экземпляров простоя в пуле. Если это больше, время запуска вычислений будет эквивалентно вычислениям, которые не используют пул.
- Убедитесь, что максимальный размер вычислительных ресурсов меньше или равен максимальной емкости пула. Если это больше, создание вычислительного ресурса провалится.
Пример автомасштабирования
При перенастройке статического вычислительного ресурса для автомасштабирования Azure Databricks немедленно изменяет размер вычислительного ресурса в пределах минимальной и максимальной границы, а затем запускает автомасштабирование. Например, в следующей таблице показано, что происходит с вычислительным ресурсом с определенным начальным размером при перенастройке вычислительного ресурса для автомасштабирования между 5 и 10 узлами.
Начальный размер | Размер после изменения настройки |
---|---|
6 | 6 |
12 | 10 |
3 | 5 |
Расширенные параметры производительности
Следующий параметр появляется в разделе Advanced performance в простом интерфейсе вычислений форм.
экземпляры spot
Можно указать, следует ли использовать спот-экземпляры, установив флажок Использовать спот-экземпляр в разделе Расширенная производительность. См. цены наAWS.
спотовые экземпляры
Чтобы сэкономить средства, можно использовать экземпляры точечных виртуальных машин, которые также называются точечными виртуальными машинами Azure, установив флажок Экземпляры точечных виртуальных машин.
Первый инстанс всегда будет предоставляться по запросу (узел драйвера всегда предоставляется по запросу), и последующие инстансы будут спот-инстансами.
Если экземпляры будут вытеснены из-за недоступности, Azure Databricks попытается приобрести новые спотовые экземпляры для замены вытеснённых экземпляров. Если невозможно получить точечные экземпляры, развертываются экземпляры по запросу для замены выселенных экземпляров. Это восстановление размещения по запросу поддерживается только для локальных экземпляров, которые были полностью приобретены и запущены. Экземпляры Spot, которые терпят неудачу во время установки, не заменяются автоматически.
Кроме того, при добавлении новых узлов в существующие вычислительные ресурсы Azure Databricks пытается получить точечные экземпляры для этих узлов.
Автоматическое завершение
Вы можете настроить автоматическое завершение вычислений в разделе Advanced performance. Во время создания вычислений укажите период бездействия в минутах, после которого требуется завершить работу вычислительного ресурса.
Если разница между текущим временем и последней командой, выполняемой на вычислительном ресурсе, превышает указанный период бездействия, Azure Databricks автоматически завершает вычисление. Ресурс Для получения дополнительных сведений о завершении вычислений см. раздел "Завершение вычисления".
Тип драйвера
В разделе "Расширенная производительность" можно выбрать тип драйвера. Узел драйвера сохраняет сведения о состоянии всех записных книжек, подключенных к вычислительному ресурсу. Узел драйвера также поддерживает SparkContext, интерпретирует все команды, выполняемые из блокнота или библиотеки на вычислительном ресурсе, и запускает управляющий процесс Apache Spark, который координирует работу с исполнителями Spark.
Значение типа узла драйвера по умолчанию совпадает с типом рабочего узла. Если вы планируете collect()
большой объем данных от исполнителей Spark и затем анализировать их в блокноте, можно выбрать тип узла драйвера большего размера с увеличенным объемом памяти.
Совет
Учитывая, что узел драйвера хранит все сведения о состоянии подключенных записных книжек, не забудьте отключить неиспользуемые записные книжки от узла драйвера.
Теги
Теги позволяют легко отслеживать затраты вычислительных ресурсов, используемых различными группами в организации. Укажите теги в качестве пар "ключ-значение" при создании вычислений, а Azure Databricks применяет эти теги к облачным ресурсам, таким как виртуальные машины и тома дисков, а также отчеты об использовании DBU.
Для вычислений, запускаемых из пулов, пользовательские теги применяются только к отчетам об использовании DBU и не распространяется на облачные ресурсы.
Для получения подробных сведений о том, как взаимодействуют типы тегов пула и вычислительных тегов, см. в статье Использование атрибутов с использованием тегов
Чтобы добавить теги в вычислительный ресурс, выполните приведенные далее действия.
- В разделе "Теги" добавьте пару "ключ-значение" для каждого пользовательского тега.
- Нажмите кнопку Добавить.
Дополнительные параметры
Следующие параметры отображаются в разделе Advanced пользовательского интерфейса вычислений простой формы:
- Режимы доступа
- Включение автоматического масштабирования локального хранилища
- шифрование локального диска
- Конфигурация Spark
- доступ SSH к вычислительным ресурсам
- переменные среды
- вычисление доставки журналов
Режимы доступа
Режим доступа — это функция безопасности, которая определяет, кто может использовать вычислительный ресурс и данные, к которым они могут получить доступ с помощью вычислительного ресурса. Каждый вычислительный ресурс в Azure Databricks имеет режим доступа. Параметры режима доступа находятся в расширенном разделе пользовательского интерфейса вычислений простой формы.
Выбор режима доступа по умолчанию — это Авто, то есть режим доступа автоматически выбирается на основе выбранной среды выполнения Databricks. Среды выполнения машинного обучения и Databricks Runtimes версии ниже 14.3 по умолчанию используют выделенный режим, в противном случае используется стандартный режим.
Databricks рекомендует использовать стандартный режим доступа для всех рабочих нагрузок. Используйте выделенный режим доступа, только если необходимые функциональные возможности не поддерживаются стандартным режимом доступа.
Режим доступа | Видимый пользователю | Поддержка UC | Поддерживаемые языки | Примечания. |
---|---|---|---|---|
Выделенный (ранее предназначенный для одного пользователя) | Всегда | Да | Python, SQL, Scala, R | Может быть назначено и использовано одним пользователем или группой пользователей. |
Standard (раньше общее) | Всегда | Да | Python, SQL, Scala (на вычислительных мощностях с поддержкой Unity Catalog с использованием Databricks Runtime 13.3 LTS и выше) | Может использоваться несколькими пользователями с изоляцией данных среди пользователей. |
Подробные сведения о поддержке функциональных возможностей для каждого из этих режимов доступа можно найти в разделе Ограничения режима доступа к вычислениям длякаталога Unity.
Примечание.
В Databricks Runtime 13.3 LTS и более поздних версиях скрипты и библиотеки инициализации поддерживаются всеми режимами доступа. Требования и уровни поддержки различаются. См. Где можно установить скрипты инициализации? и библиотеки, связанные с вычислениями.
Включение автоматического масштабирования локального хранилища
Зачастую бывает трудно оценить, сколько дискового пространства потребуется на определенное задание. Чтобы избавить вас от необходимости оценивать количество гигабайт управляемых дисков, подключаемых к вычислительным ресурсам во время их создания, в Azure Databricks автоматически включается функция автоматического масштабирования локального хранилища на всех вычислительных ресурсах Azure Databricks.
При автоматическом масштабировании локального хранилища Azure Databricks отслеживает объем свободного места на диске, доступного для Spark-исполнителей в вычислениях. Если у работника заканчивается место на диске, Databricks автоматически присоединяет новый управляемый диск, прежде чем закончится доступное пространство. Диски присоединяются до достижения общего объема дискового пространства 5 ТБ для каждой виртуальной машины (включая исходное локальное хранилище виртуальной машины).
Управляемые диски, присоединенные к виртуальной машине, отсоединяются только при возврате виртуальной машины в Azure. То есть управляемые диски никогда не отсоединяются от виртуальной машины, пока они являются частью запущенных вычислений. Чтобы уменьшить использование управляемого диска, Azure Databricks рекомендует использовать эту функцию в вычислительных ресурсах, настроенных с автомасштабированием вычислений или автоматическим завершением.
Шифрование локальных дисков
Внимание
Эта функция предоставляется в режиме общедоступной предварительной версии.
Некоторые типы экземпляров, используемые для запуска вычислений, могут иметь локальные подключенные диски. Azure Databricks может хранить данные в произвольном порядке или временные данные на этих локально присоединенных дисках. Чтобы обеспечить шифрование всех статичных данных для всех типов хранилищ, включая временно хранящиеся на локальных дисках вычислительного ресурса перемешанные данные, вы можете включить шифрование локальных дисков.
Внимание
Ваши рабочие нагрузки могут выполняться медленнее из-за влияния на производительность при чтении и записи зашифрованных данных из и в локальные тома.
Если шифрование локального диска включено, Azure Databricks создает ключ шифрования локально, уникальный для каждого вычислительного узла и используется для шифрования всех данных, хранящихся на локальных дисках. Область ключа является локальной для каждого вычислительного узла и уничтожается вместе с самим вычислительным узлом. На протяжении времени существования ключ находится в памяти для целей шифрования и расшифровки и хранится на диске в зашифрованном виде.
Чтобы включить шифрование локальных дисков, необходимо использовать API кластеров. Во время создания или редактирования вычислений задайте значение enable_local_disk_encryption
true
.
Конфигурация Spark
Чтобы точно настроить задания Spark, можно указать настраиваемые свойства конфигурации Spark.
На странице конфигурации вычислений щелкните переключатель (Дополнительные возможности).
Перейдите на вкладку Spark.
В файле конфигурации Spark укажите свойства конфигурации в виде одной пары «ключ-значение» в каждой строке.
При настройке вычислений с помощью API кластеров, задайте свойства Spark в поле spark_conf
, используя API создания кластера или API обновления кластера.
Чтобы применить конфигурации Spark к вычислительным ресурсам, администраторы рабочих областей могут использовать политики вычислений.
Получение свойства конфигурации Spark из хранилища секретов
Databricks рекомендует хранить конфиденциальные данные, такие как пароли, в формате секрета, а не в формате обычного текста. Чтобы создать ссылку на секрет в конфигурации Spark, используйте следующий синтаксис:
spark.<property-name> {{secrets/<scope-name>/<secret-name>}}
Например, чтобы настроить для свойства конфигурации Spark с именем password
значение секрета, хранящегося в secrets/acme_app/password
:
spark.password {{secrets/acme-app/password}}
Дополнительные сведения см. в разделе "Управление секретами".
SSH-доступ к вычислительным ресурсам
По соображениям безопасности в Azure Databricks порт SSH закрыт по умолчанию. Если вы хотите включить SSH-доступ к кластерам Spark, смотрите подключение по SSH к узлу драйвера.
Примечание.
SSH можно включить, только если рабочая область развернута в вашей собственной виртуальной сети Azure.
Переменные среды
Настройте настраиваемые переменные среды, к которым можно получить доступ из скриптов инициализации, работающих на вычислительном ресурсе. Databricks также предоставляет предопределенные переменные среды, которые можно использовать в инициализационных скриптах. Эти предопределенные переменные среды нельзя переопределить.
На странице конфигурации вычислений щелкните переключатель Advanced (Дополнительные параметры).
Перейдите на вкладку Spark.
Задайте переменные среды в поле переменных среды.
Можно также задать переменные среды с помощью spark_env_vars
поля в API создания кластера или API обновления кластера.
Доставка вычислительных логов
При создании вычислений можно указать расположение для доставки журналов для узла драйвера Spark, рабочих узлов и событий. Журналы доставляются каждые пять минут и архивируются почасово в выбранном месте назначения. После завершения вычислительного ресурса Azure Databricks гарантирует доставку всех журналов, созданных до завершения вычислительного ресурса.
Назначение журналов зависит от вычислительных ресурсов cluster_id
. Если указано местоназначение dbfs:/cluster-log-delivery
, журналы вычислений для 0630-191345-leap375
доставляются в dbfs:/cluster-log-delivery/0630-191345-leap375
.
Чтобы настроить целевое расположение для доставки журналов, выполните следующие действия.
- На странице вычислений щелкните переключатель Advanced.
- Перейдите на вкладку Ведение журнала.
- Выберите целевой тип.
- Введите путь к журналу вычислений.
Примечание.
Эта функция также доступна в REST API. Смотрите API кластеров.