Thanks for bringing this up, Elias!
FYI: A related idea we talked about is that of a timestamped state store
(for the lack of a better description), where conceptually every entry
would be a tuple of (key, value, timestamp). The use case was slightly
different from what Elias describes: here, it
The use case is a simple one. You can think of it as an update mechanism.
One stream is a set of tuples consisting of consumer id, an object id, the
value of some property of the object, and a timestamp. This stream
represents a record of what we told some consumer the value of some
property of t
Hello Elias,
I would love to solicit more feedbacks from the community on how commonly
used a TTL persistent KV store. Maybe you can share your use cases first
here in this thread?
As for its implementation, I think leveraging rocksdb's TTL feature would
be a good option. One tricky part though,
We have a use case within a Streams application that requires a persistent
TTL key-value cache store. As Streams does not currently offer such a
store, I've implemented it by abusing WindowStore, as it allows for a
configurable retention period. Nonetheless, it is not an ideal solution,
as you ca