Kafka Direct API批量输入大小

时间:2017-08-31 08:41:20

标签: spark-streaming kafka-consumer-api kafka-directconsumer

根据Kafka Direct API,输入记录的数量计算为

maxInputSize = maxRatePerPartition * #numOfPartitions# * #BATCH_DURATION_SECONDS#

我真的不明白为什么输入大小是这样确定的。假设我的作业在5分钟内处理了100个文件。

如果我设置maxRatePerPartition = 1,我的主题中的numOfPartitions是6,批处理持续时间应该是什么,因为如果我将批处理持续时间秒设置为300,我将获取1800个文件作为输入,并且将有一个长队列等待待处理和1800个文件将花费大约半小时来处理内存问题和其他约束。

我如何解决这个问题。我应该能够控制输入中的记录。我可以在5分钟内处理10条记录,我应该只能加载这些记录。

0 个答案:

没有答案