Кластер блоков данных устанавливает все пакеты при каждом моем запуске

#databricks #azure-databricks

#databricks #azure-databricks

Вопрос:

Я работал над блокнотом Databricks, используя Python / R. Как только работа будет выполнена, нам нужно завершить работу кластера, чтобы сэкономить связанные с этим затраты. (Поскольку мы используем компьютер).

Поэтому нам также необходимо запустить кластер, если мы хотим работать с любым ноутбуком. Я видел, что это занимает много времени, и снова устанавливаю пакеты в кластере. Есть ли какой-нибудь способ избежать установки при каждом запуске кластера?

введите описание изображения здесь

Комментарии:

1. Я думаю, вы можете установить их в workspace вместо кластера. Я могу провести дополнительные исследования, чтобы убедиться, что это решает проблему

2. Да, пожалуйста, дайте мне знать, если это возможно.

Ответ №1:

Обновление: В Databricks теперь доступны пользовательские контейнеры docker.

К сожалению, нет.

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

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

Ответ №2:

Я использую conda env для установки пакетов. После моей первой установки я сохраняю среду в виде файла yaml в dbfs и использую тот же файл yaml во всех других запусках. Таким образом, мне не нужно устанавливать пакеты снова.

Сохраните среду как спецификацию conda YAML.

 %conda env export -f /dbfs/filename.yml
  

Импортируйте файл в другой ноутбук с помощью conda env update.

 %conda env update -f /dbfs/filename.yml
  

Перечислите пакеты —

 %conda list
  

Комментарии:

1. Это не сэкономит время, вам все равно нужно будет их установить