pyspark - AWS EMR 集群中的 session 不处于事件状态 Pyspark

标签 pyspark amazon-emr

我已经打开了一个 AWS EMR 集群,并在 pyspark3 jupyter 笔记本中运行以下代码:

"..
textRdd = sparkDF.select(textColName).rdd.flatMap(lambda x: x)
textRdd.collect().show()
.."

我收到此错误:

An error was encountered:
Invalid status code '400' from http://..../sessions/4/statements/7 with error payload: {"msg":"requirement failed: Session isn't active."}

运行该行:

sparkDF.show()

有效!

我还创建了该文件的一小部分,并且我的所有代码都运行良好。

问题是什么?

最佳答案

我遇到了同样的问题,超时的原因是驱动程序内存不足。由于您运行collect(),所有数据都会发送到驱动程序。默认情况下,通过 JupyterHub 创建 Spark 应用程序时,驱动程序内存为 1000M,即使您通过 config.json 设置了更高的值也是如此。您可以通过在 jupyter 笔记本中执行代码来看到这一点

spark.sparkContext.getConf().get('spark.driver.memory')
1000M

要增加驱动程序内存,只需执行

%%configure -f 
{"driverMemory": "6000M"}

这将重新启动应用程序并增加驱动程序内存。您可能需要对数据使用更高的值。希望对您有所帮助。

关于pyspark - AWS EMR 集群中的 session 不处于事件状态 Pyspark,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58062824/

相关文章:

pyspark - Jupyter Notebook PySpark 内核引用主机站 pip 包中降低的 pip 版本

pandas - 尝试为在 Amazon EMR 上运行的 Pyspark 安装 Pandas

apache-spark - hive 如何使用条件语句根据结果执行不同的查询

apache-spark - 如何确定 Apache Spark 数据帧中的分区大小

python-3.x - 删除启动消息以更改 Spark 日志级别

hadoop - Amazon EMR 应用程序主 Web UI?

python - 亚马逊电子病历 : Pyspark having strange dependency issues

apache-spark - 列特征必须是 org.apache.spark.ml.linalg.VectorUDT 类型

python - Spark ml 中 ALS 的意外关键字参数 'coldStartStrategy'

amazon-web-services - AWS CLI EMR 获取主节点实例 ID 并对其进行标记