我试图理解.yaml文档中flink的插槽和并行配置背后的逻辑。在
官方的Flink文档指出,对于cpu中的每个内核,必须分配1个插槽,同时将并行级别提高一个。在
但我想这只是一个建议。举个例子,如果我有一个功能强大的内核(例如,最新的i7,最大的GHz),那就不同于拥有一个只有有限GHz的旧cpu。因此,运行比系统的cpu maxcores更多的插槽和并行性并不是不合理的。在
但是除了测试不同的配置之外,还有没有其他方法可以用flink检查我的系统的最大能力?在
我要说的是,我使用的是Flink的批处理Python API。在
Tags:
你的问题有几个有趣的地方。在
建议为每个插槽分配至少一个CPU核心,因为每个操作符至少由1个线程执行。考虑到你的运营商不执行阻塞呼叫,带宽足够高,可以不断地向运营商提供新的数据,每个CPU核心1个插槽应该可以让你的CPU保持忙碌。在
另一方面,如果您的操作员发出阻塞调用(例如,与外部数据库通信),那么有时可能需要配置比内核更多的插槽。在
相关问题 更多 >
编程相关推荐