Dear Flink Community,
I am working with an application developed using the DataStream API. The
application has a window operator using with a large temporal window.
Due to the processing done, we are using the ProcessWindowFunction
implementation as we need to explicitly buffer all the tuples falling
within the boundaries of each triggered window.
We are interested in running the application with the RocksDB embedded
state backend to reduce the memory footprint. We would like to know if
there is information available about how windows are stored and
represented in RocksDB, whether windows represent separate objects in
RocksDB, if tuples are grouped by key, replicated in case of overlapping
windows, and so forth.
We understand that this question can be answered by manually inspecting
the source code. However, we would be very grateful if someone could
share their knowledge on this topic and suggest any relevant documents
available online. Unfortunately, the documentation on Flink's website
does not provide such low-level details.
Thanks a lot,
Gabriele