如何在Jupyter Notebook的File->New Notebook菜单添加pyspark选项?
解决Windows非Anaconda环境下Jupyter Notebook添加PySpark内核的问题
步骤1:确认环境变量配置
先确保以下环境变量已正确设置(右键「此电脑」→属性→高级系统设置→环境变量):
SPARK_HOME:指向你的Spark安装根目录(例如C:\spark-3.5.0-bin-hadoop3)PYSPARK_PYTHON:指向你的Python可执行文件路径(例如C:\Python310\python.exe,需用绝对路径)JAVA_HOME:指向JDK安装目录(Spark依赖Java,版本需匹配Spark要求,如Spark 3.x对应Java 8/11)- 将
%SPARK_HOME%\bin添加到系统PATH变量中
步骤2:创建PySpark内核配置文件
Jupyter的内核配置文件存放在用户目录的.jupyter\kernels文件夹下,按以下操作创建PySpark内核:
- 打开文件资源管理器,导航到
C:\Users\你的用户名\.jupyter\kernels(如果没有.jupyter或kernels文件夹,先运行一次Jupyter Notebook自动生成) - 在
kernels文件夹内新建名为pyspark的子文件夹 - 在
pyspark文件夹中创建kernel.json文件,写入以下内容(替换占位符为实际路径):
{ "display_name": "PySpark", "language": "python", "argv": [ "你的Python绝对路径", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "env": { "SPARK_HOME": "你的Spark安装绝对路径", "PYSPARK_PYTHON": "你的Python绝对路径", "PYSPARK_DRIVER_PYTHON": "你的Python绝对路径", "PYSPARK_DRIVER_PYTHON_OPTS": "notebook" } }
示例配置(假设Python在C:\Python310\python.exe,Spark在C:\spark-3.5.0-bin-hadoop3):
{ "display_name": "PySpark", "language": "python", "argv": [ "C:\\Python310\\python.exe", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "env": { "SPARK_HOME": "C:\\spark-3.5.0-bin-hadoop3", "PYSPARK_PYTHON": "C:\\Python310\\python.exe", "PYSPARK_DRIVER_PYTHON": "C:\\Python310\\python.exe", "PYSPARK_DRIVER_PYTHON_OPTS": "notebook" } }
步骤3:验证配置
关闭所有已打开的Jupyter Notebook窗口,重新启动Jupyter Notebook。此时在File→New Notebook菜单中应能看到PySpark选项。新建该内核的Notebook后,无需手动执行findspark.init(),直接导入pyspark模块即可使用SparkSession。
若仍未出现该选项,检查以下内容:
- 环境变量是否设置正确(可在命令行输入
echo %SPARK_HOME%验证) kernel.json中的路径是否正确(Windows路径需用双反斜杠\\)- 确保Python已安装
ipykernel包(未安装则运行pip install ipykernel)
内容的提问来源于stack exchange,提问作者user20551429
相关产品推荐
相关产品推荐

