title: Manual checkpoint from Flink stream
body: <p>Is it possible to trigger checkpoint from Flink streaming job?</p>
  
  <p>My use case is that: I have two streams R and S to join with tumbling time windows. The source is Kafka. I use event time processing and BoundedOutOfOrdernessGenerator to make sure events from two streams end up in the same window. </p>
  
  <p>The problem is my states are large and a regular periodic checkpoint takes too much time sometimes. At first, I wanted to disable checkpointing and rely on Kafka offset. But out of orderness means I have already some data in future windows from current offset. So I need checkpointing.</p>
  
  <p>If it was possible to trigger checkpoints after a window gets cleaned instead of periodic ones it would be more efficient. Maybe at evictAfter method.</p>
  
  <p>Does that make sense and is it possible? IF not I'd appreciate a work around.</p>