我想知道如何在TRIDENT中设置BATCH SIZE(例如,我希望一个批次具有10000条记录)。
我的代码中具有以下配置,每批次从Kafka获取约250条记录。我可以将其增加到10000 * 1024吗?或者有没有办法设置每批记录数。

TridentKafkaConfig tridentKafkaConfig = new TridentKafkaConfig(hosts, topic, consumerGroupId);
tridentKafkaConfig.scheme = new SchemeAsMultiScheme(new XScheme());
tridentKafkaConfig.fetchSizeBytes = 1024*1024;

最佳答案

您可以通过更改“ tridentKafkaConfig.fetchSizeBytes ”属性来增加批处理大小。同样,批处理大小与代理数量和分区数量有关。例如,如果您有2个代理,每个代理具有3个分区,这意味着分区的总数为6。这样,批处理大小等于 tridentKafkaConfig.fetchSizeBytes X总分区数。如果我们假设tridentKafkaConfig.fetchSizeBytes为1024X1024,则批处理大小等于6 MB。(3x2x1024x1024)bytes

关于java - Storm Trident中的批次大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27631277/

10-10 09:24