Windows下PySpark saveAsTextFile报错:HADOOP_HOME与JAVA_HOME配置异常
问题:PySpark本地配置HADOOP_HOME与JAVA_HOME相关错误
我正在跟随YouTube上Coder2j的PySpark教程学习,使用Spark 3.5.1版本。最初执行RDD的Action和Transformation操作时出错,通过设置以下环境变量解决:
import os os.environ['SPARK_HOME'] = r'C:\Users\zulki\AppData\Local\Programs\Spark' os.environ['PYSPARK_DRIVER_PYTHON_OPTS'] = 'notebook' os.environ['PYSPARK_DRIVER_PYTHON'] = r"C:\Users\zulki\AppData\Local\Programs\Python\Python311\python.exe" os.environ['PYSPARK_PYTHON'] = r"C:\Users\zulki\AppData\Local\Programs\Python\Python311\python.exe"
创建SparkSession实例的代码如下:
from pyspark.sql import SparkSession spark = SparkSession.builder\ .appName("RDD-Spark-Demo")\ .getOrCreate()
我创建了简单结构化数据并存储在rdd2变量中:
data = [('Alice', 25), ('Bob', 30), ('Charlie', 35), ('Alice', 40)] rdd2 = spark.sparkContext.parallelize(data) print(rdd2.collect())
但运行rdd2.saveAsTextFile("output.txt")时触发Py4JJavaError,提示未设置HADOOP_HOME和hadoop.home.dir。下载配置Hadoop后,执行hdfs namenode -format又提示JAVA_HOME设置错误,尽管我已在hadoop-env.cmd中配置set JAVA_HOME=C:\Program Files\Java\jdk-17。
我学习PySpark是为了优化Python提取脚本——原脚本运行2小时,用concurrent.features优化后缩短至17分钟,但AWS Lambda有15分钟超时限制,希望通过PySpark将运行时长压缩至15分钟内,急需解决上述配置问题。
内容的提问来源于stack exchange,提问作者Zulkifli Arshad
相关产品推荐
相关产品推荐

