SparkStreaming并行度属性设置

SparkStreaming并行度属性设置

spark.streaming.blockInterval:该属性是对BatchInterval的进一步细化切分。将一个BatchInterval的数据喜欢切分成更小的block,一个block对应一个Spark Partition。

 

BatchInterval的数据对应RDD

blockInterval的数据对应RDD中的Partition

 

所以SparkStreaming中Partition的数量公式如下:

Partition个数 = BatchInterval / blockInterval

 

建议:blockInterval的大小不要小于50ms,如果数据太小,那么处理数据所花费的时间远远小于启动一个线程所需要的时间,那么相当于使用大炮打蚊子。

 

默认情况下,blockInterval = 200ms,如果BatchInterval = 5s,那么Partition个数 = BatchInterval / blockInterval = 25,也就是有25个Partition,但是当一个BatchInterval中数据过少,例如只有<25个数的数据,那么是分不成25个Partition的,如下图,只有3个,有时只2个Partition。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值