为了账号安全,请及时绑定邮箱和手机立即绑定

如何发送时间窗口KTable的最终Kafka流聚合结果?

如何发送时间窗口KTable的最终Kafka流聚合结果?

我想做的是:使用数字主题(Long‘s)中的记录汇总(计数)每5秒窗口的值将最终聚合结果发送到另一个主题我的代码看起来如下:KStream<String, Long> longs = builder.stream(         Serdes.String(), Serdes.Long(), "longs"); // In one ktable, count by key, on a five second tumbling window. KTable<Windowed<String>, Long> longCounts =          longs.countByKey(TimeWindows.of("longCounts", 5000L)); // Finally, sink to the long-avgs topic. longCounts.toStream((wk, v) -> wk.key())         .to("long-counts");看起来一切都像预期的那样工作,但是聚合被发送到每个传入记录的目标主题。我的问题是如何只发送每个窗口的最终聚合结果?

2 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

:Kafka流即将推出的特性将为您提供一个配置选项(可以配置其大小的缓冲区/缓存)来控制Kafka流的下游/输出数据速率。如果设置更大的缓冲区大小,则会合并更多下游更新,从而降低下游速率。 

查看完整回答
反对 回复 2019-07-13

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号