如何在预配吞吐量与无服务器之间进行选择
适用对象: NoSQL MongoDB Cassandra Gremlin 表
Azure Cosmos DB 提供了两种不同的容量模式:预配吞吐量和无服务器。 在这两种模式下,你可以执行完全相同的数据库操作,但这些操作的收费方式截然不同。
详细比较
条件 | 预配的吞吐量 | 无服务器 |
---|---|---|
最适用于 | 具有持续流量的工作负载,需要可预测的性能 | 具有间歇性或不可预测流量且平均峰值流量比低的工作负载 |
工作原理 | 对于每个容器,你配置一定数量的预配吞吐量(以每秒请求单位数 (RU) 表示)。 每秒有此数量的请求单位可用于你的数据库操作。 预配的吞吐量可以手动更新,也可以通过自动缩放自动调整。 | 你对容器运行数据库操作,无需配置以前预配的任何容量。 |
地理分布 | 可用(Azure 区域数不受限制) | 不可用(无服务器帐户只能在单个 Azure 区域中运行) |
每个容器的最大存储 | 无限制 | 50 GB |
性能 | SLA 涵盖的针对点读取和写入的延迟 < 10 毫秒 | SLA 涵盖的针对点读取的延迟 < 10 毫秒,针对写入的延迟 < 30 毫秒 |
计费模式 | 对于预配的 RU/s,无论消耗了多少 RU,都按每小时计费。 | 根据数据库操作所消耗的 RU 数量,按小时收费。 |
估计预期消耗量
在某些情况下,可能无法确定应当为给定的工作负荷选择预配吞吐量还是选择无服务器。 为了帮助做出此决定,你可以估算总体“预期消耗”,或一个月内可能消耗的 RU 总数。
后续步骤
- 详细了解如何在 Azure Cosmos DB 上预配吞吐量
- 详细了解 Azure Cosmos DB 无服务器
- 熟悉请求单位的概念