4

i have a Spring boot Kafka Stream application which process all the incoming events and store it in the State Store which Kafka Streams provides internally and query it using interactive query service. Inside all these Kafka Streams using "RocksDB" , i want to replace this RocksDB with any other db that can configurable like MariaDB or MongoDB. Is there a way to do it ? if not

How can i configure Kafka Stream application to use MongoDB for creating the state stores.

1 Answers1

3

StateStore / KeyValueStore are open interfaces in Kafka Streams which can be used with TopologyBuilder.addStateStore

Yes, you can materialize values to your own store implementation with a database of your choice, but it'll affect processing semantics should there be any database connection issues, particularly with remote databases.

Instead, using a topic more of a log of transactions then following that up with Kafka Connect is the proper approach for external systems

OneCricketeer
  • 179,855
  • 19
  • 132
  • 245