Pyspark 3.1.2 с hadoop 3.2 не работает в Windows 10

#windows #hadoop #pyspark

Вопрос:

Я пытаюсь написать файл паркета с помощью pyspark на компьютере с Windows 10. Я столкнулся с проблемами, связанными с winutils, и со всеми проблемами, которые вы можете получить, но не нашли решения. Итак, мой вопрос : как кому-либо удалось установить pyspark 3.1.2 в Windows 10 и запустить следующий код :

 from pyspark.sql import Row, SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.createDataFrame([Row(a=1, b=2.)])
df.write.parquet("test.parquet")
 

Что я сделал до сих пор :

  1. Запустите последний образ windows virtual box отсюда https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/
  2. Установлен python 3.9.7
  3. бежать pip install pyspark
  4. Добавлены winutils и HADOOP_HOME (я протестировал несколько версий).
  5. Попытался запустить приведенный выше код python.

Прямо сказано, что pyspark может работать во всех системах Spark runs on both Windows and UNIX-like systems (e.g. Linux, Mac OS) : https://spark.apache.org/docs/latest/ но я не нашел никого, кому удалось бы запустить его.

Мне удается сделать это с версией 3.0.1 без каких-либо проблем.

Комментарии:

1. В чем заключается конкретная ошибка, которую вы получаете? Зачем вам нужна виртуальная машина? Если вы действительно загружаете Spark с этого веб-сайта, вам не следует использовать pip

2. Я сталкивался с ошибками, когда люди советовали установить vcredist, winutils, установить определенную переменную среды,…. Здесь этого не написано spark.apache.org/docs/latest/api/python на какой ОС это может работать. Я не нашел документацию по совместимости ОС для pyspark. Кроме того, я использую виртуальную машину для запуска в чистой среде, так как я не могу запустить ее на своем компьютере с Windows 10 или на Windows server 2019. Итак, я спрашиваю, есть ли люди, работающие под управлением pyspark в Windows 10 или Windows server 2019, способные выполнить код, написав паркет.

3. Spark использует JVM. JVM работает практически на любой машине. Spark поддерживает Java 11 и Python 3.9, как описано в документации… Я смог запустить код PySpark, да, но моя установка не может вам помочь, так какие конкретные ошибки вы получаете? И если вы все равно собираетесь использовать виртуальную машину, вам больше повезет с Linux

4. Кроме того, если вы читаете документацию по PyPI для pyspark Эта упакованная версия Spark на Python подходит для взаимодействия с существующим кластером , который, похоже, у вас нет