弹性资源计费
AI DataLake服务公测期间提供以下类型的计算资源:
- 按需计费的预留资源池
- 按需计费的弹性资源
弹性资源的使用场景
弹性资源无需提前购买,在配置端点时选择“弹性模式”或“混合模式”即可按需使用。弹性资源秒级计费,在作业结束后资源随即释放,无需用户主动管理资源的生命周期。
在创建引擎端点时需要选择资源使用模式,其中与弹性资源相关的两种模式:
- 弹性模式:使用的全部是弹性资源,无需提前购买,按实际使用量计费。
适用于资源使用不稳定,偶发性测试验证场景。突发性业务负载、开发测试环境、业务探索期。
- 混合模式:使用的是预留资源池和弹性资源。
混合模式下,系统会优先计算预留资源池的可用容量是否满足新增作业的需求:
- 作业所需资源小于等于预留资源池当前可用容量,完全由预留资源池支撑,不会触发调度弹性资源,也无需支付额外费用。
- 作业所需资源大于预留资源池当前可用容量,系统自动触发调度弹性资源,作业将使用弹性资源来执行,此时您需要按需支付按需弹性资源的使用费用 。
这种混合资源调配模式兼具预留资源的稳定性与按需资源的灵活性,有效应对业务变化。
混合模式下有两种资源调度的特殊场景,请您在使用时详细了解这两种场景下调度弹性资源的基本原理,便于合理规划预留资源池规格:
图1 混合资源调配模式调度说明(该示意图不考虑资源碎片和前序作业释放预留资源后的调度场景)
关于弹性资源调度的特殊场景1:节点资源碎片场景
如果您通过资源监控发现预留资源池还有剩余资源,且总量能满足新作业的资源需求,但作业启动后资源使用率没有明显变化,这可能是因为节点资源碎片,导致作业实际调度到了
弹性资源。出现这种情况的核心原因是节点资源碎片,预留池里的剩余资源虽然总量足够,但分散在不同节点上,这些单节点资源无法被调度成为连续资源,导致作业也不能被调度到预留资源池,只能使用弹性资源运行。
这种情况,不会产生额外的弹性资源费用。
- 节点资源碎片的调度原理:
当实例资源存在节点碎片时,即便剩余资源大于等于作业所需资源,也无法调度到预留资源池,仍然需要使用弹性资源。具体原理请参考图2
- 节点碎片会导致多收费吗?
不收费,预留资源池剩余资源大于等于作业所需资源时,碎片资源仅影响资源调度方式,并不产生额外费用。
关于弹性资源调度的特殊场景2:前序作业释放预留资源后的调度逻辑
在当前作业执行过程中,前序作业已完成并释放了预留资源,但已释放的预留资源无法即时调度给当前正在弹性资源上运行的作业使用。作业切换资源类型本身是一个高成本的操作,了解为什么释放的预留资源不能立即被当前作业使用?
在此场景下,当前正在弹性资源运行的作业将会继续使用弹性资源完成执行,不会因为预留资源的释放而中断或切换。前序作业释放的预留资源将会被保留并用于下一轮的作业需求,当新的作业提交时,预留资源池将优先调度这些已释放的资源。
这种调度机制确保了资源调度的稳定性和连续性,避免了因资源状态频繁变化导致的作业中断。请您在使用弹性资源时需要了解这一特性,合理规划作业提交时机和资源使用策略,以充分发挥预留资源池和弹性资源的组合优势。
如图3所示,
常见问题:
- 该场景下在前序作业释放预留资源后,作业使用的弹性资源是否抵扣剩余的预留资源费用。
不能抵扣。
预留资源池和弹性资源是独立的计费体系。预留资源池按固定套餐收费(包年包月或按预留容量),弹性资源按实际使用量按量付费。即使作业A完成后预留资源池变为空闲,作业B仍然在弹性资源上运行,资源仍需单独计费,不会抵扣预留资源池的任何费用。这种情况下会产生额外的弹性资源费用。
- 为什么释放的预留资源不能立即被当前作业使用?
释放的预留资源不能立即被当前作业使用,是因为资源切换本身是一个高成本的操作。
当作业需要从当前资源池切换到新释放的预留资源池时,系统需要完成以下步骤:
- 中断当前作业 :正在运行的作业必须暂停。
- 保存执行上下文:需要将作业的执行状态、内存数据、计算进度等信息保存到磁盘,以便后续恢复。
- 重新调度:作业需要被重新调度到预留资源池。
- 恢复执行:从保存的检查点恢复作业状态,继续执行。
这些步骤涉及大量的磁盘I/O操作和网络传输,耗时较长。如果频繁切换,反而会增加作业的总执行时间,得不偿失。因此,系统通常不会立即将释放的预留资源分配给当前作业,而是等待作业自然完成或下次调度时再重新分配。
- 是否有办法强制使用预留资源?
暂时无法强制指定,建议合理规划作业提交时机。
计费规则
弹性资源按需计费,是一种后付费模式,按实际使用量计费、秒级统计、按小时整点结算。
实际费用 = 实例单价 × 实际使用时长(秒)× 资源数量
不同规格的实例单价不同,系统会根据业务请求按需发放实例规格,如果作业所需资源无法匹配发放的实例规格,系统会自动做资源规整。
资源规整
弹性资源计费:是按实际发放资源计费,而非作业请求资源计费。
资源规整是指系统在进行弹性资源分配时,实际发放资源会根据业务请求进行向上取整,匹配可发放的实例规格。目的是简化资源调度和管理,提高资源利用率。
规整触发条件(满足任一即触发):
- 作业请求资源未完全匹配现有实例规格
- 存在任意一个维度(vCPU/内存)未满足最小单元要求
示例:
适用场景
按需计费的弹性资源适用于业务量波动不可预测,突发性强的场景,例如:
- 探索期业务,需求尚不明确 ,需求频繁变化,不愿承担资源闲置成本。
- 短期/一次性任务,无需长期持有资源,避免资源闲置浪费。
约束限制
- 因用户自定义镜像问题导致的作业失败,作业执行所消耗的弹性资源正常计费。
- 因资源调度异常(资源发放失败)导致的作业失败,消耗的弹性资源不计费。
计费示例
价格仅供参考,实际计算请以价格详情页面中的价格为准。
某用户配置了三个端点,采用不同的资源使用模式。
假设三个端点均绑定的是同一个预留资源池,且预留资源池已预付费用。按需弹性资源单价:0.8 元/vCPU/小时,作业时序图如表1所示。其中每个T时段代表1个小时。
- 端点1:纯弹性模式
资源配置:无预留,完全使用弹性资源
作业执行:
- 作业A:使用 20vCPU,运行1小时
- 调度方式:全部资源从按需弹性资源分配
- 费用:20×1×0.8 = 16元
- 端点2:预留模式
资源配置:端点B分配预留资源10vCPU
作业执行:
- 作业B:使用10vCPU,运行1小时
- 调度方式:预留资源占用率100%
- 费用:预留资源池,预付费。
- 端点3:混合模式
端点C分配预留资源10vCPU,按序列执行以下作业。
表1 作业时序图 作业
开始时序
结束时序
需求资源
调度逻辑
费用计算
作业C
T1
T3
6vCPU
预留资源充足(10 CU),全部使用预留
预留资源池,预付费。
作业D
T2
T4
10vCPU
预留资源不足,且可用资源小于作业所需资源,调度8vCPU弹性资源补足
弹性资源:10×2×0.8=16元
作业E
T4
T6
20vCPU
前序作业已完成,资源释放后,预留资源空闲10vCPU,但需求超过预留容量,全部使用弹性资源。
弹性资源:20×2×0.8 = 32元
综合三个端点的资源使用情况,费用如下:
表2 三个端点的资源使用情况 端点
资源模式
预留资源池费用
弹性资源费用
合计
端点1
纯弹性
已预付
16元
16元
端点2
预留模式
已预付
预付费
预付费
端点3
混合模式
已预付
16+32元
48元
总计
-
已预付
64元
预留资源池预付费用+64元
欠费影响
图4描述了按需计费的资源各个阶段的状态。购买后,在计费周期内资源正常运行,此阶段为有效期;当您的账号因按需资源自动扣费导致欠费后,账号将变成欠费状态,资源将陆续进入宽限期和保留期。
欠费预警
系统会在每个计费周期后的一段时间对按需计费资源进行扣费。当您的账户被扣为负值时,系统将通过邮件、短信和站内信的方式通知到华为账号的创建者。
欠费后影响
当您的账号因按需资源自动扣费导致欠费后,账号将变成欠费状态。欠费后,按需资源不会立即停止服务,资源进入宽限期。您需支付按需资源在宽限期内产生的费用,相关费用可在“管理控制台 > 费用中心 > 总览”的“欠费金额”查看,华为云将在您充值时自动扣取欠费金额。
如果您在宽限期内仍未支付欠款,那么就会进入保留期,资源状态变为“已冻结”,您将无法对处于保留期的按需计费资源执行任何操作。
保留期到期后,若您仍未支付账户欠款,那么资源将被释放,数据无法恢复。
弹性资源成本优化建议
- 稳定负载场景,资源消耗波动小且持续运行,应优先使用预留资源。
- 波动型业务场景,基础负载稳定,峰值有波动,建议使用混合模式,预留资源覆盖基础的资源消耗,使用弹性资源应对峰值需求。
- 突发型业务场景,负载难以预测,突发性强,可以购买较少的预留资源,以弹性资源的调度为主。


