Hello Mohan, I think what you had in mind works with Redis, since it is a remote state store engine, it does not have the co-partitioning requirements as local state stores.
One thing you'd need to tune KS though is that with remote stores, the processing latency may be larger, and since Kafka Streams process all records of a single partition in order, synchronously, you may need to tune the poll interval configs etc to make sure KS would stay in the consumer group and not trigger unnecessary rebalances. Guozhang On Thu, Mar 11, 2021 at 6:41 PM Parthasarathy, Mohan <mpart...@hpe.com> wrote: > Hi, > > I have a use case where messages come in with some key gets assigned some > partition and the state gets created. Later, key changes (but still > contains the old key in the message) and gets sent to a different > partition. I want to be able to grab the old state using the old key before > creating the new state on this instance. Redis as a state store makes it > easy to implement this where I can simply do a lookup before creating the > state. I see an implementation here : > https://github.com/andreas-schroeder/redisks/tree/master/src/main/java/com/github/andreas_schroeder/redisks > > Has anyone tried this ? Any caveats. > > Thanks > Mohan > > -- -- Guozhang