我有一个设置为400 RU / s的cosmosGB gremlin API。如果我必须运行需要800 RU的查询,这是否意味着此查询需要2秒钟的时间来执行?如果我将吞吐量提高到1600 RU / s,此查询是否会在半秒钟内执行?通过使用RU,我看不到查询性能有任何重大变化。
正如我在一个不同的,但有些相关答案解释这里,请求单位被分配一个每秒的基础上。如果给定的查询将花费比该一秒钟窗口中可用的请求单位数更多的费用:
假设你的速度为400 RU /秒,而你执行的查询费用为800 RU。它会完成,但随后你将负债约2秒钟(每秒400 RU,乘以2秒钟)。在这一点上,你将不再受限制。
查询执行的速度不取决于分配的RU数量。无论你的速度为1,000 RU /秒或100,000 RU /秒,查询都将在相同的时间量内运行(除了任何限制时间之外,查询都无法最初运行)。因此,除了节流之外,无论RU数如何,你的800 RU查询都将持续运行。
很有道理,谢谢。因此,如果我有要运行的批处理作业(更多RU),那么请确保在非高峰时段运行这些作业,以确保在正常工作时间内不会节流客户,这是一个好主意吗?换句话说,如果我可以在非高峰时段进行一些停机,那么我可以将吞吐量保持在最低水平,而在非高峰时段运行昂贵的停机吗?
@MichaelScott-说实话,您分配流量的方式取决于您。但是,如果我处于您的位置,则可能会在高峰时段增加RU容量,而在非高峰时段则减少。您在RU分配方面具有完全的灵活性-您可以随时对其进行调整。只需考虑额外的几百RU的成本-可以忽略不计,甚至如果每天只增加一小部分的RU,则可以忽略不计。