DocumentDB:阅读时请求费用低吗?

DocumentDB: Low request charge when reading?

我有一个文件,大约 9Kb,有超过 250 个属性。

查询时(通过唯一标识符属性),花费的总请求费用仅为 3 RU 左右。

根据 MSDN,我预计会更高:

A single request unit represents the processing capacity required to read (via self link) a single 1KB JSON document consisting of 10 unique property values. The request unit charge assumes a consistency level set to the default “Session” and all of documents automatically indexed.

该集合设置为使用默认索引(所有内容都已编制索引)并且正在使用会话一致性。

谁能解释一下为什么收费这么低?

DocumentDB 的请求费用是对完成操作所需的 CPU、IO 和内存的抽象。不幸的是,没有用于计算请求费用的固定公式。

需要指出的是,请求费用与文档大小成对数关系而不是线性关系。

其他一些可能影响这一点的因素包括(文档大小除外):

  • 操作类型
  • 文档属性计数
  • 一致性水平
  • 索引属性数
  • 索引设置

您还应该注意到,DocumentDb 正在缩小您的文档。

您可以使用 CosmosDB RU 计算器,它可以为您提供有关在 read/write 操作期间可能产生的 RU 费用的非常准确的结果。

PS - Azure 始终进行优化,因此您获得的 RU 费用总是低于您的预期;)