Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
适用对象:
Mongodb
重要
你是否正在寻找一种数据库解决方案,以应对需要高扩展性、99.999% 可用性服务级别协议(SLA)、即时自动扩展和跨多个区域的自动故障转移的场景? 请考虑使用 Azure Cosmos DB for NoSQL。
Azure Cosmos DB 支持许多 API,例如 SQL、MongoDB、Cassandra、Gremlin 和 Table。 每个 API 具有自身的数据库操作集。 这些操作包括简单的点读取和写入,以及复杂的查询等等。 每个数据库操作根据其复杂性消耗系统资源。
所有数据库操作的成本将由 Azure Cosmos DB 规范化,并以“请求单位”(简称 RU)表示。 请求费用是所有数据库操作使用的请求单位。 你可以将 RU 视为性能货币,它抽象化了执行 Azure Cosmos DB 支持的数据库操作所需的系统资源,例如 CPU、IOPS 和内存。 不管使用哪个 API 与 Azure Cosmos DB 容器交互,成本始终以请求单位 (RU) 来计量。 无论数据库操作是写入、点读取还是查询,都始终以 RU 来计量成本。 若要了解详细信息,请参阅请求单位和注意事项一文。
本文介绍如何通过不同的方式,来查找针对 Azure Cosmos DB for MongoDB 中的容器执行的任何操作所消耗的请求单位 (RU)。 如果使用的是不同的 API,请参阅 API for NoSQL、API for Cassandra、API for Gremlin 和 API for Table 这几篇文章,查看 RU/秒费用。
RU 费用通过一个名为getLastRequestStatistics的自定义数据库命令公开。 该命令返回一个文档,其中包含上次执行的操作的名称、其请求费用和持续时间。 如果使用 Azure Cosmos DB for MongoDB,则可以通过多个选项来检索 RU 费用。
使用 Azure 门户
登录到 Azure 门户。
创建新的 Azure Cosmos DB 帐户并在其中植入数据,或选择一个已包含数据的现有帐户。
转到 “数据资源管理器” 窗格,然后选择要使用的容器。
选择容器名称旁边的“...”,然后选择“新建查询” 。
输入有效的查询,然后选择“ 执行查询”。
选择 “查询统计信息 ”以显示所执行请求的实际请求费用。 此查询编辑器允许您仅针对查询谓词运行查询并查看请求单位费用。 不能将此编辑器用于数据操作命令(例如 insert 语句)。
若要获取数据操作命令的请求费用,请在基于 shell 的 UI(如 Mongo shell、
getLastRequestStatistics、MongoDB Compass 或支持 shell 脚本的 VS Code 扩展)中运行 命令。db.runCommand({getLastRequestStatistics: 1})
通过编程
使用 Mongo shell 时,可以使用 runCommand() 执行命令。
db.runCommand('getLastRequestStatistics')
后续步骤
若要了解如何优化 RU 消耗量,请参阅以下文章:
- Azure Cosmos DB 中的请求单位和吞吐量
- 在 Azure Cosmos DB 中优化预配的吞吐量成本
- 优化 Azure Cosmos DB 中的查询成本
- 尝试为迁移到 Azure Cosmos DB 进行容量规划? 可以使用有关现有数据库群集的信息进行容量规划。
- 如果你只知道现有数据库群集中的 vCore 和服务器数量,请阅读根据 vCore 或 vCPU 数量估算请求单位数
- 如果您知道当前数据库工作负荷的典型请求速率,请阅读有关使用 Azure Cosmos DB 容量规划工具来估计请求单位的文章