Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Скрипт init (скрипт инициализации) — это скрипт оболочки, который выполняется во время запуска каждого узла кластера перед запуском драйвера Apache Spark или JVM исполнителя. В этой статье приведены рекомендации по использованию init-скриптов и сведений о конфигурации, если их необходимо использовать.
Рекомендации по скриптам инициализации
Databricks рекомендует использовать встроенные функции платформы вместо сценариев инициализации по возможности. Широкое использование скриптов инициализации может замедлить миграцию на новые версии среды выполнения Databricks и предотвратить внедрение некоторых оптимизаций Databricks.
Внимание
Если необходимо выполнить миграцию из скриптов инициализации в DBFS, см. статью "Миграция скриптов инициализации из DBFS".
Следующие функции Databricks рассматривают некоторые распространенные варианты использования скриптов инициализации.
- Используйте политики вычислений для задания системных свойств, переменных среды и параметров конфигурации Spark. См. справочник по политике вычислений.
- Добавьте библиотеки в политики кластера. См. раздел "Добавление библиотек в политику".
Если необходимо использовать скрипты инициализации:
- Управляйте скриптами инициализации с помощью политик вычислений или скриптов с областью действия кластера, а не глобальных скриптов инициализации. См. типы скриптов init.
- Управление установкой библиотеки для рабочих и интерактивных сред с помощью политик вычислений. Не устанавливайте библиотеки с помощью скриптов init. См. политики вычислений.
- Используйте стандартный режим доступа (прежнее название — режим общего доступа) для всех рабочих нагрузок. Используйте только выделенный режим доступа (бывший режим доступа с одним пользователем), если необходимые функции не поддерживаются стандартным режимом доступа.
- Используйте новые версии среды выполнения Databricks и каталог Unity для всех рабочих нагрузок.
В следующей таблице приведены рекомендации, организованные версией Databricks Runtime и включением Unity Catalog.
Окружающая среда | Рекомендация |
---|---|
Databricks Runtime, начиная с версии 13.3 LTS, с каталогом Unity | Храните скрипты инициализации в томах каталога Unity. |
Databricks Runtime 11.3 LTS и более новые версии без каталога Unity | Храните скрипты инициализации в виде файлов рабочей области. (Размер файла составляет 500 МБ). |
Databricks Runtime 10.4 LTS и ниже | Хранение скриптов инициализации с помощью облачного хранилища объектов. |
Какие типы скриптов инициализации поддерживают Azure Databricks?
Azure Databricks поддерживает два типа скриптов инициализации: применяемые к кластеру и глобальные, но рекомендуется использовать скрипты инициализации, применяемые к кластеру.
- Охват всего кластера: выполняется на каждом кластере, настроенном с помощью скрипта. Это рекомендуемый способ запуска скрипта инициализации. См. Скрипты инициализации для всего кластера.
- Глобальный: запуск на всех кластерах в рабочей области, настроенной с выделенным режимом доступа или режимом общего доступа без изоляции. Эти скрипты инициализации могут вызвать непредвиденные проблемы, такие как конфликты библиотеки. Только пользователи рабочей области могут создавать глобальные скрипты инициализации. См . сценарии глобального инициализации.
При изменении любого типа скрипта инициализации необходимо перезапустить все кластеры, затронутые скриптом.
Глобальные сценарии инициализации выполняются перед кластерными сценариями инициализации.
Внимание
Устаревшие глобальные и устаревшие скрипты инициализации кластера выполняются перед другими скриптами инициализации. Эти скрипты инициализации являются конечными, но могут присутствовать в рабочих областях, созданных до 21 февраля 2023 года. См. инициализационные скрипты с именем кластера (устаревшие версии) и глобальные инициализационные скрипты (устаревшие версии).
Где можно установить скрипты инициализации?
Вы можете хранить и настраивать скрипты инициализации из файлов рабочих областей, томов каталога Unity и облачного хранилища объектов, но скрипты инициализации не поддерживаются во всех конфигурациях кластера, а не все файлы можно ссылаться из скриптов инициализации. Рекомендации по средам для скриптов инициализации см. в рекомендациях по скриптам инициализации.
В следующей таблице указывается поддержка скриптов инициализации на основе исходного расположения и режима доступа к кластеру. Указанная версия среды выполнения Databricks является минимальной версией, необходимой для использования сочетания. Сведения о режимах доступа кластера см. в разделе "Режимы доступа".
Примечание.
Для стандартного режима доступа администратор должен добавить скрипты инициализации в allowlist
. См. библиотеки допустимых списков и скрипты инициализации для вычислений в стандартном режиме доступа (ранее называвшегося режимом общего доступа).
Стандартный режим доступа | Режим единого доступа | Режим общего доступа без изоляции | |
---|---|---|---|
Файлы рабочей области | Не поддерживается | Все поддерживаемые версии Databricks Runtime. В версиях ниже 11.3 LTS скрипты инициализации, ссылающиеся на другие файлы рабочей области, не поддерживаются. |
Все поддерживаемые версии Databricks Runtime. |
Объемы | версии 13.3 LTS и выше | 13.3 LTS и более поздние версии | Не поддерживается |
Облачное хранилище | 13.3 LTS и более поздних версий | Все поддерживаемые версии среды выполнения Databricks | Все поддерживаемые версии среды выполнения Databricks |
Перенос скриптов инициализации из DBFS
Предупреждение
Скрипты инициализации в DBFS достигли конца жизни и больше не могут использоваться. Перед запуском вычислений необходимо перенести скрипты инициализации в поддерживаемое расположение. Храните скрипты инициализации в томах каталога Unity, в виде файлов рабочей области или в облачном хранилище объектов.
Пользователи, которым необходимо перенести скрипты инициализации из DBFS, могут использовать следующие руководства. Убедитесь, что вы определили правильный целевой объект для конфигурации. Рекомендации по скриптам инициализации.