我正在使用带有pyspark和livy的EMR笔记本。
我正在从s3中读取实木复合地板格式的数据,并将其字符串转换为pyspark数据帧。有大约。 200万行。当我执行加入操作时。我正在进行400次会话,但未激活。为此,我已经将livy超时设置为5h。
遇到错误: 来自的无效状态代码“ 400” https://172.31.12.103:18888/sessions/5/statements/20错误 有效载荷: “要求失败:会话无效。”
答案 0 :(得分:0)
您可以先尝试对少量数据进行操作。一旦按预期工作,则可以移至大数据。
答案 1 :(得分:0)
我遇到了同样的问题,超时的原因是驱动程序内存不足。默认情况下,即使通过1000M
设置了较高的值,通过EMR Notebook创建Spark应用程序时,驱动程序的内存为config.json
。您可以通过在Jupyter笔记本中执行代码来看到这一点
spark.sparkContext.getConf().get('spark.driver.memory')
1000M
要增加驱动程序的内存,只需
%%configure -f
{"driverMemory": "6000M"}
这将以增加的驱动程序内存重新启动应用程序。您可能需要为数据使用更高的值。希望对您有所帮助。