I'm new to Kafka and Kafka Streams. While I have gone through the concepts of Kafka and Kafka Streams and feel confident conceptually, there is one thing that's confusing me in and out. Yes, it's the decision between using Ktable vs state store.
I'm building a stateful application where I need to store the state of my application over the time. How do I decide if I should use a Ktable/Global Ktable vs a state store? Are these same or dependent on each other? To be honest, I am still not clear on the difference between the both and hence unable to make a confident decision on what shall I use for my application.
Usecase: I have a workflowId and the status pertaining to that workflowId. The status of the workflow would be determined by the underlying downstream workflow engine. I need to store/update the status of the workflowId as received from the workflow engine and persist this information as the operations on the workflowId would depend upon the status of the workflowId.