每个批次间隔的Spark流式传输最大记录

时间:2018-11-14 07:20:24

标签: apache-spark spark-streaming

[Spark的新手]

我们有一个Spark Streaming应用程序,可以从Kinesis读取并写入Redshift。

配置

接收人数= 5

批处理间隔= 10分钟

spark.streaming.receiver.maxRate = 2000(每秒记录)

根据此配置,可以使用以下公式计算单批读取的最大记录:

Max records per batch = batch_interval * 60 (convert mins to seconds) * 5 (number of receivers) * 2000 (max records per second per receiver)

10 * 60 * 5 * 2000 = 6,000,000

但是实际记录数大于最大记录数。

第一批-6,005,886条记录

第二批-6,001,623条记录

第三批-6,010,148条记录

请注意,接收器甚至没有以最大速率读取,每个接收器读取的记录接近每秒1900。

为什么会这样?

0 个答案:

没有答案