GET 与查询 Cosmos DB 中的分区键和项目键
GET vs Query on Partition Key and Item Key in Cosmos DB
我在 best practices for query performance 上阅读 Cosmos DB 文档,发现以下内容不明确:
With Azure Cosmos DB, typically queries perform in the following order
from fastest/most efficient to slower/less efficient.
- GET on a single partition key and item key
- Query with a filter clause on a single partition key
- Query without an equality or range filter clause on any property
- Query without filters
"GET on a single partition key and item key" 和 "QUERY on a single partition key and item key" 之间的性能或 RU 是否存在差异。我不完全清楚这属于案例 #1 还是案例 #2 还是介于两者之间。
基本上,我是在问我们是否需要使用 GET。文档似乎没有在任何地方阐明这一点。
直接 GET 会更快。如文档所述,一个 1K 的文档应该花费 1 RU 来检索。当您使用查询引擎时,查询的 RU 成本会更高。
一个警告:使用直接读取 (GET),您将检索整个文档。通过查询,您可以选择属性的投影。对于非常大的文档,这可能会在使用查询时为您的应用节省大量带宽。
我在 best practices for query performance 上阅读 Cosmos DB 文档,发现以下内容不明确:
With Azure Cosmos DB, typically queries perform in the following order from fastest/most efficient to slower/less efficient.
- GET on a single partition key and item key
- Query with a filter clause on a single partition key
- Query without an equality or range filter clause on any property
- Query without filters
"GET on a single partition key and item key" 和 "QUERY on a single partition key and item key" 之间的性能或 RU 是否存在差异。我不完全清楚这属于案例 #1 还是案例 #2 还是介于两者之间。
基本上,我是在问我们是否需要使用 GET。文档似乎没有在任何地方阐明这一点。
直接 GET 会更快。如文档所述,一个 1K 的文档应该花费 1 RU 来检索。当您使用查询引擎时,查询的 RU 成本会更高。
一个警告:使用直接读取 (GET),您将检索整个文档。通过查询,您可以选择属性的投影。对于非常大的文档,这可能会在使用查询时为您的应用节省大量带宽。