打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
分布式运行时环境
  1. 每个任务槽代表TaskManager的固定资源子集。例如,具有三个插槽的TaskManager将其1/3的托管内存专用于每个插槽。切换资源意味着子任务不会与来自其他作业的子任务竞争托管内存,而是具有一定量的保留托管内存。请注意,这里没有CPU隔离; 当前插槽只分离任务的托管内存。

  2. 每个TaskManager有一个插槽意味着每个任务组在一个单独的JVM中运行(例如,可以在一个单独的容器中启动)。拥有多个插槽意味着更多子任务共享同一个JVM。同一JVM中的任务共享TCP连接(通过多路复用)和心跳消息。它们还可以共享数据集和数据结构,从而减少每任务开销。

  3. 默认情况下,Flink允许子任务共享插槽,即使它们是不同任务的子任务,只要它们来自同一个作业。结果是一个槽可以保存作业的整个管道。允许此插槽共享有两个主要好处:

    1)Flink集群需要与作业中使用的最高并行度一样多的任务槽。无需计算程序总共包含多少任务(具有不同的并行性)。

    2)更容易获得更好的资源利用率。没有插槽共享,非密集 源/ map()子任务将阻止与资源密集型窗口子任务一样多的资源通过插槽共享,将示例中的基本并行性从2增加到6可以充分利用时隙资源,同时确保繁重的子任务在TaskManagers之间公平分配。

  4. 根据经验,一个很好的默认任务槽数就是CPU核心数

  5. 另一个状态后端使用RocksDB作为键/值存储。除了定义保存状态的数据结构之外,状态后端还实现逻辑以获取键/值状态的时间点快照,并将该快照存储为检查点的一部分。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
01-Flink运行架构
Flink之工作原理
Flink之状态后端(StateBackends)
Apache Flink 常见问题定位指南
万字长文深度解析WordCount,入门Flink,看这一篇就够了
关于电脑的内存条更换或是安装注意这几点!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服