Java 卡夫卡流有火花式蓄能器吗?

Java 卡夫卡流有火花式蓄能器吗?,java,scala,apache-spark,apache-kafka,apache-kafka-streams,Java,Scala,Apache Spark,Apache Kafka,Apache Kafka Streams,Spark有一个有用的API,用于以线程安全的方式积累数据,并配有一些现成的有用累加器,例如用于长时间的累加器 我通常使用累加器在调试、分析、监控和诊断过程中连接到Spark作业中。在运行Spark作业之前,我通常会启动Future,定期打印统计数据(例如TPS、直方图、计数、计时等) 到目前为止,我找不到任何类似的卡夫卡流。有什么存在吗?我想这至少对Kafka应用程序的每个实例都是可能的,但要在多个实例中实现这一点,需要创建一个中间主题。Kafka Streams通过设计避免并发——如果累积的

Spark有一个有用的API,用于以线程安全的方式积累数据,并配有一些现成的有用累加器,例如用于长时间的累加器

我通常使用累加器在调试、分析、监控和诊断过程中连接到Spark作业中。在运行Spark作业之前,我通常会启动Future,定期打印统计数据(例如TPS、直方图、计数、计时等)


到目前为止,我找不到任何类似的卡夫卡流。有什么存在吗?我想这至少对Kafka应用程序的每个实例都是可能的,但要在多个实例中实现这一点,需要创建一个中间主题。

Kafka Streams通过设计避免并发——如果累积的数据不需要容错,您可以在内存中完成,并通过挂钟时间标点将其清除

如果需要容错,可以使用状态存储并用标点符号扫描整个存储以清除它


这将给你任务级的积累。不确定Spark的累加器是如何工作的,但如果它提供了一个“全局”视图,我假设它需要通过网络发送数据,并且一个实例只能访问数据(或者可能是广播——不确定如何保证广播情况下的一致性)。类似地,您可以将数据发送到一个主题(具有1个分区)以将所有数据全局收集到一个位置。

推荐/查找工具或库的请求在此处与主题无关。Kafka Streams具有聚合器和还原器>“类似地,您可以将数据发送到一个主题(具有1个分区)以将所有数据全局收集到一个位置。”这是可行的(尽管我们必须手动创建主题,因为我们的集群没有启用自动创建)。阅读时需要聚合主题,对吗?我看不出这是如何被归类为并发的,所以我不明白为什么不能用一个好的Kafka流API来包装它。我不是说,它不能用一个好的API来包装——我的答案是针对你需要用当前的API做什么。请随时提交功能请求(Jira:)