Flink 大规模作业调度性能优化
发布网友
发布时间:2024-09-09 15:14
我来回答
共1个回答
热心网友
时间:2024-09-11 05:25
本文作者洪志龙和朱翥分享了Flink 1.13和1.14版本中对大规模作业调度性能的显著优化。在旧版本中,部署大规模流批作业遇到的主要瓶颈包括JobManager内存需求高、部署时间长且可能导致JobManager主线程阻塞。在新版本中,他们通过以下优化取得了显著提升:
性能对比:1.14版本比1.12版本在执行时间上大幅缩短,内存占用降低,且减少了GC问题,整体部署时间降低87%。建议升级至1.14版本以提升作业调度效率。
拓扑结构优化:针对全连接边,通过分组概念,将同构的分区和节点划分到不同的组,将计算复杂度从O(N²)降至O(N),显著减少内存占用。
任务部署优化:通过减少TDD创建时间、缓存ShuffleDescriptor和利用Blob服务器分发,进一步加快任务部署速度,降低网络传输开销。
Pipelined Region构建:通过逻辑region到执行region的转换优化,避免环形依赖导致的调度死锁,使得构建region的速度从O(N²)降低到O(N),大幅减少了初始化时间。
这些优化显著提升了Flink在处理大规模作业时的性能和稳定性,使得用户在部署和运行过程中遇到的问题得到了显著改善。
Flink 流批一体在 Shopee 的大规模实践
Shopee 在大规模应用 Flink 流批一体的过程中,实现了显著的业务价值和生产优化。以下是关键点的概述:1. 流批一体的应用场景Flink 在 Shopee 的应用广泛,超过60个项目使用了 Flink 批任务,每日生成数千实例支持业务。尤其在数仓领域,Flink 的流批一体解决了Lambda架构中的统一计算问题,通过 Flink+Hu...
DAS分布式振动
DAS分布式振动技术是一种基于光纤传感的先进监测方案。它利用光纤作为传感器,能够实时、连续地监测沿线的各种振动信号。该技术具有高精度、长距离监测、抗干扰能力强等显著优势,特别适用于重要设施如油气管道、铁路轨道等的安全监测。通过DAS分布式振动技术,我们可以及时发现并定位潜在的安全隐患,为设施的安全运行提供有力保障。北京希卓信息技术有限公司是光纤传感测试服务解决方案提供商,拥有光纤光栅解调仪、分布式光纤传感两大核心产品,致力于向客户提供满足其需求的测试解决方案和服务。 希卓拥有专业的技术服务团队,经过多年的努力,希卓信息的业务覆盖了天然气、...
五种大数据处理架构
对于迭代式任务,出于性能方面的考虑,Flink会尝试在存储数据的节点上执行相应的计算任务。此外还可进行“增量迭代”,或仅对数据中有改动的部分进行迭代。在用户工具方面,Flink提供了基于Web的调度视图,借此可轻松管理任务并查看系统状态。用户也可以查看已提交任务的优化方案,借此了解任务最终是如何在集群中实现的。对于分...
Flink的部署模式
然后,应用模式(Application Mode)是对单作业模式的优化,将main()方法移至JobManager执行,减少了客户端资源消耗。它支持多作业应用程序,但不支持高可用性,且作业间执行顺序依赖于调用方式。这种模式适用于客户端资源消耗大的场景。在选择Flink的部署模式时,关键在于平衡资源使用、隔离性、作业执行顺序和...
Flink面试题(一)
Flink是一个强大的分布式计算引擎,专为流处理设计,具备流批一体的特性,支持高吞吐、低延迟、容错和大规模复杂计算。数据流是带有时间顺序的事件序列,Flink擅长处理无界和有界数据,提供精确的时间控制和有状态计算,通过窗口处理有界数据流,确保数据处理的Exactly-once语义。流批一体的概念强调了Flink的灵...
阿里巴巴是用的什么服务器阿里巴巴是用的什么服务器的
Hadoop的YARN作为资源管理调度,HDFS作为数据存储。所以Flink可以和开源大数据软件Hadoop无缝对接。目前,这个基于Flink的实时计算平台不仅服务于阿里巴巴集团,还通过阿里云的云产品API向整个开发者生态系统提供基于Flink的云产品支持。Flink在阿里巴巴的大规模应用表现如何?规模:一个系统是否成熟,规模是一个重要的指标。Flink最初...
Flink 常见面试题:JobManager 和 TaskManager
1.1 JobManager 作为 Flink 集群的大脑,JobManager 承担着以下三个主要职能:•作业调度:负责接收用户提交的作业,并进一步将这些作业拆解为多个任务。•资源管理:与 Flink 的资源管理器(如 YARN 或 Mesos)进行协作,确保作业所需资源的合理分配。•容错与状态管理:负责控制作业的...
Flink基本架构
作业图(JobGraph)和执行图(ExecutionGraph)是Flink执行逻辑的关键,逻辑流图(StreamGraph)由用户代码生成,经过JobGraph的优化,最终生成物理执行的图形结构。Flink通过Task Slots和资源管理,确保任务的并发执行,优化内存使用,实现任务的隔离和共享,适应不同的作业需求和资源环境。
数据治理驱动下的开发治理平台建设
7. 平衡成本与效能:成本治理通过资产管理和账单清算,降低浪费,效能提升则通过增量集成技术、数据传输优化和任务调度的灵活性来实现。8. 数据治理与工具应用:平台建设策略强调与业务紧密结合,以数据质量和成本控制为优先。开源组件如Flume、Flink等在任务优化和资源管理中发挥关键作用。此外,DataFun2023大会...
flink(四)- JobManager的高可用配置
配置中,需设置 Application Master 最大重试次数(yarn-site.xml)以及 Application Attempts(flink-conf.yaml)以确保作业的重试机制。总结,Flink JobManager 的高可用配置旨在通过分布式协调服务(如 ZooKeeper)以及集群的容错机制,确保作业的连续运行和集群的稳定性。通过上述步骤,用户可轻松实现 stand...
Flink 流批一体在小米的实践
作业调度方面,实现批流混合调度,离线模式下为批作业,实时模式下为流作业。Flink SQL模板作业中先启动批作业,执行完成后启动实时作业。Flink生态建设中,插件化的connector设计方便拓展不同connector,支持批量读写和流式入湖,以及增量消费,满足不同实时链路需求。流批一体应用场景包括离线集成、实时集成...