让我们假设:
- 有一个包含1000个文档的逻辑分区
- 有一个查询只涉及单个逻辑分区
- 查询产生10个结果
问题:如果容器中的其他逻辑分区中有10000或10000000个文档未被查询触及,那么完全相同的查询成本是否相同?
这取决于情况。一般来说,如果查询正确地利用了索引,那么无论容器中有多少数据,查询的成本都应该相同(假设是单分区查询(。
但是,如果查询对数据执行完全扫描,则容器中的数据越多,则针对相同数量的返回结果的查询就越昂贵。您可以在这篇索引用法文章中了解更多信息。
现在,您可以在查询中获得Cosmos DB中是否使用了正确索引的指标。要了解有关如何启用和使用这些指标的更多信息,请参阅Azure Cosmos DB 中的索引指标