Sic*_*Qin 5 hadoop-yarn apache-spark spark-streaming
我正在Yarn上运行一个火花流应用程序,它可以运行好几天,之后我遇到了一个问题,来自下面纱线列表的错误消息:
Application application_1449727361299_0049 failed 2 times due to AM Container for appattempt_1449727361299_0049_000002 exited with exitCode: -104
For more detailed output, check application tracking page:https://sccsparkdev03:26001/cluster/app/application_1449727361299_0049Then, click on links to logs of each attempt.
Diagnostics: Container [pid=25317,containerID=container_1449727361299_0049_02_000001] is running beyond physical memory limits. Current usage: 3.5 GB of 3.5 GB physical memory used; 5.3 GB of 8.8 GB virtual memory used. Killing container.
Run Code Online (Sandbox Code Playgroud)
这是我的内存配置:
spark.driver.memory = 3g
spark.executor.memory = 3g
mapred.child.java.opts -Xms1024M -Xmx3584M
mapreduce.map.java.opts -Xmx2048M
mapreduce.map.memory.mb 4096
mapreduce.reduce.java.opts -Xmx3276M
mapreduce.reduce.memory.mb 4096
Run Code Online (Sandbox Code Playgroud)
这个OOM错误很奇怪,因为我没有在内存中保存任何数据,因为它是一个流程序,有没有人遇到过类似的问题?或者谁知道是什么原因造成的?
小智 -1
检查正在运行它的盒子/虚拟机实例上的内存。我的猜测是主机是红色的。
...看来是由于过度分配内存。
您认为流式传输在哪里执行?不管你那里是否存放过任何东西?是的。记忆。也不是猫或跳舞的维京人(添加“e”)。
你猜怎么了?您分配的 7 GB 内存主要是物理内存而不是虚拟内存。
检查您的日志记录,因为这会有类似的构建时间。
Spark.yarn.am.memory 值是多少?
平衡虚拟机和容器的内存分配:)
另一个想法是调整内存开销,以便物理和虚拟可以更成比例
| 归档时间: |
|
| 查看次数: |
1398 次 |
| 最近记录: |