一、session模式
在yarn上启动一个flink集群,并重复使用该集群,后续提交的任务都是提交给该集群,资源会一直被占用,除非手动关闭。
特点:需要事先申请资源,启动JobManager和TaskManager。
优点:不需要每次递交都申请资源,而是使用已经申请好的资源,从而提高执行效率。
缺点:作业执行完成以后,不会释放资源,因此会一直占用系统资源。
应用场景:适用作业递交比较频繁 的场景,小作业比较多的场景。
二、Per-Job模式
争对每个flik任务在yarn上启动一个独立的flink集群并运行,结束后自动关闭并释放资源。
特点:每次递交作业都需要申请一次资源。
优点:作业运行完成后,会立即释放资源,不会一直占用系统资源。
缺点:每次递交作业都会申请资源,会影响执行效率,因为每次申请资源需要消耗时间。
应用场景:适用作业比较少的场景,大作业的场景。