Файл cfg не разрешен при попытке импортировать библиотеку python из zip-файла, включенного в путь - PullRequest
0 голосов
/ 04 декабря 2018

Я использую Spark 2.4.0 + режим развертывания кластера K8s + python 3.5.

Я упаковываю все библиотеки в zip-архив и отправляю его в AWS S3, затем присоединяю к контексту

sc = pyspark.SparkContext(appName=args.job_name, environment=environment)

sc.addPyFile('s3a://.../libs.zip')
sc.addPyFile('s3a://.../code.zip')

Импорт работает, я могу импортировать любой пакет.Но если я импортирую пакет, который читает некоторые файлы из папок, связанных с пакетом, - я получаю сообщение об ошибке:

NotADirectoryError: [Errno 20] Not a directory: '/var/data/spark-ce45d34b-8d2f-4fd0-b3d6-d53ecede8ef1/spark-6ce9d14f-3d90-4c3c-ba2d-9dd6ddf32457/userFiles-08e6e9ec-03fa-447d-930f-bf1bd520f55a/libs.zip/airflow/config_templates/default_airflow.cfg'

Как я могу это решить?

PS.Используйте sc.addFile('s3a:/..'), и разархивирование не работает, потому что spark работает в режиме кластера.

ОБНОВЛЕНИЕ:

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...