Thanks for the information. So, does it mean that the state store modified locally by each application is replicated to all other applications? If yes then does it happen in real time i.e. the state modified by an application is immediately reflected in the state store of the other application?
On Thu, Apr 30, 2020 at 12:18 AM Matthias J. Sax <mj...@apache.org> wrote: > This might help: > > https://stackoverflow.com/questions/40274884/is-kafka-stream-statestore-global-over-all-instances-or-just-local/40278168#40278168 > > Note, that "global stores" are also "local" (ie, on local disk). The > difference is really between being sharded or being replicated. > > > -Matthias > > On 4/29/20 11:28 AM, Bill Bejeck wrote: > > Hi Pushkar, > > > > There is a concept of a global store > > < > https://kafka.apache.org/25/javadoc/org/apache/kafka/streams/StreamsBuilder.html#addGlobalStore-org.apache.kafka.streams.state.StoreBuilder-java.lang.String-org.apache.kafka.streams.kstream.Consumed-org.apache.kafka.streams.processor.ProcessorSupplier- > >in > > Kafka Streams. > > The global state store has data from all partitions from the provided > input > > topic, unlike a "regular" state store that only has data for the > partitions > > of the streams task that owns the store. > > Note that global stores are still "local" because the store is > materialized > > on the machine running the streams app. But it's considered "global" > > because it accesses all partitions of the input topic for the store. > > > > HTH, > > Bill > > > > On Wed, Apr 29, 2020 at 6:09 AM Pushkar Deole <pdeole2...@gmail.com> > wrote: > > > >> Hi, > >> > >> I am looking for some information as to whether kafka state store > >> KeyValueStore is global or local only. I found that it can be in-memory > or > >> made persistent which stores it in local Rocksdb and also logging can be > >> enabled so the state is backed by a topic which allows the state store > to > >> be fault tolerant. > >> However the information that I am looking for is: whether the state > store > >> can be global i.e. if the state written by one application is available > to > >> the other application in real time even when both the applications are > >> running i.e. no rebalancing has triggered? > >> > > > >