流计算 Oceanus 作业自定义调优

许多用户的作业流量可能存在潮汐的特征,例如直播场景在夜间流量高,白天流量低。如果按夜间的峰值处理能力来配置资源,可能导致资源浪费;而按白天的处理能力来配置资源,有可能导致夜间处理能力不足。
Oceanus 提供的作业自定义调优功能,可以帮助用户更合理地调整作业并行度和资源配置。

相关产品
流计算 Oceanus 产品页,含版本规格、价格与购买入口。

一、使用限制

·作业自动调优功能只支持 SQL 和 JAR 作业。

·自定义调优无法解决流作业本身的性能瓶颈。

·因为调优策略对作业的处理模式是基于一定的假设的。例如,流量平滑变化、不能有数据倾斜、每个算子的吞吐能力能够随并发度的升高而线性扩展。当业务逻辑严重偏离以上假设时,作业可能会存在异常。如果作业本身存在问题,你需要进行手动调优。常见的作业异常如下:

·无法修改作业并发度。

·作业不能达到正常状态、作业持续重启。

·自定义函数 UDF 性能问题。

·数据严重倾斜。

·自定义调优无法解决外部系统导致的问题。
外部系统故障或访问变慢时,会导致作业并行度增大,加重外部系统的压力,导致外部系统雪崩。如果出现外部系统问题,你需要自行解决。常见的外部系统问题如下:

·源头消息队列分区数不足或吞吐量不足。

·下游 Sink 性能问题。

·下游数据库死锁。

二、操作步骤

1. 登录 流计算 Oceanus 控制台,在作业管理中,切换到调优页面,点击定时调优。

2. 可以单击新增定时计划创建指定时间触发的调优计划。

2.1 填写计划名称

2.2 当前触发周期可以选择单次、每日、每周、每月。

2.3 可配置 JobManager 与 TaskManager 的规格,以及作业的并行度。此处应填写绝对值,而非调整量。

2.4 可以点击增加调优配置时段新增定时调优时段。

2.5 需要保证每个调优时段间隔小于30分钟。

3. 点击创建就可以创建定时计划。

4. 点击想要启动的定时计划,并且在弹窗中点击应用即可启动指定计划的定时调优。

三、注意事项

·自定义调优功能目前处于公开测试阶段(Beta 版本),暂不建议对重要的生产任务开启自定义调优。

·自定义调优的开始和结束行为需要一一对应,建议开始调优后,等调优周期结束再调整调优规则。

·自定义调优触发后需要重启作业,因此会导致作业短暂停止处理数据。大状态的作业由于启停过程耗时较长,可能导致长时间停流,不建议开启自动扩缩。

·自定义调优的开始和结束时间间隔最少为30分钟。

·如果用户为 JAR 类型的作业开启了自动调优,请确认作业代码中未配置作业并行度,否则自动扩缩容将无法调整作业资源,即自动调优配置无法生效。如果作业代码中配置作业并行度想让调优生效,可在作业参数 > 高级参数中设置参数忽略代码中配置作业并行度,以作业参数中并行度为准。

execution.parallelism.disabled: true

·由于集群资源限制,当前作业自定义调优过程串行执行,因此不要为集群中所有作业开启自定义调优,否则会相互影响。

注意:作业并行度最小降低到 1。TaskManager CU 数根据集群是否开启细粒度资源可以有不同的配置,开启细粒度资源则 CU 数可以为 0.25,0.5,1,2 否则 CU 数只能为 1。

赞 (0)
上一篇 4天前
下一篇 4天前