Estou usando o Kafka Streams para agrupar e reduzir um tópico do Kafka.
Quero gerar uma saída para uma chave, se a chave e o valor forem iguais para todos os valores de uma determinada chave; caso contrário, não gere nada para essa chave.
Para fazer isso, no entanto, preciso acessar o key
, e os .reduce
métodos só dão acesso aos valores agregados/atuais.
É possível obter a chave ao chamar .reduce? Ou existe outra maneira de fazer isso?
Você pode usar o
aggregate
método daKGroupedStream
interface:Se você quiser gerar um resultado para uma chave somente se o valor corresponder, crie uma Ktable, algo como:
Você pode então filtrar os valores na tabela, algo como: