Compartilhar via

查找 Azure Cosmos DB for Apache Cassandra 中执行的操作的请求单位费用

适用对象: 卡珊德拉

重要

你是否正在寻找一种数据库解决方案,以应对需要高扩展性、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 Apache Cassandra 中的容器执行的任何操作所消耗的请求单位 (RU)。

针对 Azure Cosmos DB for Apache Cassandra 执行操作时,RU 费用将在传入的有效负载中以名为 RequestCharge 的字段形式返回。 可以使用多个选项来检索 RU 费用。

使用 Cassandra 驱动程序

使用 .NET SDK 时,可以在 Info 对象的 RowSet 属性下检索传入的有效负载:

RowSet rowSet = session.Execute("SELECT table_name FROM system_schema.tables;");
double requestCharge = BitConverter.ToDouble(rowSet.Info.IncomingPayload["RequestCharge"].Reverse().ToArray(), 0);

有关详细信息,请参阅快速入门:使用 .NET SDK 和 Azure Cosmos DB 生成 Cassandra 应用

后续步骤

若要了解如何优化 RU 消耗量,请参阅以下文章: