Использование ядра Scala с Spark - PullRequest
2 голосов
/ 25 апреля 2020

У меня проблема с доступом к данным из S3 из Spark. У меня установлена ​​spylon-kernel для JupyterHub (то есть ядро ​​Scala с интегрированной структурой Spark). Он использует pyspark. К сожалению, новейший pyspark по-прежнему использует библиотеки hadoop-2.7.3. Когда я пытаюсь получить доступ к корзине S3 во Франкфурте, я получаю следующее исключение Java:

" com.amazon aws .services.s3.model.AmazonS3Exception: код состояния : 400, AWS Сервис: Amazon S3, AWS Идентификатор запроса: xxxxxxxxxx, AWS Код ошибки: ноль, AWS Сообщение об ошибке: Неверный запрос"

От моего исследование похоже, что это hadoop 2.7.3 проблема. В более новых версиях (3.1.1) он хорошо работает локально, но pyspark использует эти hadoop 2.7.3 банки и выглядит так, что его нельзя изменить. Могу ли я что-нибудь с этим сделать? Может быть, есть какой-то способ сказать pyspark использовать hadoop 3.1.1 банок? Или, может быть, есть другое ядро ​​Scala со Spark для Jupyterhub, которое использует spark-shell вместо pyspark?

1 Ответ

0 голосов
/ 25 апреля 2020

Хорошо, я наконец-то исправил это ... Выложу ответ, может быть, он кому-нибудь пригодится.

pip install toree

jupyter toree install --spark_home /path/to/your/spark/ --interpreters=Scala

Этот работает! :)

...