我们有一些历史数据在我们的主题中排队,我们不想在一个批次中处理所有这些数据,因为这很难做到(如果失败,它必须重新开始!)。
此外,了解如何控制批处理大小将对调优作业非常有帮助。
在使用DStreams
时,尽可能精确地控制批处理大小的方法是Limit Kafka batches size when using Spark Streaming
同样的方法,即设置maxRatePerPartition
,然后调优batchDuration
非常麻烦,但是对于DStream
,它根本不适用于结构化流。
理想情况下,我想知道像maxBatchSize
和minBatchSize
这样的配置,在那里我可以简单地设置我想要的记录数。
发布于 2021-08-22 13:06:17
如果该主题是分区的,且所有分区都有消息,则可以携带的最小消息数等于该主题中的分区数。(即)如果每个分区有数据,则每个分区需要1条记录,如果只有一个分区有数据,则可以采用的最小记录为1。如果主题未分区,则可以采用最小1条记录和任何最大记录。
https://stackoverflow.com/questions/52970845
复制相似问题