Quota管理是在MaxCompute管理控制台提供计算资源消耗查看、调整、增删改查等涉及日常资源管理运维的功能模块。本文介绍Quota管理提供的各种能力。
Quota简介
MaxCompute Quota作为计算资源的单元,为MaxCompute SQL、MapReduce、Spark、Mars、PAI等计算作业提供所需计算资源(CPU及内存)。
MaxCompute Quota分为一级和二级Quota,一级Quota之间相互独立;二级Quota从属于一级Quota,二级Quota之间资源支持共享。一级Quota作为二级的统管Quota不可直接被使用,需要通过使用二级Quota来使用对应的CU资源。
MaxCompute计算资源单位为CU(即Quota内的对象)。支持包年包月和按量付费两种购买模式,更多规格信息,请参见规格概述。
计算费用(包年包月):按月购买预留CU,系统创建分配的独占Quota。使用时可按需在包月CU基础上按时预购弹性预留CU(按购买量和时长后付费)。作业在包年包月Quota内运行时最大只能使用该Quota CU购买量,可以在一级Quota内自定义分配二级QuotaCU,实现通过控制CU量来控制预算。
计算费用(按量付费):后付费方式,系统分配可使用的公共二级Quota,不可自行控制CU量以及进行二次分配。
查看Quota
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择 。
在Quota管理页面,查看可使用的Quota列表。
将鼠标悬浮于目标一级或二级Quota上,并单击
图标,可以为该Quota添加关注。在概览页的我关注的区域,可以查看关注配额(Quota)。
列表以树状方式显示一、二级Quota。默认阿里云账号(主账号)及其子账号都可查看此列表。
包年包月Quota:单击一级Quota左侧的
图标可以展开二级Quota列表,同时展示二级Quota当前生效的配置信息。购买包年包月资源后,系统默认创建分配一级和二级Quota。按量付费Quota:单击一级Quota左侧的
图标可以展开二级Quota列表。开通按量付费标准版后,系统默认创建分配一级Quota默认后付费Quota_p以及二级Quota默认后付费Quota。说明部分按量付费标准版的默认二级Quota名称为
aliyun_nick。海外地域可能出现按量付费标准版的默认一级Quota名称无法正确展示的情况,但不影响对二级Quota的使用。每个地域下仅可创建一个按量付费模式的Quota,且不支持跨地域使用。
配置Quota
对已经购买的包年包月标准计算资源Quota二次拆分,默认阿里云主账号具有权限,RAM账号可以通过授权获得配置权限,详情请参见RAM权限。配置Quota主要由基础配置和伸缩配置两部分组成。
基础配置
每个一级Quota下最多支持100个二级Quota,请根据业务场景合理规划和配置。
即云数仓资源类型的二级Quota的新增或删除,基础参数的配置(包括是否独占、单作业CU上限、开启优先级、非预留CU、调度策略),预留CU和弹性预留CU配置(仅作用于当前生效的配置方案)。若没有分时伸缩场景需求,通过此配置即可满足Quota的管理。
伸缩配置
Quota伸缩配置即分时伸缩配置,实现为Quota在不同时段设置不同的Min/Max 预留CU量或弹性预留CU。
配置流程
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择 。
在Quota管理页面,单击目标Quota对应操作列的Quota配置。
仅支持付费方式为包年包月的Quota。
Quota基础配置
在Quota配置页面,选择基础配置页签,单击编辑基础配置。
参数说明如下:
参数
说明
Quota名称
自定义输入,需以字母开头,包含字母、数字和下划线。
类型
批处理:用来跑批作业的Quota。
交互式:专用于跑查询加速(MCQA)作业的Quota,无需配置为项目的默认计算Quota。
当Project默认计算Quota为包年包月的批处理Quota时,一旦发起的作业命中查询加速,会自动调度到交互式Quota里执行。
如果有多个交互式Quota,MCQA作业默认调度到最早创建的交互式Quota里执行,因此需要结合Quota规则,可以实现不同Project发起的MCQA作业调度到不同的交互式Quota里执行,Quota规则详情请参见Quota规则。
预留CU量[minCU,maxCU]
包月预留CU量。minCU为保障值,maxCU为上限。
一级Quota的预留CU量即为购买的包月CU量(minCU=maxCU),需要扩、缩容只能通过升级、降配方式实现,在此不可编辑。
当maxCU>minCU时,二级Quota之间为共享模式,如CU请求量大于min值,其他Quota空闲且非独占的情况下会被抢占。
二级Quota的minCU总量等于一级Quota的minCU量。
二级Quota的minCU小于等于二级Quota的maxCU小于等于一级Quota购买的minCU量。
默认的二级Quota的minCU和maxCU不可编辑:
默认的二级Quota的minCU量 =【一级minCU量】-【自定义二级Quota的minCU量的总和】;maxCU量与一级Quota的maxCU量相等。
二级Quota的minCU暂时不可配置为0。
对于新增的Quota
此配置仅作用于当前生效的配置方案。
若存在多个伸缩配置方案,新增成功后,该Quota将加入到所有配置方案中,除当前生效的配置方案外,其他方案中默认预留minCU都为1(从二级默认预付费Quota里扣减),因此若需要调整CU量,请在伸缩配置页签编辑更新各个配置方案。
弹性预留CU
按时预购的预留弹性CU量。关于弹性预留CU的计费详情,请参见计算费用(按时计费)。
一级Quota的预留弹性CU量即为需要预购的CU量,默认为0,最大能设置的量为对应Quota所购买的包年包月预留CU量,且不超过10000 CU;同时受库存限制,即配置扩容时会进行库存校验。配置的扩容量至少为50 CU,或以50的倍数增加。
二级quota的预留弹性CU量定义如下:
预留弹性CU总和为一级Quota的预留弹性CU量。
默认二级Quota的预留弹性CU不可编辑,预留弹性CU量为一级Quota预留弹性CU量减去自定义二级Quota的预留弹性CU量。
对于新增的Quota
此配置仅作用于当前生效的配置方案。
若有多个伸缩配置方案,新增成功后,该Quota将加入到所有配置方案中,除当前生效的配置方案外,其他方案中默认弹性预留CU都为0,因此若需要调整CU量,请在伸缩配置页签对各个配置方案进行编辑更新。
是否独占
是否强独占Quota,即Quota的CU即使空闲也不被其他配额组占用。
仅二级Quota可配置,当二级Quota类型为交互式时,此参数默认为独占且不可修改。
适用于跑BI或ALGO等业务的配额组。该类型作业随时都可能使用,需防止被其他Quota占用长时间不释放(当Quota的max值>min值时有可能会占用其他空闲的Quota)。
单作业CU上限
对在此Quota内执行的作业设置CU并发上限,为空表示不限制,为
0表示绝对限制,可输入正整数进行合理设置。当二级Quota类型为交互式时,此参数默认不可用。
适用于防止单作业长时间占用大量CU导致其他作业等待资源。同时支持作业级别进行限制,在执行的代码前使用
set odps.task.max.concurrent.cu=<CU量>;命令进行设置,作业级别的配置优先级高于Quota级别的配置。
开启优先级
优先级功能,详情请参见作业优先级。
在此Quota上执行的作业将优先执行,或者Project级别开启也同样生效。当二级Quota类型为交互式时,此参数默认不可用。
非预留CU
包月非预留CU量。
一级Quota的非预留CU量即为购买包月非预留CU量,需要扩、缩容只能通过升级、降配方式实现(当前库存紧张无法扩容),在此不可编辑。
二级Quota的非预留CU定义如下:
二级Quota的非预留CU总和为一级Quota的非预留CU量。
默认二级Quota的非预留CU不可编辑,非预留CU量为一级Quota的非预留CU量减去自定义二级Quota的非预留CU量。
调度策略
MaxCompute二级Quota调度策略包含FAIR、FIFO。
FAIR(公平调度)
对于作业优先级相同的场景,资源将平均分配至同一时间提交的所有作业。
对于作业优先级不同的场景,资源优先平均分配给优先级较高的作业,若有剩余,再平均分配给优先级较低的作业。
FIFO(先进先出)
对于作业优先级相同的场景,资源将优先分配至先提交的作业。
对于作业优先级不同的场景,即使优先级高的作业提交时间晚于优先级低的作业,资源也将优先分配至高优先级作业。
根据业务情况选择合适的调度策略(暂不支持类型为交互式的二级Quota设置调度策略),更多介绍请参见计算资源-Quota调度策略说明。
重要自2023年5月24日起,华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华北6(乌兰察布)、华南1(深圳)、西南1(成都)地域新建的二级Quota调度策略默认值为FIFO。以上地域在此时间之前创建的二级Quota调度策略默认值为FAIR。详情请参见公告。
删除Quota
在Quota配置页面,选择基础配置页签,单击目标Quota对应操作列的删除。
二级Quota被删除后,此二级Quota将在所有的Quota资源配置方案里被删除,对应的minCU和弹性预留CU量将加到默认二级Quota中,如需要调整请编辑更新伸缩配置页签中的各个配置方案。
Quota伸缩配置
购买包年包月MaxCompute项目后,每个一级Quota都会有一个名称为
Default的默认资源配置方案。每个资源配置方案包含一级Quota及其下所有二级Quota的预留CU和弹性预留CU配置,多个配置方案结合分时管理,常用于一天内不同时段有不同配置的场景,例如,在每天00:00~08:00和08:00~24:00两个时段,二级Quota的CU量需求不同,则可以配置两个Quota配置方案,通过分时管理进行调度。
说明支持添加多个资源配置方案,最多为48个,每个方案配置不同,以便每日不同时段启用相应的方案。
在Quota配置页面,选择伸缩配置页签。
在伸缩配置页签,单击新增配置方案,在弹出的新增配置方案对话框,填写配置方案名称,并为二级Quota配置预留CU量[minCU,maxCU]和弹性预留CU。
单击确定,完成新增。
在伸缩配置页签,单击目标配置方案对应的操作列的立即生效,可使该配置方案立即生效。也可在分时管理配置时使用已有方案。
任意配置方案均可操作立即生效,但需注意若已设置分时管理调度,则会被下一个分时覆盖。因此如果想固定手动生效某个方案,需要清除其他所有分时设置,只保留该手动生效的方案,以确保当前操作能够立即生效而不被覆盖。
(可选)资源配置方案的其他相关操作如下:
查看配置方案
在伸缩配置页签,单击配置方案名称左侧的
图标,展开方案详情,查看各方案的具体信息。编辑配置方案
在伸缩配置页签,单击目标配置方案对应的操作列的编辑,更新配置方案。
若该方案为当前生效方案,则编辑成功后,还需要单击操作列的立即生效才能启用最新的配置。
删除配置方案
在伸缩配置页签,单击目标配置方案对应的操作列的删除,即可删除配置方案。
Default方案和当前生效的方案不可删除。
克隆配置方案
在伸缩配置页签,单击目标配置方案对应的操作列的克隆,即可克隆出一个新方案。
分时管理
可以设置每日不同时间点启用不同的Quota配置方案,以此实现对Quota配置的分时管理。
说明分时调度会有一定的延迟,预计延迟时间为5分钟以内。
在伸缩配置页签,单击分时管理区域的编辑时间计划。
单击新增生效时间段,选择生效开始时间和配置方案计划。
说明时间计划整体只有一份,默认运行时间为00:00(不可修改和删除),对应启用配置方案是Default(可修改)。如果没有增加运行时间,则代表全天都是启用同一个配置方案。
支持整点和半点启用不同的配置方案,一个配置方案可以被重复启用。
查看Quota消耗
查看一级Quota内CU资源的消耗情况。默认主账号及其子账号都可查看。
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择 。
在Quota管理页面,单击目标Quota对应操作列的资源消耗。
在资源消耗页面,点击二级Quota左侧
图标,展开后可查看CPU资源(单位:Core)和Memory资源(单位: GB)消耗趋势图和Quota以及关联的Project列表。CPU资源(单位:Core)和Memory资源(单位: GB)支持选择不同二级Quota和时间段查看各类CU使用量趋势。单击某个时间点,可以进入该时刻对应的作业快照列表。
Quota以及关联的Project列表:可查看对应二级Quota都被哪些Project定义为默认计算Quota。
Quota规则
MaxCompute支持对Quota配置规则条件,指定满足某些条件的作业可以被调度到对应的Quota里执行。Quota规则详情请参见Quota规则。
Quota标签管理
MaxCompute支持为一级包年包月Quota绑定或解绑标签,标签的详细用法及使用限制请参见什么是标签。
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择 。
创建标签
在Quota管理页面,查看可使用的Quota列表。
创建单个一级Quota标签
将鼠标悬浮于目标一级Quota(限付费方式为包年包月)所在标签列的
图标上,单击绑定/编辑。若未创建过标签会显示绑定,否则显示编辑。
在编辑标签对话框中,输入标签键和标签值。
单击确定,在标签编辑成功对话框中单击关闭。
批量创建多个一级Quota标签。
选中要批量添加标签的一级Quota,单击页面底部的批量打标。
在编辑标签对话框中,输入标签键和标签值。
单击确定,在标签编辑成功对话框中单击关闭。
标签筛选
在Quota管理页面,单击标签筛选,可以根据标签的键和值筛选Quota。
(可选)解绑标签
解绑单个一级Quota的标签。
将鼠标悬浮于目标一级Quota所在标签列的
图标上,单击编辑。在编辑标签对话框中,单击要解绑标签后的
图标。单击确定,在标签编辑成功对话框中单击关闭。
批量解绑多个一级Quota的标签。
选中要批量解绑标签的一级Quota,单击页面底部的批量删除标签。
在批量解绑标签对话框中,勾选需要解绑的标签。
单击解绑x个标签(x为具体的解绑标签数),在标签编辑成功对话框中单击关闭。