![](/img/trans.png)
[英]Limit Batch Size in Apache Spark 3.0 Structured Streaming - MicroBatchStream
[英]Limit kafka batch size when using Spark Structured Streaming
我们有一些关于我们的主题的历史数据排队,我们不想在一个批次中处理所有这些数据,因为这很难做到(如果失败,它必须重新开始!)。
此外,了解如何控制批量大小对调整作业非常有帮助。
当使用DStreams
,尽可能精确地控制批处理大小的方法是Limit Kafka batches size when using Spark Streaming
相同的方法,即设置maxRatePerPartition
然后调整batchDuration
非常麻烦,但与DStream
一起DStream
它根本不适用于结构化流。
理想情况下,我想知道像maxBatchSize
和minBatchSize
这样的配置,我可以在其中简单地设置我想要的记录数。
这个配置选项maxOffsetsPerTrigger
:
每个触发间隔处理的最大偏移量的速率限制。 指定的偏移总数将按比例分配到不同卷的topicPartition。
请注意 ,如果您有一个包含开始和结束偏移的检查点目录,则应用程序将处理第一批目录中的偏移量,从而忽略此配置。 (下一批将尊重它)。
如果主题已分区并且所有分区都有消息,则您可以获取的最小消息等于主题中的分区数。 (即)如果有数据,每个分区需要 1 条记录,如果只有一个分区有数据,那么您可以使用的最小记录为 1。如果主题未分区,您可以使用最少 1 条记录,最多可以使用任何记录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.