如何在Jupyter Notebook中恢复Spark Stage控制台进度条显示
Jupyter Notebook 恢复 Spark Stage 控制台进度条方案
你需要的[Stage X:==========> (A + B) / C]格式进度条为Spark内置功能,与Nbextension无关,核心由spark.ui.showConsoleProgress配置项和日志输出级别共同控制,可通过以下方法启用:
临时生效(仅当前 Notebook 会话有效)
- Python内核(PySpark)新建SparkSession时指定配置:
from pyspark.sql import SparkSession spark = SparkSession.builder \ .appName("your_app_name") \ .config("spark.ui.showConsoleProgress", "true") \ .getOrCreate()
- 若当前已有运行的Spark会话,直接修改运行时配置即可:
# 开启进度条输出 spark.conf.set("spark.ui.showConsoleProgress", "true") # 确保日志级别为INFO,进度条属于INFO级输出,级别高于INFO则不会显示 spark.sparkContext.setLogLevel("INFO")
- 若使用Scala内核的Spark Notebook,对应配置设置语法:
spark.conf.set("spark.ui.showConsoleProgress", true) sc.setLogLevel("INFO")
永久生效(所有Spark任务默认启用)
找到Spark安装路径下的conf/spark-defaults.conf配置文件,添加如下两行配置,重启Spark服务后生效:
spark.ui.showConsoleProgress true
spark.driver.logLevel INFO
- 若使用sparkmagic等工具连接远程Spark集群,上述配置需添加到远程集群的Spark配置中,本地Jupyter无需额外调整。
内容的提问来源于stack exchange,提问作者srv
相关产品推荐
相关产品推荐

