如何在mongodbapi中不指定分片键的情况下执行查询?如何跨分区查询?

时间:2018-07-24 17:23:48

标签: azure azure-cosmosdb azure-cosmosdb-mongoapi

如何在不mongodb api中指定分片键的情况下执行查询?如何跨分区查询?

在sql api中,可以通过在请求上将EnableCrossPartitionQuery设置为true来启用后者,但是我找不到mongodb api那样的东西。现在,我在unsharded集合上执行的查询失败了(指定分片键的查询按预期工作)。

无论是使用扩展名AsQueryable还是使用聚合框架,查询都会毫无区别地失败。

2 个答案:

答案 0 :(得分:2)

据我所知,在CosmosDB Mongo API中没有类似EnableCrossPartitionQuery的属性。实际上,CosmosDB是独立的服务器实现,无法直接与MongoDB服务器版本和功能保持一致。

CosmosDB支持MongoDB API的子集,并将请求转换为CosmosDB SQL等效项。 CosmosDB有一些不同的行为和结果,特别是与MongoDB的分片相比,它们实现了分区。但是CosmosDB有责任改进他们对MongoDB的仿真。

当然,您可以添加反馈here以获得官方帮助,或者,如果需要完整的MongoDB功能支持,可以考虑在Azure上使用MongoDB Atlas

希望它对您有帮助。

答案 1 :(得分:1)

已确认产品小组的错误!如果在同一时间遇到任何相同问题,将在9月的前两周修复。