TidesDB for Kafka Streams - Drop-in RocksDB Replacement

published on January 26th, 2026
Kafka Streams is powerful. The default state store, RocksDB, is battle-tested. But what if you could do better?
Today we’ve dropped the TidesDB Kafka Streams plugin - a drop-in replacement for RocksDB that brings TidesDB’s lock-free and adaptive architecture to your streaming applications.
Why Switch?
The benchmarks speak for themselves. Across 8 different workload types, TidesDB outperforms RocksDB rather consistently.
Full benchmark data available in Github repository here.
How Easy Is It?
Three lines of code. That’s it.
Before (RocksDB)
StreamsBuilder builder = new StreamsBuilder();KTable<String, Long> counts = source .groupBy((key, value) -> value) .count();After (TidesDB)
StreamsBuilder builder = new StreamsBuilder();KTable<String, Long> counts = source .groupBy((key, value) -> value) .count(Materialized.as(new TidesDBStoreSupplier("counts-store")));Import TidesDBStoreSupplier, pass it to Materialized.as(), done.
Installation
git clone https://github.com/tidesdb/tidesdb-kafka.gitcd tidesdb-kafka./install.sh./run.sh # Test, benchmark, generate charts, etcThe install script handles everything - building TidesDB, the JNI bindings, and installing the plugin to your local Maven repository.
What You Get
- 2x faster writes — TidesDB’s lock-free block manager eliminates write contention
- Lower latency — No locks means no waiting
- Better compression — TidesDB’s columnar storage reduces disk footprint
- Same API — Full
KeyValueStoreinterface compatibility
The same architectural advantages that make TidesDB fast on modest hardware translate directly to Kafka Streams. Your state stores benefit from lock-free concurrency, atomic operations, and efficient storage layout.
Try It
Run the benchmarks yourself:
:~/tidesdb-kafka$ ./run.sh░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ TidesDB Kafka Streams -- Test Runner ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
Usage: ./run.sh [options]
Options: -t, --tests Run unit tests -b, --benchmarks Run benchmarks -c, --charts Generate charts from benchmark data -a, --all Run everything -h, --help Show this help messageThe numbers don’t lie. Give it a try.
Thanks for reading!
Links
- GitHub · https://github.com/tidesdb/tidesdb-kafka
- TidesDB Core · https://github.com/tidesdb/tidesdb
- Benchmark Charts · https://github.com/tidesdb/tidesdb-kafka/tree/master/benchmarks/charts
Join the TidesDB Discord for more updates and discussions at https://discord.gg/tWEmjR66cy