简述Flink-On-Yarn常见的提交模式有哪些,分别有什么优缺点 ?
参考答案:
Flink-On-Yarn常见的提交模式主要有两种:Session模式和Per-Job模式。
- Session模式:
- 优点:在这种模式下,会在YARN上启动一个Flink集群,并重复使用该集群,后续提交的任务都是提交给该集群。因此,它不需要每次递交任务都申请资源,而是使用已经申请好的资源,从而提高了执行效率。
- 缺点:然而,这种模式的缺点是作业执行完成后不会释放资源,因此会一直占用系统资源,可能导致资源浪费。
- 应用场景:Session模式适用于作业递交比较频繁的场景,特别是当有大量小作业需要处理时。
- Per-Job模式:
- 优点:在这种模式下,每个Flink任务都会在YARN上启动一个独立的Flink集群并运行,结束后自动关闭并释放资源。因此,它能够在作业运行完成后立即释放资源,避免长期占用系统资源。
- 缺点:不过,Per-Job模式的缺点是每次递交作业都需要申请一次资源,这可能会影响执行效率,因为每次申请资源都需要消耗一定的时间。
- 应用场景:Per-Job模式更适合作业比较少或者大作业的场景。
综上所述,Flink-On-Yarn的Session模式和Per-Job模式各有其优缺点,具体选择哪种模式应根据实际的应用场景和需求来决定。对于作业频繁且规模较小的场景,可以选择Session模式以提高执行效率;而对于作业较少或规模较大的场景,则可以选择Per-Job模式以避免资源浪费。