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

Azure Cosmos DB 无服务器帐户类型

适用对象: NoSQL MongoDB Cassandra Gremlin

对于仅基于所用资源的 Azure Cosmos DB 定价选项,请选择 Azure Cosmos DB 无服务器帐户类型。 使用无服务器选项时,只需为数据库操作消耗的请求单位 (RU) 和数据消耗的存储付费。 无服务器容器可以每秒处理数千个请求,无需你支付最低费用,也不需要你进行容量规划。

重要

你是否有任何关于无服务器的反馈? 我们想听一听! 可以随意向 Azure Cosmos DB 无服务器团队发送消息:azurecosmosdbserverless@service.microsoft.com

Azure Cosmos DB 中的每个数据库操作都具有成本,以请求单位 (RU) 表示。 此成本的收费方式取决于所选的 Azure Cosmos DB 帐户类型:

  • 预配吞吐量:在预配吞吐量帐户类型中,必须承诺一个在数据库和容器上预配的特定吞吐量(以每秒 RU 数,即 RU/s,来表示)。 随后从每秒可用 RU 数中扣除数据库操作的成本。 对于每个计费周期,将按预配的吞吐量计费。
  • 无服务器:在无服务器帐户类型中,无需在 Azure Cosmos DB 帐户中创建容器时配置预配吞吐量。 对于每个计费周期,将按数据库操作消耗的 RU 数计费。

用例

Azure Cosmos DB 无服务器选项最适合你预期会有间歇性和不可预测的流量且空闲时间较长的情况。 因为在这类情况下预配容量不是必需的,而且可能成本高昂,所以在以下用例中应考虑使用 Azure Cosmos DB 无服务器:

  • 你正在开始使用 Azure Cosmos DB。
  • 正在运行具有以下模式之一的应用程序:
    • 难以预测的突发性、间歇性流量。
    • 平均峰值流量比低(不到 10%)。
  • 你正在开发、测试、制作原型或向用户提供新应用程序,但你还不知道流量模式。
  • 你正在与无服务器计算服务(如 Azure Functions)集成。

有关详细信息,请参阅在预配吞吐量和无服务器间进行选择

使用无服务器资源

Azure Cosmos DB 无服务器是 Azure Cosmos DB 中的新帐户类型。 创建 Azure Cosmos DB 帐户时,可以在“预配吞吐量”和“无服务器”选项之间进行选择。

若要开始使用无服务器模型,则必须创建一个新的无服务器帐户。 目前不支持将现有帐户迁入或迁出无服务器模型。

在无服务器帐户中创建的任何容器都是无服务器容器。 无服务器容器的功能与在预配吞吐量帐户类型中创建的容器相同。 读取、写入和查询数据的方式完全相同。 但无服务器帐户和无服务器容器也有其他特定特征:

  • 无服务器帐户只能在单个 Azure 区域中运行。 创建无服务器帐户后,不能向该帐户添加更多 Azure 区域。
  • 无服务器容器不需要预配吞吐量,因此以下语句适用:
    • 不能在创建无服务器容器时传递任何吞吐量,否则会返回错误。
    • 不能读取或更新无服务器容器的吞吐量,否则会返回错误。
    • 不能在无服务器帐户中创建共享吞吐量数据库,否则会返回错误。
  • 无服务器容器最多可以存储 1TB 的数据和索引。
  • 无服务器容器的最大吞吐量从 5,000 RU/s 到 20,000 RU/s 不等。 最大吞吐量取决于容器中可用的分区数。 在理想情况下,1TB 数据集需要 20,000 RU/s 吞吐量,但可用吞吐量可能超过此数字。 有关详细信息,请参阅 Azure Cosmos DB 无服务器性能

监视消耗量

如果你以前使用了 Azure Cosmos DB 预配吞吐量模型,则会发现当预配容量不符合流量要求,无服务器更加经济高效。 弊端在于成本不太容易预测,因为该选项基于数据库处理的请求数计费。 由于使用无服务器选项时缺乏可预测性,因此监视当前消耗量非常重要。

可以通过在 Azure 门户中查看 Azure Cosmos DB 帐户中的图表来监视消耗量。 对于 Azure Cosmos DB 帐户,请转到“指标”窗格。 在“概述”选项卡上,查看名为“已消耗的请求单位”的图表。 此图表显示帐户在不同时间段内消耗的 RU 数。

显示已消耗的请求单位图表的屏幕截图。

可以在 Azure Monitor 中使用相同的图表。 使用 Azure Monitor 时,可以设置警报,以便在 RU 消耗量超过设置的阈值时收到通知。

高可用性

Azure Cosmos DB 无服务器扩展了在指定地区中有可用性区域的可用性支持。 关联的服务级别协议 (SLA) 与单区域写入与可用性区域配置保持一致,从而确保部署的可靠性。

后续步骤

若要开始使用 Azure Cosmos DB 中的无服务器定价选项,请查看以下文章: