gpt4 book ai didi

Azure、DocumentDB、Count 给出不正确的结果

转载 作者:行者123 更新时间:2023-12-03 03:07:36 25 4
gpt4 key购买 nike

在 documentDB 集合上,在门户中我运行下一个查询:

SELECT * FROM c WHERE NOT IS_DEFINED(c.UserDataType)

返回一些结果。

现在运行此查询:

SELECT count(1) FROM c WHERE NOT IS_DEFINED(c.UserDataType)

返回此结果:

[ { "$1": 0 } ]

怎么会这样?

可能有帮助的一件事是,当在门户中运行查询时,会发生一些延续

enter image description here

最佳答案

DocumentDB 在两个方面与传统数据库不同 - 1) 它对所有请求的延迟上限为 5 秒,因为它是基于 HTTPS 和 REST 的云服务,2) 它是一个具有预配置吞吐量的数据库,因此您可以获得可预测的性能(这很棒),但必须在预留的资源预算内执行查询。

这意味着某些查询可以取得增量进展,并且您必须通过使用继续标记重新提交查询来恢复执行,直到所有结果都可用。对于聚合查询,DocumentDB 的工作方式类似于“map-reduce”,部分聚合结果返回给客户端,客户端负责生成最终结果(例如对聚合求和)。通常,您不会注意到这种行为,因为查询在一次往返中完成,但您会注意到查询何时需要扫描才能执行(就像在这个原因中,因为它涉及 NOT IS_DEFINED 子句的否定)。

如果您运行查询完成,您将看到返回的正确结果。

关于Azure、DocumentDB、Count 给出不正确的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42971171/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com