Re: Streams: TTLCacheStore

2017-02-09 Thread Michael Noll
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

Re: Streams: TTLCacheStore

2017-02-08 Thread Elias Levy
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

Re: Streams: TTLCacheStore

2017-02-08 Thread Guozhang Wang
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,

Streams: TTLCacheStore

2017-02-06 Thread Elias Levy
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