为了解决您使用AutoConf自动配置调优功能时频繁启停作业的问题,实时计算3.0及以上版本提供了AutoScale自动配置调优功能。作业启动后,系统会根据资源配置规则,自动进行作业的调优,直到满足设定的调优目标,全程无需人工介入。
说明
- AutoScale自动配置调优功能仅支持实时计算3.0及以上版本。
- 升级实时计算3.0版本前,需要删除所有低于3.0版本的PlanJson,并重新获取配置资源。
启动AutoScale自动配置调优
作业上线的过程中即可完成AutoScale自动配置调优的开启。
- 登录作业编辑页面。
- 登录实时计算控制台。
- 单击页面顶部的开发。
- 在作业开发区域,双击目标文件夹或目标作业名,进入作业编辑页面。
- 单击页面顶部菜单栏中的上线,进入上线新版本页面。
- 在初始资源页面,选择初始资源类型,单击下一步。
- 上次自动调优:使用上次AutoScale的PlanJson配置启动作业。满足以下所有条件后即可选择上次自动调优功能。
- 作业已开启AutoScale并完成迭代。
- 作业为暂停状态。
- 在资源配置页面获取AutoScale配置信息。
- 系统分配:新增作业或者作业逻辑没有修改且兼容实时计算版本时,可以选择系统分配。
- 手动资源配置:使用手动生成的资源配置方法。在手动重新生成或者修改AutoScale时,需要选择手动资源配置。
- 上次自动调优:使用上次AutoScale的PlanJson配置启动作业。满足以下所有条件后即可选择上次自动调优功能。
- 在数据检查,通过检查后,单击下一步。
- 在资源配置,配置自动调优信息后,单击下一步。
参数 说明 自动调优 选择开启,开启自动调优功能。 planJson最大CU数 作业可用的资源上限,单位为CU,1CU=1 Core + 4G MEM。最大CU数需小于项目可用CU数。 调优策略 目前调优策略仅支持数据滞留时间。系统会根据选择的调优策略和期望值对作业自动调优。 期望值 数据滞留时间阈值。当数据源的数据滞留时间超过该值时,触发AutoScale,优化作业并发数。 说明 例如,调优策略设置数据滞留时间的期望值为5(秒)。如果此时作业的数据滞留时间大于5秒,则系统会不断进行自动调优,直至数据滞留时间小于5秒。 - 在上线作业,单击上线。
- 启动作业。详情请参见启动。
关闭AutoScale
说明 在启动作业时,需要开启AutoScale自动调优功能后,才可以进行关闭AutoScale自动调优操作。
您可以在作业运行期间,动态关闭AutoScale自动调优功能。
- 登录作业运维页面。
- 登录实时计算控制台。
- 单击页面顶部的运维。
- 在作业列表区域,单击作业名称下的目标作业名。
- 单击页面右上角的关闭自动调优。
- 单击确认。
说明 作业在上线时启动了AutoScale后,运维界面自动调优列下的操作按键才能生效。
查看AutoScale效果
- AutoScale Metric
在页面,可以查看AutoScale的信息。
曲线名称 说明 AutoScale的成功和失败数 AutoScale成功和未成功执行的次数。 AutoScale使用的CPU 执行AutoScale时消耗的CPU量。 AutoScale使用的MEM 执行AutoScale时消耗的内存量。 - AutoScale PlanJson信息
在,单击目标版本,查看AutoScale生成的PlanJson的信息。
常见问题
-
Q:AutoScale没有启动。
A: 排查方法如下:- 检查作业是否频繁运行失败(Failover)。AutoScale开启的前提是作业本身逻辑正确并且能够稳定运行。
- 查看JobManager的相关日志,检查是否存在系统异常。
- Q:AutoScale没有效果。
A:请按照以下顺序进行排查:
- 检查最大资源限制,确认作业已使用资源是否达到最大资源限制。
- 检查作业数据源(Source)节点的逻辑,查看Source节点是否关联(Chain)过多的Operator。如果关联过多Operator,请手动编辑PlanJson,在一些关键的位置进行关联(Chain)拆分。解决方案参见手动配置调优。
- 查看JobManager的相关日志,检查是否存在系统异常。
- Q:AutoScale可能出现的问题有哪些?
A:
- 作业自动重启
AutoScale根据实际流量来动态调整并发数以及资源,因此可能会在流量上涨以及流量下降时,通过自动重启触发资源调整。
- 短时间内出现数据传输延迟
流量低谷时AutoScale会降低并发数、减少资源分配。当流量上涨后,流量低谷时的资源配置会导致吞吐能力不够和数据传输的延迟。
- 作业无法恢复
在部分场景下AutoScale无法有效工作,导致作业延迟和作业频繁的进行配置调整。
- 并发数先减少后增多
包含窗口函数或聚合函数的作业,在状态(State)数量增加时,访问State的性能衰减,作业启动时的并发数减少。随着数据积累,并发数会逐渐增大,直至State数量达到稳定。
- 作业自动重启