你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure Cosmos DB 预留容量优化成本

适用对象: NoSQL MongoDB Cassandra Gremlin

Azure Cosmos DB 预留容量可通过预付为期一年或三年的 Azure Cosmos DB 资源预留费用为你省钱。 使用 Azure Cosmos DB 预留容量,可以获得为 Azure Cosmos DB 资源预配的吞吐量的折扣。 资源示例包括数据库和容器(表、集合和图)。

概述

预留容量购买大小应该基于现有的或即将部署的 Azure Cosmos DB 资源按小时使用的吞吐量总量。 例如:如果你的每小时一贯使用模式是 10,000 RU/s,请购买这种大小的预留容量。

在此示例中,超过 10,000 RU/s 的任何预配吞吐量将按照即用即付费率计费。 如果在某一小时内预配吞吐量低于 10,000 RU/s,则会浪费掉该小时内多余的预留容量。

请注意:

  • 预留数没有限制。
  • 可以随时购买更多预留。
  • 可以在同一购买中购买不同的预留。

购买预留后,它立即应用到与预留期相符的所有现有 Azure Cosmos DB 资源。 如果还没有 Azure Cosmos DB 资源,则将在你部署符合预留期的新 Azure Cosmos DB 实例时应用预留。 这两种情况的预留期均于成功购买后立即开始。

预留到期时,Azure Cosmos DB 实例会继续运行,按正常即用即付资费计费。 可从 Azure 门户购买 Azure Cosmos DB 预留容量。 通过提前付款或按月付款的方式为预留付款。

所需的权限

购买 Azure Cosmos DB 预留容量所需的权限包括:

  • 若要购买预留,必须在 Azure 订阅中具有所有者角色或预留购买者角色。
  • 对于企业订阅,必须在 EA 门户中启用“添加预留实例” 。 或者,如果禁用了该设置,则必须是订阅的 EA 管理员。
  • 对于云解决方案提供商 (CSP) 计划,只有管理员代理或销售代理可以购买 Azure Cosmos DB 预留容量。

预留使用

购买预留后,不再像即用即付资费一样收取与预留属性相应的吞吐量费用。 预留相关详细信息,请参阅 Azure 预留一文。

Azure Cosmos DB 以两种不同的方式使用预留:

  • 自动缩放数据库操作使用预留容量,速率为 100 RU/s x 1.5 x N 个区域。 因此,如果针对所有区域需要 10,000 RU/s,请购买 15,000 RU/s。
  • 标准数据库操作使用预留容量,速率为 100 RU/s x N 个区域。 因此,如果针对所有区域需要 10,000 RU/s,请购买 10,0000 RU/s。

折扣

Azure Cosmos DB 预留容量可以大幅降低 Azure Cosmos DB 成本,相比正常价格最多可节省 63%,需提前承诺使用一年或三年的服务。 预留容量提供计费折扣,不会影响 Azure Cosmos DB 资源的状态,包括性能和可用性。

我们提供固定和渐进式折扣选项。 请注意,可以在同一购买中混合搭配不同的预留选项和大小。

固定折扣预留

此选项使用 100 RU/s 的倍数,允许预留 100 到 999,900 RU/s 之间的任何容量,并具有固定折扣:

预留 一年单次折扣 三年折扣
100 RU/s 20% 30%
100 多主数据库 RU/s 20% 30%

对于速率超过 999,900 RU/s 的预留,可以使用阶梯折扣来降低成本。

渐进式折扣预留

此选项使用较大预留大小的倍数,允许预留从 1,000,000 RU/s 起的任何容量,并具有渐进式折扣:

预留 一年折扣 三年折扣
1,000,000 RU/s 27.0% 39.5%
1,000,000 多主数据库 32.0% 44.5%
2,000,000 RU/s 28.5% 42.3%
2,000,000 多主数据库 RU/s 33.5% 47.3%
3,000,000 RU/s 29.0% 43.2%
3,000,000 多主数据库 RU/s 34.0% 48.2%
4,000,000 RU/s 33.0% 47.4%
4,000,000 多主数据库 RU/s 38.0% 52.4%
5,000,000 RU/s 35.4% 49.9%
5,000,000 多主数据库 RU/s 40.4% 54.9%
10,000,000 RU/s 40.2% 55.0%
10,000,000 多主数据库 RU/s 45.2% 60.0%
12,500,000 RU/s 41.2% 56.0%
12,500,000 多主数据库 RU/s 46.2% 61.0%
15,000,000 RU/s 41.8% 56.6%
15,000,000 多主数据库 RU/s 46.8% 61.6%
20,000,000 RU/s 42.6% 57.5%
20,000,000 多主数据库 RU/s 47.6% 62.5%
25,000,000 RU/s 43.1% 58.0%
25,000,000 多主数据库 RU/s 48.1% 63.0%
30,000,000 RU/s 43.4% 58.3%
30,000,000 多主数据库 RU/s 48.4% 63.3%

可以为你的方案使用最大的预留来最大程度地节省成本。 示例:你需要 200 万 RU/s,一年期限。 如果你购买了 2 个单位的 1,000,000 RU/s 预留,则折扣为 27.0%。 如果你购买了 1 个单位的 2,000,000 RU/s 预留,则你将拥有完全相同的预留容量,但享受 28.5% 的折扣。

请创建支持请求以购买任何数量大于 1,000,000 RU/s 的预留。

示例方案 1

假设这种情况:一家公司正在开发一款新的应用程序,但不确定吞吐量要求,他们在 3 个不同的日期购买了 RU/s。

  • 第 1 天,他们为其开发环境购买了预留容量:
    • 总计 800 RU/s:8 个单位的 100 RU/s 选项,折扣为 20%。
    • 范围限定为开发资源组。
    • 期限一年,因为项目持续九个月。
    • 他们提前支付,因为金额较小。
  • 第 30 天,他们为其测试环境购买了预留容量:
    • 750,000 RU/s:7,500 个单位的 100 RU/s 选项,折扣为 20%。
    • 范围限定为测试订阅。
    • 期限一年。
    • 他们选择每月支付。
  • 第 180 天,他们为生产环境购买了预留容量:
    • 3,500,000 RU/s:1 个单位的 3,000,000 RU/s 选项,折扣为 43.2%。 5,000 个单位的 100 RU/s 选项,折扣为 20%。
    • 范围限定为生产订阅。
    • 三年期限,以最大化折扣。
    • 他们也选择每月支付。

示例方案 2

假设这种情况:一家公司需要 10,950,000 三年预留。 在同一购买中,他们得到了:

  • 1 个单位的 10,000,000 RU/s 预留,每月支付。
  • 9,000 个单位的 100 RU/s 预留,每月支付。
  • 500 个单位的 100 RU/s 预留,提前支付。

在购买之前确定所需吞吐量

我们将根据你的每小时使用模式计算建议购买大小。 分析了过去 7 天、30 天和 60 天的使用量,并推荐了能够最大程度节省成本的预留容量购买方式。 可以在 Azure 门户中使用以下步骤查看建议的预留大小:

  1. 登录 Azure 门户

  2. 选择“所有服务”>“预留”>“添加” 。

  3. 在“购买预留项”窗格中选择“Azure Cosmos DB” 。

  4. 选择“建议”选项卡查看建议的预留项:

可按以下特性筛选建议:

  • 期限(一年或三年)
  • 账单频率(每月或预付)
  • 吞吐量类型(RU/秒或多区域写入 RU/秒)

此外,可将建议范围限定为单个资源组、单个订阅或整个 Azure 注册。

下面是一个示例建议:

预留容量建议

此项购买 30,000 RU/s 预留容量的建议指出,对于三年的预留,30,000 RU/s 预留大小可以最大程度地节省成本。 在本例中,该建议大小是根据过去 30 天的 Azure Cosmos DB 使用量计算的。 如果此建议(基于过去 30 天的 Azure Cosmos DB 使用情况)不能代表未来的使用情况,则选择另一个建议期限。

对于 30,000 RU/s 预留,在标准预配吞吐量中,应购买 300 个单位的 100 RU/s 选项。

购买 Azure Cosmos DB 预留容量

  1. 将所需的预留大小除以 100 以计算出所需的 100 RU/s 选项的单位数。 最大数量为 9,999 个单位,也就是 999,900 RU/s。 对于 100 万 RU/s 或更多,请创建支持请求以获得最多 63% 的折扣。

  2. 登录 Azure 门户

  3. 选择“所有服务”>“预留”>“添加” 。

  4. 在“购买预留项”窗格中,选择“Azure Cosmos DB”以购买新的预留项 。

  5. 选择正确的范围、计费订阅、管理组(如果适用)、资源组(如果适用)和预留大小。 下表介绍了所有选项:

    字段 说明
    作用域 控制有多少订阅可以使用与预留关联的计费权益的选项。 它还控制将预留应用于特定订阅的方式。

    如果选择“共享”,预留折扣将应用到计费上下文内任何订阅中运行的 Azure Cosmos DB 实例。 计费上下文基于 Azure 的注册方式。 对于企业客户,共享范围是注册范围,包括注册中的所有订阅。 对于即用即付客户,共享范围是由帐户管理员创建的所有采用即用即付费率的个人订阅。

    如果选择“管理组”,则预留折扣将应用于在同时属于管理组和计费范围的任何订阅中运行的 Azure Cosmos DB 实例

    如果选择“单个订阅”,预留折扣将应用到所选订阅中的 Azure Cosmos DB 实例

    如果选择“单个资源组”,预留折扣将应用到所选订阅中的 Azure Cosmos DB 实例,以及该订阅中的所选资源组。

    购买预留容量后,可以更改预留范围。
    订阅 用于支付 Azure Cosmos DB 预留容量费用的订阅。 收取费用时将采用所选订阅中的付款方式。 订阅必须是以下类型之一:

    企业协议(产品/服务编号:MS-AZR-0017P 或 MS-AZR-0148P):对于企业订阅,从注册的 Azure 预付款余额(以前称为货币承诺)中扣除费用或作为超额费用收取。

    采用即用即付费率的个人订阅(产品/服务编号:MS-AZR-0003P 或 MS-AZR-0023P):对于采用即用即付费率的个人订阅,通过信用卡收取费用或按订阅中的发票付款方式收费。
    资源组 要应用预留容量折扣的资源组。
    术语 一年或三年。
    吞吐量类型 吞吐量以请求单位预配。 可为以下两种设置购买预配吞吐量的预留:单区域写入和多主数据库写入。 可为吞吐量类型选择两个值:每小时 100 RU/秒,每小时 100 个多区域写入 RU/秒。
    预留容量单位 想预留的吞吐量的量。 可以通过确定每个区域的所有 Azure Cosmos DB 资源(例如,数据库或容器)所需的吞吐量来计算此值。 然后,将它乘以与 Azure Cosmos DB 数据库关联的区域数。 例如:如果有五个区域,每个区域 1 百万 RU/s,则购买预留容量时应选 500 万 RU/s。
  6. 单击右下角的“添加到购物车”蓝色按钮,然后在完成后单击“查看购物车”。 接下来定义数量。 请注意,可以将不同的选项添加到购物车。 示例:如果需要 1,100,000 RU/s,则应将 1,000,000 RU/s 和 100 RU/s 选项添加到购物车。

  7. 在“购买预留”窗格中,查看计费频率、数量、折扣和预留价格。 此预留价格适用于使用跨所有区域预配的吞吐量的 Azure Cosmos DB 资源。 示例:对于特定范围内的生产环境,你需要 500,000 RU/s 并自动续订,对于测试资源组,你需要 82,000 RU/s,对于开发订阅,你需要 10,000 RU/s。 可以在图中看到此方案的预留购物车是什么样的。

    预留容量摘要

  8. 依次选择“查看 + 购买”、“立即购买” 。

对预留执行取消、交换或退款操作

可以在一定的限制下对预留执行取消、交换或退款操作。 有关详细信息,请参阅 Azure 预留的自助交换和退款

超出预留容量

为 Azure Cosmos DB 资源预留容量时,将预留预配的吞吐量。 如果超过了预配的吞吐量,则超出预配量的请求将按即用即付费率计费。 预留相关详细信息,请参阅 Azure 预留一文。 有关预配吞吐量的详细信息,请参阅预配吞吐量类型

限制

  • 目前,我们不支持基于 vCore 的服务的预留。
  • 目前,我们不支持无服务器帐户的预留。
  • 目前,我们不支持存储或网络的预留。

后续步骤

预留折扣自动应用于与预留范围和属性相符的 Azure Cosmos DB 资源。 可以通过 Azure 门户、PowerShell、Azure CLI 或 API 更新预留的范围。

尝试为迁移到 Azure Cosmos DB 进行容量计划? 可以使用有关现有数据库群集的信息进行容量规划。

需要帮助? 请联系我们。

如有任何疑问或需要帮助,请创建支持请求