Spark流式传输作业不会删除随机播放文件

问题描述 投票:2回答:1

我有一个在EMR上运行的火花流工作,从Kafka读取消息并输出到S3。

我使用emr-5.17.0,即hadoop 2.8.4,spark 2.3.1

问题是随机文件正在积累:/ mnt / yarn / usercache / hadoop / appcache / application_1540126328960_0001 /

并且永远不会被删除,直到我的磁盘空间不足

文件看起来像:shuffle_328_127_0.index,shuffle_328_134_0.data

我确实尝试更新Yarn的政策:yarn.nodemanager.localizer.cache.cleanup.interval-ms 300000 yarn.nodemanager.localizer.cache.target-size-mb 5000

但它并没有解决问题。

目前我自动重新启动作业并每隔几个小时启动一个新作业,当应用程序停止时,它会删除缓存

为了使纱线删除缓存文件,我该怎么办?

谢谢

apache-spark apache-kafka spark-streaming
1个回答
0
投票

我有一个cron作业(每小时)清理超过6小时的文件/目录来修复磁盘空间问题,我没有在spark / yarn中找到自动执行此操作的参数,这里是详细信息。

crontab条目。

0 * * * * /home/hadoop/clean_appcache.sh >/dev/null 2>&1

clean_app cache.是

#!/bin/bash

BASE_LOC=/mnt/yarn/usercache/hadoop/appcache
sudo find $BASE_LOC/ -mmin +360 -exec rmdir {} \;
sudo find $BASE_LOC/ -mmin +360 -exec rm {} \;
© www.soinside.com 2019 - 2024. All rights reserved.