分享

SparkStreaming程序运行导致磁盘空间不足的问题

最近发现服务器运行SparkStreaming程序后磁盘空间被占满了,不明白改怎么解决,该删除那些没有用的文件,是不是程序运行产生了大量的没必要的数据,求大神解惑
内存.png

已有(5)人评论

跳转到指定楼层
nextuser 发表于 2017-9-14 14:21:54
本帖最后由 nextuser 于 2017-9-14 14:22 编辑

可能有两点
1.线程数不够
2.是否使用checkpoint


1.线程数不够
开了几个线程
SparkConf conf = new SparkConf().setAppName("SparkStreamingPollDataFromFlume").setMaster("local[2]");
配置SparkConf:
* 1,至少2条线程:因为Spark Streaming应用程序在运行的时候,至少有一条

* 线程用于不断的循环接收数据,并且至少有一条线程用于处理接受的数据(否则的话无法

* 有线程用于处理数据,随着时间的推移,内存和磁盘都会不堪重负);

2.如果使用checkpoint,一些数据会定期写到磁盘
回复

使用道具 举报

fengfengda 发表于 2017-9-14 14:24:35
nextuser 发表于 2017-9-14 14:21
可能有两点
1.线程数不够
2.是否使用checkpoint

使用的是checkpoint
回复

使用道具 举报

fengfengda 发表于 2017-9-14 14:29:27

是写到了磁盘的哪个地方
回复

使用道具 举报

nextuser 发表于 2017-9-14 14:39:45
fengfengda 发表于 2017-9-14 14:29
是写到了磁盘的哪个地方

看checkpoint是如何实现的。如下面红字部分便是存储目录

val data = sc.textFile("/tmp/spark/1.data").cache() // 注意要cache
sc.setCheckpointDir("/tmp/spark/checkpoint")
data.checkpoint
data.count

回复

使用道具 举报

fengfengda 发表于 2017-9-14 18:01:39
nextuser 发表于 2017-9-14 14:39
看checkpoint是如何实现的。如下面红字部分便是存储目录

val data = sc.textFile("/tmp/spark/1.data ...

我是保存在了zk中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条