是Spark的新手,我有一个基于Spark结构化流的原型应用程序,其中不断从Kafka读取流数据。
在此流上,数据可以说我必须应用多个聚合:
1)按key1分组并生成总和和计数
2)按key1和key2分组并生成计数
等等...
如果我将上述2个聚合创建为流查询,则会创建两个独立的流查询,每个独立地从kafka读取,这不是我想要的。 从kafka缓存数据,然后执行多次聚合在结构化流中似乎不起作用。
对流数据进行多次聚合的最佳方法是什么?
一些帖子建议flatmapwithGroupState可能适用于这种用例,但我找不到相同的任何示例