Design document to outline desired changes in the Streaming Window Join Operator
- Joins should initially run only on time windows
- Support for operator time and event time
- Event time version must support multiple windows being in progress (or buffered) while waiting for watermarks
- Support for simple Java heap and Flink-managed memory
- Flink-managed memory variant should support out-of-core operation
- Join buffers or hashtables need to be checkpointed.
- Join buffers or hashtables need to support incremental checkpointing
- Join buffers or hashtables should support asynchronous checkpointing
- For sliding time windows, we should consider variants to reuse the join candidates across multiple windows they are contained in.