Java является обязательным условием для Spark + многих других транзитивных зависимостей (компилятор scala - это просто библиотека для JVM). PySpark просто подключается удаленно (через сокет) к JVM с помощью Py4J (взаимодействие Python-Java). Py4J включен в PySpark.
PySpark требует Python 2.6 или выше. Приложения PySpark: , выполненные с использованием стандартного интерпретатора CPython для поддержки модулей Python, которые используют расширения C. Мы не тестировали PySpark с Python 3 или с альтернативными интерпретаторами Python, такими как PyPy или Jython.
Все библиотеки PySpark, включая Py4J, в комплекте с PySpark и автоматически импортируются.
Standalone PySpark приложение должно быть выполнено с помощью бен/pyspark скрипта, который автоматически настраивает среду Java и Python , используя настройки в конфе/spark-env.sh или .CMD. Сценарий автоматически добавляет пакет bin/pyspark в PYTHONPATH.
https://spark.apache.org/docs/0.9.1/python-programming-guide.html - эта команда показывает, как построить и запустить все это Scala/Java Build Tool (SBT), который загрузит всю зависимость (в то числе Скала) автоматически из удаленного хранилища. Йо также может использовать Maven.
Если вы не хотите, чтобы Java на вашем компьютере - вы можете запустить его на любом другом компьютере и настроить PySpark для его использования (на SparkConf().setMaster
).
Итак, вам нужен Java для главного узла с самой Спарк (и все Java-зависимости, как Scala) и Python 2.6 для py-client
Возможный дубликат [Как может искр работать без установки Scala заранее?] (Http://stackoverflow.com/questions/27590474/how-can-spark-shell-work-without-installing-scala- заранее) –