Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure 获取Cosmos数据库中分区键和项键的vs查询_Azure_Azure Cosmosdb_Azure Cosmosdb Sqlapi - Fatal编程技术网

Azure 获取Cosmos数据库中分区键和项键的vs查询

Azure 获取Cosmos数据库中分区键和项键的vs查询,azure,azure-cosmosdb,azure-cosmosdb-sqlapi,Azure,Azure Cosmosdb,Azure Cosmosdb Sqlapi,我在网上阅读Cosmos DB文档,发现以下内容模棱两可: 对于Azure Cosmos DB,查询通常按以下顺序执行 从最快/效率最高到较慢/效率较低 使用单个分区键和项键 在单个分区键上使用筛选子句进行查询 在任何属性上没有相等或范围筛选器子句的查询 不带过滤器的查询 “获取单个分区键和项键”与“查询单个分区键和项键”之间的性能或RU是否存在差异。我不完全清楚这是属于案例1还是案例2,或者介于两者之间 基本上,我是在问我们是否需要使用GET。文档似乎没有在任何地方阐明这一点。直接获取会更

我在网上阅读Cosmos DB文档,发现以下内容模棱两可:

对于Azure Cosmos DB,查询通常按以下顺序执行 从最快/效率最高到较慢/效率较低

  • 使用单个分区键和项键
  • 在单个分区键上使用筛选子句进行查询
  • 在任何属性上没有相等或范围筛选器子句的查询
  • 不带过滤器的查询
“获取单个分区键和项键”与“查询单个分区键和项键”之间的性能或RU是否存在差异。我不完全清楚这是属于案例1还是案例2,或者介于两者之间


基本上,我是在问我们是否需要使用GET。文档似乎没有在任何地方阐明这一点。

直接获取会更快。如文件所述,检索1K文档需要花费1RU。当您使用查询引擎时,查询的RU成本会更高


一个警告:通过直接读取(GET),您将检索整个文档。通过查询,可以选择属性的投影。对于非常大的文档,在使用查询时,这可能会大大节省应用程序的带宽。

直接获取会更快。如文件所述,检索1K文档需要花费1RU。当您使用查询引擎时,查询的RU成本会更高


一个警告:通过直接读取(GET),您将检索整个文档。通过查询,可以选择属性的投影。对于非常大的文档,在使用查询时,这可能会大大节省应用程序的带宽。

这是一个很好的解释。顺便说一句,我最终在文档中找到了一条关于这一点的声明:“读取资源是从数据库获取资源的最有效方法。如果您知道资源的ID,请执行读取而不是按ID进行查询“()”这是一个很好的解释。顺便说一句,我最终在文档中找到了一条关于这一点的声明:“读取资源是从数据库获取资源的最有效的方法。如果您知道资源的ID,请执行读取操作,而不是按ID“()