Hi Nicolas,

your are right, it is currently not possible to get a result from a
KTable update (and this is by design). The idea is, that the KStream is
enriched with the *current state* of KTable -- thus, for each KStream
record a look-up in KTable is done. (In this sense, a KStream-KTable
join in asymmetric.)

If you need a symmetric join (ie, lookup for both directions), you can
either use a KTable-KTable or KStream-KStream join. Not sure, if this
might work for your use case.

-Matthias


On 07/19/2016 01:36 PM, Nicolas PHUNG wrote:
> Hi,
> 
> I'm using Kafka 0.10.0.0 with the Confluent platform 3.0.0
> 
> I manage to join a record stream (KStream / clicks stream) with a changelog
> stream (KTable / an entity like a campaign related to a click for example).
> When the entity in the KTable is inserted first (and the first time of
> course) in Kafka, the record stream is processed as expected with the join
> in a new enriched stream. This is good.
> 
> My issue is when the record stream generate a record that contains a key/id
> that hasn't been insert yet in the changelog stream/KTable. My process
> generate a record stream without information in the enriched stream. Would
> it be possible to recall this enriched stream process once the changelog
> record on my KTable received the missing id/key ? From my understanding,
> it's not possible right now to this with a KStream-KTable join. Is there a
> way to do something like this ?
> 
> Thanks.
> 
> Regards,
> Nicolas PHUNG
> 

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to