I’m trying to understand the trade-offs of using unaligned checkpointing in Apache Flink. While I know that unaligned checkpointing can reduce checkpoint duration under backpressure by skipping the alignment phase, the documentation mentions that it comes with additional I/O overhead.
My question is:
- Besides the extra I/O, are there any other disadvantages of unaligned checkpointing compared to aligned checkpointing?
- Does it impact the end-to-end exactly-once semantics, especially since it might cause duplication in operators with multiple input streams in case of failure?
Any clarification or examples would be greatly appreciated!