我有一个spark应用程序,可能会出现意外数据量流入应用程序并在运行时落入内存异常的情况。
我该如何处理这种情况。
答案 0 :(得分:1)
当执行程序的内存不足时,会发生此错误。
错误消息:
Java.lang.OutOfMemory:GC开销
解决方案:通过增加您的执行者记忆力 设置:
conf spark.executor.memory= <XY>g
还增加了shuffle分区,
spark.sql.shuffle.partitions = <XY>
答案 1 :(得分:0)
由于内存错误实际上是致命的,并且执行程序内存设置无法在运行时更改,除了使用新的更高内存限制重新启动应用程序之外,您无能为力。
答案 2 :(得分:0)
您可以尝试使用更高的执行程序内存再次运行您的作业,请尝试按照配置参数。
- conf“spark.executor.memory = 16g”
此外,如果您遇到同样的问题是驱动程序,您可以尝试按照以增加驱动程序内存。
- conf“spark.driver.memory = 16g”
希望这有帮助。
干杯!