背景
在 Flink on YARN 部署模式下,企业实时计算任务的资源消耗长期面临核心痛点:每个 Flink 任务以 Per-Job 或 Application 模式独立启动时,均需单独申请 JobManager 和 TaskManager 资源,对于大量小数据量的采集类任务(如维表同步、低频变更数据抓取等),存在严重的资源浪费问题。此前,数据研发人员常需为每个小任务配置独立的计算资源,不仅导致集群资源碎片化、利用率低下,还使得整体资源成本居高不下,严重影响企业实时计算场景的投资回报率。
为破解这一核心痛点,Dataphin 在 Flink on YARN 部署模式下推出「多 Session 集群」能力,支持企业创建多个 Session 集群作为共享计算资源池,Flink 任务可复用已启动的 Session 集群进行提交运行。该能力专为小数据量、低频次、状态管理诉求不高的任务设计,通过资源共享大幅降低资源消耗,同时保障多业务场景下的任务资源隔离,为企业实时计算场景实现降本增效提供有力支撑。
核心价值
资源共享复用,显著降低资源消耗
针对维表同步、低频变更数据抓取等小数据量采集任务,多 Session 集群模式允许多个任务复用同一组 JobManager / TaskManager 资源,避免了 Per-Job / Application 模式下每个任务独立申请资源带来的开销。通过资源池化共享,大幅减少集群资源碎片,提升整体资源利用率,有效降低企业的实时计算资源成本。
多集群隔离保障,适配多业务场景
支持创建多个 Session 集群,不同业务线可按需分配独立的 Session 集群资源。各业务线的任务运行在自己的 Session 集群内,实现任务级别的资源隔离,避免业务间相互影响。同时,多集群架构支持按业务维度进行资源Quota管控,保障核心业务的资源供给,适配企业多业务并存的复杂场景。
简化任务运维,提升研发效率
Session 集群预先启动并保持运行状态,任务提交时无需等待资源申请和集群启动过程,实现秒级任务提交与运行。对于状态管理诉求不高的小任务,研发人员无需关注底层资源调度细节,只需在任务配置中选择目标 Session 集群即可,显著降低实时任务的运维复杂度,让数据研发人员更聚焦于业务逻辑开发。
产品功能
新增「Session 集群管理」模块,支持在 Flink on YARN 部署模式下创建、配置和管理多个 Session 集群,实时任务在新建时可选择 Session 集群作为运行资源。
Session 集群管理
支持在 Dataphin 平台上进行 Session 集群的全生命周期管理:
- 集群创建:支持配置 Session 集群的基础参数,包括集群名称、YARN 队列、JobManager / TaskManager 内存与 CPU 资源规格、Slot 数量等;
- 集群监控:提供 Session 集群运行状态的实时监控能力,展示集群资源使用率、任务运行数量、Slot 占用情况等关键指标,便于运维人员掌握集群健康状态;
- 集群启停:支持 Session 集群的手动启动与停止操作,集群停止后相关资源自动释放,灵活控制资源占用周期。
实时任务提交选择 Session 集群
- 在 Flink 实时任务新建与编辑场景中,支持选择 Session 集群作为任务运行资源:
- 资源选择:任务配置页面资源队列,支持选择「yarn 队列」或「Session 集群」;
- 集群绑定:可从已创建的 Session 集群列表中选择目标集群,任务将提交至该集群运行;
- 任务隔离:同一 Session 集群内的多个任务通过 Slot 机制实现资源隔离,保障任务间互不干扰,稳定运行。
总结
本次上线的「Flink 1.20 on YARN 多 Session 集群」能力,聚焦企业实时计算场景中小任务资源浪费的核心痛点,通过 Session 集群资源共享复用、多集群业务隔离、简化任务运维等机制,实现小数据量采集类任务的降本增效。企业无需为每个小任务独立申请资源,即可大幅降低实时计算的资源消耗与运维成本,同时保障多业务场景下的资源隔离与稳定运行。
欢迎大家前来体验~