...
cache.max.bytes.buffering
: This parameter controls the cache size. Note that the cache serves for reads and writes. Records are evicted using a simple LRU scheme once the cache size is reached. The first time a keyed record R1 = <K1, V1> finishes processing at a node, it is marked as dirty in the cache. Any other keyed record R2 = <K1, V2> with the same key K1 that is processed on that node during that time will overwrite <K1, V1>. Upon flushing R2 is i) forwarded to the next processing node and ii) written to RocksDB (one write is local, one is to a backing Kafka topic). Note that if streams.cache.max.bytes.buffering set to X, and if users have A aggregation operators and TKTable.to()
operators, then X*(A + T) bytes will be allocated for caching.
...