Search code examples
azure-cosmosdbdatabase-performanceazure-cosmosdb-sqlapi

High request-charge for very simple query in Azure Cosmos DB (SQL API)


In Azure Cosmos DB (SQL API) the following query charges 9356.66 RU's:

SELECT * FROM Core c WHERE c.id = @id -- @id is a GUID

In contrast the following more complex query charges only 6.84 RU's:

SELECT TOP 10 * FROM Core c WHERE c.type = "Agent"

The documents in both examples are pretty small having a handful of attributes. Also the document collection does not use any custom indexing policy. The collection contains 105685 documents.

To me this sounds as if there is no properly working index on the "id" field in place.

How is this possible and how can this be fixed?

Updates:

  • Without the TOP keyword the second query charges 3516.35 RU's and returns 100000 records.
  • The partition key is "/partition" and its values are 0 or 1 (evenly distributed).

Solution

  • I assume the solution is the same as posted here: Azure DocumentDB Query by Id is very slow

    I will close my own question once I am able to verify this with Microsoft Support.