Apache kafka Kafka流左连接未生成所需结果
我有一个带有userClick的KStream,使用userID作为键,还有一个KTable包含用户详细信息,也使用userID作为键。KStream和KTable都有一些分区,使用相同的分区策略和键 当我在这两个点击事件之间使用左连接时,大多数点击事件都与用户详细信息不匹配,有一些匹配。但是,当我用GlobalKTable更改KTable时,这些缺少的匹配项将消失,所有所需的用户单击都包含用户详细信息 什么会导致这个问题? 加入KStream和GlobalKTable时使用KeyValueMapper是否解决了KStream到Ktable加入时的问题?如果是这样,解决办法是什么 编辑:UserId是一个压缩的主题,由Confluent.net客户端生成,我已经将默认分区策略更改为Murruld2(Java客户端的默认配置)Apache kafka Kafka流左连接未生成所需结果,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,我有一个带有userClick的KStream,使用userID作为键,还有一个KTable包含用户详细信息,也使用userID作为键。KStream和KTable都有一些分区,使用相同的分区策略和键 当我在这两个点击事件之间使用左连接时,大多数点击事件都与用户详细信息不匹配,有一些匹配。但是,当我用GlobalKTable更改KTable时,这些缺少的匹配项将消失,所有所需的用户单击都包含用户详细信息 什么会导致这个问题? 加入KStream和GlobalKTable时使用KeyValueMa
单击流
和用户表
的用户ID分区号1.是的,使用globalKTable解决了这个问题,是的,我不想使用globalKTable来扩展。2.结合KTable的情况,非强化用户是匿名用户,因此这是意料之中的,我如何在Kafka Streams中获取分区号?@YamYamm这取决于您的分区策略,如果您使用默认策略,则可以使用此
org.apache.Kafka.common.utils.utils.toPositive(utils.murrur2(key.getBytes())%n部分
重复的