开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

请教一个问题,为什么FLINK在CREATE阶段,会打满队列核数?

请教一个问题,为什么FLINK在CREATE阶段,会打满队列核数?明明作业只用了100多核,然后等作业RUNNING之后,队列的核数一下子掉了。lQLPJxG0xRx4ijTNAfrNBjKwXKjKQiZoxwYE6_Nn6YCcAA_1586_506.png
lQLPJxG0xRx4ijTNAfrNBjKwXKjKQiZoxwYE6_Nn6YCcAA_1586_506.png

展开
收起
三分钟热度的鱼 2023-09-12 19:16:55 49 0
1 条回答
写回答
取消 提交回答
  • 在Flink的CREATE阶段(作业创建阶段),Flink会根据作业的配置和资源需求来进行资源的申请和分配。这时候,Flink可能会一次性请求并占用队列中的所有核数,即使实际作业只需要使用部分核数。
    这种行为的原因是为了在作业开始运行之前,预留足够的资源。在CREATE阶段,Flink会为作业请求并分配所需的资源,以确保作业能够在运行时获取到足够的计算资源。这包括作业需要的CPU核数、内存、网络带宽等资源。
    一旦作业进入RUNNING阶段,Flink会根据实际需要来分配和使用资源。可能由于作业的计算任务较轻或者一些任务处于空闲状态,实际使用的核数会比在CREATE阶段分配的核数少。
    当实际使用的核数减少时,队列中的核数就会相应地减少,以便其他作业或任务可以使用这些闲置的资源。
    这种行为是Flink的资源管理策略的一部分,旨在优化资源利用并确保不同作业之间的公平共享。如果您想要进一步优化资源利用或控制资源分配,可以通过在作业提交前调整作业的配置参数,如taskmanager.numberOfTaskSlots、parallelism等来进行调整。此回答整理自钉群“【②群】Apache Flink China社区”

    2023-09-12 20:10:08
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载