Используйте дополнительную библиотеку в PySpark3 на HdInsight

Я пытаюсь установить библиотеку Shapely, но при ее импорте появляется сообщение об ошибке:

> from shapely.geometry import Point
No module named 'shapely'
Traceback (most recent call last):
ImportError: No module named 'shapely' 

Мое ядро:

cat /usr/local/share/jupyter/kernels/pyspark3kernel/kernel.json
{"argv":["python","-m","sparkmagic.kernels.pyspark3kernel.pyspark3kernel", "-f", "{connection_file}"],
 "display_name":"PySpark3"
}

Я проверил, где установлены мои другие библиотеки:

> import pandas 
> pandas.__file__
'/usr/bin/anaconda/envs/py35/lib/python3.5/site-packages/pandas/__init__.py'

Shapely устанавливается в ту же папку:

/usr/bin/anaconda/envs/py35/lib/python3.5/site-packages$ ls *hapely*
shapely:
affinity.py  _buildcfg.py  ctypes_declarations.py  examples   geometry   geos.py  __init__.py  linref.py  predicates.py  __pycache__  strtree.py   validation.py  wkb.py
algorithms   coords.py     errors.py               ftools.py  _geos.pxi  impl.py  iterops.py   ops.py     prepared.py    speedups     topology.py  vectorized     wkt.py

Shapely-1.6.3.dist-info:
DESCRIPTION.rst  INSTALLER  METADATA  metadata.json  RECORD  top_level.txt  WHEEL

К вашему сведению, моя искра находится над кластером HD Insight.

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


РЕДАКТИРОВАТЬ:

Я только что обнаружил, что

%%local
from shapely.geometry import Point

работает отлично... поэтому я думаю, что моя библиотека не установлена ​​в кластере, но установлена ​​локально. Как я могу развернуть его в кластере?

1 ответ

Решение

Поскольку это искровой кластер, на каждом узле должна быть установлена ​​библиотека lib. Поэтому мне нужно выполнить команду установки через "действие сценария" в интерфейсе HD Insight. Но, поскольку я использую виртуальный env, команда нуждается в -n env опция будет добавлена.

Последняя команда для запуска:

#!/usr/bin/env bash

/usr/bin/anaconda/bin/conda install -c conda-forge shapely -n py35
Другие вопросы по тегам