Quota管理是为您在MaxCompute管理控制台提供计算资源消耗查看、调整、增删改查等涉及日常资源管理运维的功能模块。本文为您介绍Quota管理提供的各种能力。
背景信息
MaxCompute Quota作为计算资源的单元,为MaxCompute SQL、MapReduce、Spark、Mars、PAI等计算作业提供所需计算资源(CPU及内存)。MaxCompute Quota分为一级和二级Quota,一级Quota之间相互独立;二级Quota从属于一级Quota,二级Quota之间资源支持共享。一级Quota作为二级的统管Quota不可直接被使用,需要通过使用二级Quota来使用对应的CU资源。
MaxCompute计算资源单位为CU(即Quota内的对象)。您可购买的Quota包含的CU分为包年包月和按量付费两种模式,分别对应包年包月规格类型和按量付费规格类型,更多规格信息,请参见规格概述。
包年包月Quota是通过按月购买预留CU后系统创建分配的独占Quota,使用时可按需在包月CU基础上按时预购弹性预留CU(按购买量和时长后付费)。作业在包年包月Quota内运行时最大只能使用该Quota CU购买量,可以在一级Quota内自定义二级Quota进行CU分配。
按量付费Quota是在通过开通按量付费服务时,系统分配可使用的公共二级Quota,不可自行控制CU量以及进行二次分配。
您可以选择使用按量付费Quota,也可以选择包年包月Quota,包年包月Quota支持通过控制CU量来控制预算,而按量付费Quota不可自行控制CU量。
查看Quota
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择工作区 > 配额(Quota)管理。
在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进行二次拆分定义,默认阿里云账号具有权限,RAM账号可以通过授权获得配置权限,详情请参见RAM权限。配置Quota主要由以下两部分组成。
基础配置:即二级Quota的新增或删除,基础参数的配置(包括是否独占、单作业CU上限、开启优先级、非预留CU、调度策略),预留CU和弹性预留CU配置(仅作用于当前生效的配置方案)。若没有分时伸缩场景需求,通过此配置即可满足Quota的管理。
说明每个一级Quota下最多支持100个二级Quota,请根据业务场景合理规划和配置。
伸缩配置:分时伸缩配置,实现对Quota在不同时段设置不同的Min/Max 预留CU量或弹性预留CU。
详细操作如下:
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择工作区 > 配额(Quota)管理。
在Quota管理页面,单击需要配置的一级Quota操作列的Quota配置。
Quota基础配置。
在Quota配置页面的基础配置页签,单击编辑基础配置,新增二级Quota并配置基础参数(包括是否独占、单作业CU上限、开启优先级、非预留CU、调度策略)。
您也可以在基础配置页签,通过单击目标Quota操作列的删除,删除二级Quota。
说明删除二级Quota后,此二级Quota将在所有的Quota资源配置方案里被删除,对应的minCU量和弹性预留CU量将加到默认二级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量。一级Quota的预留CU量即为购买的包月CU量(minCU=maxCU),需要扩、缩容只能通过升级、降配方式实现,在此不可编辑。二级Quota的minCU和maxCU定义如下:
minCU为保障值,maxCU为上限,当maxCU>minCU时,二级Quota之间为共享模式,如CU请求量大于min值,其他Quota空闲且非独占的情况下会被抢占。
minCU总和等于一级Quota的minCU量。
minCU小于等于max CU小于等于一级Quota购买的minCU量。
说明minCU暂时不可配置为0。
默认二级Quota的minCU和maxCU不可编辑,minCU量为一级minCU量减去自定义二级Quota的minCU量的总和,maxCU值与一级Quota的maxCU量相等。
对于新增的Quota,若存在多个伸缩配置方案,新增成功后,该Quota将加入到所有配置方案中,除当前生效的配置方案外,其他方案中默认预留minCU都为1(从二级默认预付费Quota里扣减),因此若需要调整CU量,请在伸缩配置页签对各个配置方案进行编辑更新。
重要对于新增Quota,此配置仅作用于当前生效的配置方案。
预留弹性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,即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伸缩配置。
购买包年包月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量。一级Quota的预留CU量即为购买的包月CU量(minCU=maxCU),需要扩、缩容只能通过升级、降配方式实现,在此不可编辑。二级Quota的minCU和maxCU定义如下:
minCU为保障值,maxCU为上限,当maxCU>minCU时,二级Quota之间为共享模式,如CU请求量大于min值,其他Quota空闲且非独占的情况下会被抢占。
minCU总和等于一级Quota的minCU量。
minCU小于等于max CU小于等于一级Quota购买的minCU量。
说明minCU暂时不可配置为0。
默认二级Quota的minCU和maxCU不可编辑,minCU量为一级minCU量减去自定义二级Quota的minCU量的总和,maxCU值与一级Quota的maxCU量相等。
预留弹性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伸缩配置页签,单击目标配置方案操作列的删除,即可删除配置方案。
说明Default方案和当前生效的方案不可删除。
克隆配置方案:在Quota伸缩配置页签,单击目标配置方案操作列的 > 克隆(Default方案可直接单击克隆),即可克隆出一个新方案。
分时管理。
您可设置每日不同时间点启用不同的Quota配置方案,以此实现对Quota配置的分时管理。
说明分时调度会有一定的延迟,预计延迟时间为5分钟以内。
在Quota配置页面的伸缩配置页签,单击分时管理区域的编辑时间计划。
单击新增生效时间段,选择生效开始时间和配置方案计划。
时间计划整体只有一份,默认运行时间为00:00(不可修改和删除),对应启用配置方案是Default(可修改)。如果没有增加运行时间,则代表全天都是启用同一个配置方案。
支持整点和半点启用不同的配置方案,一个配置方案可以被重复启用。
分时伸缩预览,选择某个二级Quota以查看各个时段的CU分配趋势图。
伸缩配置全局视图:以全局视图表格方式展示所有配置方案明细,查看所有Quota的Min/Max 预留CU量和弹性预留CU在各个分时时段的配置。
查看Quota消耗
可以查看一级Quota内CU资源的消耗情况。
默认主账号及其子账号都可查看。
登录MaxCompute控制台,在左上角选择地域。
在左侧导航栏,选择工作区 > 配额(Quota)管理。
在Quota管理页面,单击目标一级Quota操作列的资源消耗。
在资源消耗页面,可查看CPU资源消耗趋势图和Quota以及关联的Project列表。
CPU资源消耗趋势图:支持选择不同二级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,单击页面底部的批量删除标签。
在批量解绑标签对话框中,勾选需要解绑的标签。
单击解绑x个标签(x为具体的解绑标签数),并在标签编辑成功对话框中单击关闭。