gpt4 book ai didi

azure - DocumentDB 查询需要意外的高 RU

转载 作者:行者123 更新时间:2023-12-03 01:53:28 24 4
gpt4 key购买 nike

我在 S3 文档集合中存储了大约 200MB 的数据(最大的一个)。每个文档大小约为 300KB。

但是当我运行查询时,我惊讶地发现它需要 7245.81 RU。由于 S3 的速度为 2500 RU/秒,因此该性能无法针对我的应用程序进行扩展。

我只是想问一下我是否做错了什么,是否有什么可以改进的地方?

我的查询是这样的:

SELECT item.Id,item.Priority, va.something, wa.something... 11 fields in total
FROM model.Item item
JOIN va in item.Content.Children
JOIN wa in va.Children
WHERE item.State != 5

我使用“Range”作为索引类型。这会影响该查询的性能吗?

最佳答案

使用 != 的查询将需要扫描,因为必须查找所有索引条目以消除不等于 5 的值。这将导致高 RU。只要有可能,请尝试将查询重写为等式或范围查询。

  1. 如果 item.State 的可能取值数量有限,例如 1-10,则可以使用 IN 枚举有效值,即 item.State IN (1,2,3,4,6,7 ,8,9,10)
  2. 如果不可能,请使用范围,例如 item.State > 5 或 item.State < 5,如上面 Larry 建议的那样。

希望这有帮助。如果您想进行更详细的讨论,请通过 microsoft dot com 的 arramac 向我发送电子邮件。

关于azure - DocumentDB 查询需要意外的高 RU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30541280/

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