什么是spark.streaming.receiver.maxRate?它如何与批处理间隔一起使用

nis*_*ish 5 apache-spark spark-streaming

我正在努力spark 1.5.2.我理解批处理间隔是什么,基本上是处理部分应该从接收器接收的数据开始的间隔.但我不明白是什么spark.streaming.receiver.maxRate.从一些研究来看,它显然是一个重要的参数.

让我们考虑一个场景.我的批处理间隔设置为60秒.并spark.streaming.receiver.maxRate设置为60*1000.如果由于某些临时负载而在60秒内获得60*2000记录该怎么办?会发生什么?是否会删除额外的60*1000记录?或者在批处理间隔期间处理会发生两次?

van*_*jar 5

属性spark.streaming.receiver.maxRate适用于每秒的记录.

接收机最大速率,这意味着批量间隔甚至适用于前-流中接收数据时被应用.换句话说,你将永远不会获得比每秒更多的记录spark.streaming.receiver.maxRate.附加记录将"保留"在流中(例如Kafka,网络缓冲区......)并在下一批中进行处理.