美文网首页
(1)确定Flink作业所需资源大小

(1)确定Flink作业所需资源大小

作者: 丹之 | 来源:发表于2018-11-22 10:06 被阅读107次

以下6个方面是确定 Flink 集群大小时最先要考虑的一些因素:

  1. 记录数和每条记录的大小

确定集群大小的首要事情就是估算预期进入流计算系统的每秒记录数(也就是我们常说的吞吐量),以及每条记录的大小。不同的记录类型会有不同的大小,这将最终影响 Flink 应用程序平稳运行所需的资源。

  1. 不同 key 的数量和每个 key 存储的 state 大小

应用程序中不同 key 的数量和每个 key 所需要存储的 state 大小,都将影响到 Flink 应用程序所需的资源,从而能高效地运行,避免任何反压。

  1. 状态的更新频率和状态后端的访问模式

第三个考虑因素是状态的更新频率,因为状态的更新通常是一个高消耗的动作。而不同的状态后端(如 RocksDB,Java Heap)的访问模式差异很大,RocksDB 的每次读取和更新都会涉及序列化和反序列化以及 JNI 操作,而 Java Heap 的状态后端不支持增量 checkpoint,导致大状态场景需要每次持久化的数据量较大。这些因素都会显著地影响集群的大小和 Flink 作业所需的资源。

  1. 网络容量

网络容量不仅仅会收到 Flink 应用程序本身的影响,也会受到可能正在交互的 Kafka、HDFS 等外部服务的影响。这些外部服务可能会导致额外的网络流量。例如,启用 replication 可能会在网络的消息 broker 之间产生额外的流量。

  1. 磁盘带宽

如果你的应用程序依赖了基于磁盘的状态后端,如 RocksDB,或者考虑使用 Kafka 或 HDFS,那么磁盘的带宽也需要纳入考虑。

  1. 机器数量及其可用 CPU 和内存

最后但并非最不重要的,在开始应用部署前,你需要考虑集群中可用机器的数量及其可用的 CPU 和内存。这最终确保了在将应用程序投入生产之后,集群有充足的处理能力。

相关文章

  • (1)确定Flink作业所需资源大小

    以下6个方面是确定 Flink 集群大小时最先要考虑的一些因素: 记录数和每条记录的大小 确定集群大小的首要事情就...

  • flink 所需资源大小考虑

    记录数和每条记录的大小估算预期进入流计算系统的每秒记录数(也就是我们常说的吞吐量),以及每条记录的大小 不同 ke...

  • 【Flink 精选】如何优化大状态作业?

    本文从监控、参数调整、资源规划等方面,优化 Flink 大状态作业的常见问题。 背景:Flink 有状态作业能可靠...

  • flink中的JobListeningContext类

    flink作业上下文监听器——JobListeningContext保存监视正在运行的作业并接收其结果所需的状态。...

  • 楼梯完善流程

    第一步:确定图框大小 1.以系列中最宽、最长、最高的楼梯为准,确定1:50的详图所需图幅:范 2.制作楼梯特需的“...

  • 七、复查测试文档

    复查测试文档 - 详细描述工作的范围 - 估计定义测试用例和实施测试所需工作 - 确定所需资源(人、硬...

  • 不同的角色

    (1) 规划者。 项目的成功需要恰当而全面地定义整个项目 , 所有项目干系人全部参与, 工作方法确定, 所需资源在...

  • Apache Flink 进阶(一):Runtime 核心机制剖

    1. 综述 本文主要介绍 Flink Runtime 的作业执行的核心机制。首先介绍 Flink Runtime ...

  • 07:项目成本管理4

    估算成本----对完成项目工作所需资源成本进行近似估算的过程。本过程的作用: 确定项目所需的资金。成本估算是在某特...

  • Apache Flink 进阶教程(一):Runtime 核心机

    [TOC] 1. 综述 本文主要介绍 Flink Runtime 的作业执行的核心机制。本文将首先介绍 Flink...

网友评论

      本文标题:(1)确定Flink作业所需资源大小

      本文链接:https://www.haomeiwen.com/subject/rxikqqtx.html