Установите BigDL в Data Science Experience в облаке

Я хотел бы использовать Intel BigDL в ноутбуках на Data Science Experience в облаке.

Как я могу установить его?

2 ответа

Решение

Если ваши ноутбуки поддерживаются экземпляром Apache Spark в качестве службы в DSX, установить BigDL очень просто. Но вы должны сначала собрать информацию о версии.

  1. Какая версия Spark? В настоящее время 2.1 является последней из поддерживаемых DSX.
    С Python вы можете установить BigDL только для одной версии Spark для каждой службы.
  2. Какая версия BigDL? В настоящее время 0.3.0 является самой последней версией и поддерживает Spark 2.1.
    Если сомневаетесь, проверьте страницу загрузки. Уровень исправления Spark не имеет значения.

С помощью этой информации вы можете определить URL необходимого JAR-файла BigDL в репозитории Maven. Для примеров версий, BigDL 0.3.0 с Spark 2.1, URL-адрес загрузки:
https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2.1-0.3.0-jar-with-dependencies.jar

Для других версий замените 0.3.0 и 2.1 в этом URL-адресе. Обратите внимание, что обе версии появляются дважды, один раз в пути и один раз в имени файла.

Установка для Python

Вам нужен JAR и соответствующий пакет Python. Пакет Python зависит только от версии BigDL, а не от версии Spark. Этапы установки могут быть выполнены из записной книжки Python:

  1. Установите банку.

    !(export sv=2.1 bv=0.3.0 ; cd ~/data/libs/ && wget  https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_${sv}/${bv}/bigdl-SPARK_${sv}-${bv}-jar-with-dependencies.jar)
    

    Здесь версии Spark (sv) и BigDL (bv) определяются как переменные среды, поэтому их можно легко настроить, не изменяя URL-адрес.

  2. Установите модуль Python.

    !pip install bigdl==0.3.0 --no-deps | cat
    

    Если вы хотите переключать свои записные книжки между версиями Python, выполните этот шаг один раз для каждой версии Python. (Без --no-deps, будет установлена ​​конфликтующая версия pyspark.)

После перезапуска ядра ноутбука BigDL готов к использованию.

(Не) Установка для Scala

Если вы устанавливаете JAR, как описано выше для Python, он также доступен в ядрах Scala.

Если вы хотите использовать BigDL исключительно с Scala, лучше вообще не устанавливать JAR. Вместо этого используйте %AddJar магия в начале тетради. Лучше всего делать это в самой первой ячейке кода, чтобы избежать проблем с загрузкой классов.

%AddJar https://repo1.maven.org/maven2/com/intel/analytics/bigdl/bigdl-SPARK_2.1/0.3.0/bigdl-SPARK_2.1-0.3.0-jar-with-dependencies.jar

Не устанавливая JAR, вы получаете гибкость в использовании разных версий Spark и BigDL в разных ноутбуках Scala, использующих один и тот же сервис. Как только вы установите JAR, вы, скорее всего, столкнетесь с конфликтами между этим и тем, с кем вы работаете %AddJar,

уборка

Если вы хотите установить другую версию BigDL, вам придется сначала очистить. Вот команды, чтобы проверить, что установлено, и избавиться от него. Выполните эти команды из записной книжки Python.

  • Проверьте, какой JAR установлен. Если вывод пуст, ни один не установлен.

    !find ~/data/libs -name bigdl-\*
    
  • Проверьте, какой модуль Python установлен. Если вывод пуст, BigDL не установлен.

    !pip freeze | grep -i BigDL
    
  • Удалить установленные BigDL JAR.

    !find ~/data/libs -name bigdl-\* -exec rm -vf {} +
    
  • Удалите установленный модуль BigDL Python для текущей версии Python.

    !rm -rf ~/.local/lib/python${_py_version_}/site-packages/{bigdl,BigDL}*
    

    Если переустановка завершится неудачно с сообщением "несколько каталогов dist-info", также выполните:

    !rm -rf $PIP_BUILD
    

BigDL теперь поддерживается в DSX. Смотрите блог с подробностями здесь: https://medium.com/ibm-data-science-experience/using-bigdl-in-data-science-experience-for-deep-learning-on-spark-f1cf30ad6ca0?source=collection_home---4------1----------------

Другие вопросы по тегам