我正在尝试使用Spark-Submit执行一个简单的Spark SQL代码(PySpark),但收到了以下错误。注意 - 我在Spark 2.x中运行它。
spark-submit HousePriceSolution.py
错误:
从pyspark.sql导入SparkSession ImportError:无法导入名称SparkSession
代码:
from pyspark.sql import SparkSession
PRICE_SQ_FT = "Price SQ Ft"
if __name__ == "__main__":
session = SparkSession.builder.appName("HousePriceSolution").getOrCreate()
realEstate = session.read \
.option("header","true") \
.option("inferSchema", value=True) \
.csv("hdfs:............./RealEstate.csv")
realEstate.groupBy("Location") \
.avg(PRICE_SQ_FT) \
.orderBy("avg(Price SQ FT)") \
.show()
session.stop()
答案 0 :(得分:1)
火花提交可能指向另一个版本的火花。使用“spark-submit --version”命令查看spark-submit使用spark-submit的版本,看看那里显示的是什么版本的spark。
如果spark-version没问题,那么检查包含PYTHONPATH的内容,因为可能是PYTHONPATH从另一个版本的spark获取pyspark库。如果PYTHONPATH不包含pyspark库,则添加如下:export PYTHONPATH = $ PYTHONPATH:“$ SPARK_HOME / python / lib / *”