【发布时间】:2019-02-08 23:53:58
【问题描述】:
我们能否按两个字段(一个是键,另一个是值)分组并获取 kstreams 中的计数。
我想为每个 pid(key) 获取不同的 userid(value) 计数。groupByKey 不会给出不同的 userid。 我尝试使用 groupBy 而不是 groupByKey 但看到语法错误。有人可以帮忙吗?
KStream<Integer, Integer> stream = events.map((key, value) -> new KeyValue<Integer, Integer>(value.getpid(), value.getUserId()));
KGroupedStream<Integer, Integer> groupedStream = stream.groupByKey(Grouped.with(Serdes.Integer(), Serdes.Integer());
【问题讨论】:
-
请说明您遇到的错误。
-
我尝试在上面的 kgroupedstream 中将 groupbykey 更改为 groupby 并且错误是 kstream 不能应用于
(org.apache.kafka.streams.kstream.Grouped<java.lang.integer,java.lang.integer>)。分组两个字段的正确方法是什么 -
这是因为
groupBy没有接受Grouped的重载方法
标签: apache-kafka apache-kafka-streams