I just recently noticed KAFKA-658 - Implement "Exact Mirroring" functionality 
in mirror makerhttps://issues.apache.org/jira/browse/KAFKA-658

If you take that, in combination with the custom message handling in 
mirrormaker, in combination with KStreams... I think you get an exactly-once 
stream processor. That could be pretty interesting.

I'm sure there are some nuances that make it not quite so simple. In 
particular, the simple implementation described for KAFKA-658 (ensuring that 
input offsets and output offsets match) will mean that it would only work for 
1-to-1 processing (single input record produces a single output record). And if 
you have KStreams with a local-state database backed by a kafka changelog, 
you'd ideally like to synchronize your changelog with your output stream, which 
may not currently be possible. And of course you probably wouldn't want to use 
mirrormaker itself, but you'd want to generalize this idea.

Anyway, just thought I'd throw that out and see if anyone found the idea 
interesting.

-James


________________________________

This email and any attachments may contain confidential and privileged material 
for the sole use of the intended recipient. Any review, copying, or 
distribution of this email (or any attachments) by others is prohibited. If you 
are not the intended recipient, please contact the sender immediately and 
permanently delete this email and any attachments. No employee or agent of TiVo 
Inc. is authorized to conclude any binding agreement on behalf of TiVo Inc. by 
email. Binding agreements with TiVo Inc. may only be made by a signed written 
agreement.

Reply via email to