Search code examples
javascalaapache-kafkaapache-kafka-streamsrocksdb

Kafka Streams JoinWindow's data


In Kafka Streams, I'm using a Stream/Stream join using a JoinWindow.

From what I could understand, JoinWindows are implemented using Stores, then the data of both streams are stored in the RocksDB database. However, once an event time expires (passes the defined retention time defined in the until()), what happens with the physical data? Are they removed from the RocksDB database?


Solution

  • Yes, after retention time passed, data in RocksDB is deleted. The data is also deleted from the underlying changelog topic that applied the same retention time.

    Note: retention time is based on event time, not wall-clock time.