为了解决您使用AutoConf自动配置调优功能时频繁启停作业的问题,实时计算3.0及以上版本提供了AutoScale自动配置调优功能。作业启动后,系统会根据资源配置规则,自动进行作业的调优,直到满足设定的调优目标,全程无需人工介入。

说明
  • AutoScale自动配置调优功能仅支持实时计算3.0及以上版本。
  • 升级实时计算3.0版本前,需要删除所有低于3.0版本的PlanJson,并重新获取配置资源

启动AutoScale自动配置调优

作业上线的过程中即可完成AutoScale自动配置调优的开启。

  1. 登录作业编辑页面。
    1. 登录实时计算控制台
    2. 单击页面顶部的开发
    3. 作业开发区域,双击目标文件夹或目标作业名,进入作业编辑页面。
  2. 单击页面顶部菜单栏中的上线,进入上线新版本页面。
  3. 初始资源页面,选择初始资源类型,单击下一步
    • 上次自动调优:使用上次AutoScale的planjson配置启动作业。满足以下所有条件后即可选择上次自动调优功能。
      • 作业已开启AutoScale并完成迭代。
      • 作业为暂停状态。
      • 资源配置页面获取AutoScale配置信息
    • 系统分配:新增作业或者作业逻辑没有修改且兼容实时计算版本时,可以选择系统分配
    • 手动资源配置:使用手动生成的资源配置方法。手动重新生成或者修改AutoScale时,需要选择手动资源配置
  4. 数据检查,通过上线检查后,单击下一步
  5. 资源配置,配置自动调优信息后,单击下一步
    参数 说明
    自动调优 选择开启,开启自动调优功能。
    planJson最大CU数 作业可用的资源上限,单位为CU,1CU=1 Core + 4G RAM。最大CU数需小于项目可用CU数。
    调优策略 目前调优策略仅支持数据滞留时间。系统会根据选择的调优策略期望值对作业自动调优。
    期望值 数据滞留时间阈值。当数据源的数据滞留时间超过该值时,触发AutoScale,优化作业并发数。
    说明 例如,调优策略设置数据滞留时间的期望值为5(秒)。如果此时作业的数据滞留时间大于5秒,则系统会不断进行自动调优,直至数据滞留时间小于5秒。
  6. 上线作业,单击上线
  7. 启动作业。启动作业步骤参见启动

关闭AutoScale

说明 启动作业时开启AutoScale自动调优功能后,才可以进行关闭AutoScale自动调优操作。
您可以在作业运行期间,动态关闭AutoScale自动调优功能。
  1. 登录作业运维页面。
    1. 登录实时计算控制台
    2. 单击页面顶部的运维
    3. 作业列表区域,单击作业名称下的目标作业名。
  2. 单击页面右上角的关闭自动调优
  3. 单击确认
说明 作业在上线时启动了AutoScale后,运维界面自动调优列下的操作按键才能生效。

AutoScale效果查看

说明 请登录作业运维界面进行查看。作业运维页面登录步骤下:
  1. 登录实时计算控制台
  2. 单击页面顶部的运维
  3. 作业列表区域,单击作业名称下的目标作业名。
  • AutoScale Metric
    数据曲线 > OverView页面,可以查看AutoScale的信息。
    曲线名称 说明
    AutoScale的成功和失败数 AutoScale成功和未成功执行的次数。
    AutoScale使用的CPU 执行AutoScale时消耗的CPU量。
    AutoScale使用的MEM 执行AutoScale时消耗的内存量。
  • AutoScale PlanJson信息
    属性参数 > 资源配置 > AutoScale PlanJson调优历史,单击目标版本,查看AutoScale生成的PlanJson的信息。

AutoScale可能出现的问题

  • 作业自动重启

    AutoScale根据实际流量来动态调整并发数以及资源,因此可能会在流量上涨以及流量下降时,通过自动重启触发资源调整。

  • 短时间出现数据传输延迟

    流量低谷时AutoScale会降低并发数、减少资源分配。当流量上涨后,流量低谷时的资源配置,会导致吞吐能力不够和数据传输的延迟。

  • 作业无法恢复

    在部分场景下AutoScale无法有效工作,导致作业延迟和作业频繁的进行配置调整。

  • 并发数先减少后增多

    包含窗口函数或聚合函数的作业,在状态(State)数量的增加时,访问State的性能衰减,作业启动时的并发数减少。随着数据积累,并发数会逐渐增大,直至State数量达到稳定。

常见问题

  • Q:作业启动时产生报错:ERR_ID:CLI-00000001

    A:参见启动报错:CLI-00000001

  • Q:作业上线时参数校验报错:resource validate failed!please modify your planJson or max CU and try again.

    A: 以下2种场景可能导致该报错:
    • PlanJson资源文件和实际作业不匹配
      • 报错原因:PlanJson资源文件和实际作业不匹配,导致能够关联(Chain)在一起的节点没有关联在一起,使作业所需资源变大。
      • 解决方案:重新生成配置信息,操作步骤参见启动报错:CLI-00000001
    • 配置的可用资源过小
      • 报错原因:作业所需的CPU或者内存中的一个资源超过最大资源。
      • 解决方案:返回上一步,增加最大可用资源的CU数。
  • Q:AutoScale没有启动。

    A: 排查方法如下:
    • 检查作业是否频繁运行失败(Failover)。AutoScale开启的前提是作业本身逻辑正确并且能够稳定运行。
    • 查看JobManager的相关日志,检查是否存在系统异常。
  • Q:AutoScale没有效果。

    A:请按照以下顺序进行排查:
    1. 检查最大资源限制,确认作业已使用资源是否达到最大资源限制。
    2. 检查作业数据源(Source)节点的逻辑,查看Source节点是否关联(Chain)过多的Operator。若关联过多Operator,请手动编辑PlanJson,在一些关键的位置进行关联(Chain)拆分。解决方案参见手动配置调优
    3. 查看JobManager的相关日志,检查是否存在系统异常。