如何减少cosmos db中RU的计数成本?

时间:2019-03-05 21:26:51

标签: azure-cosmosdb

似乎在cosmos db集合中查询COUNT的开销更大,因为它以线性方式计数的行数。

因此,当我们使用产生10的过滤器计数时,大约为4 RU。 但是,当更换过滤器时,结果为10k,则为350 RUs。

我们使用的样本数量查询:

SELECT COUNT(1) FROM c WHERE c.type == "mytype" and c.partition == "mypartition"

注意:它们都在同一分区中。

我们错过了什么吗?有办法提高成本吗?

如果我们退还文件而不只是数量,则RU成本几乎相同。

更新:

基于计数结果的不同查询的指标:

计数:9518

Retrieved Document Count                 :           9,518
Retrieved Document Size                  :       8,285,200 bytes
Output Document Count                    :               1
Output Document Size                     :              53 bytes
Index Utilization                        :            0.00 %
Total Query Execution Time               :           92.01 milliseconds
  Query Preparation Times
    Query Compilation Time               :            0.10 milliseconds
    Logical Plan Build Time              :            0.06 milliseconds
    Physical Plan Build Time             :            0.05 milliseconds
    Query Optimization Time              :            0.00 milliseconds
  Index Lookup Time                      :            0.15 milliseconds
  Document Load Time                     :           61.74 milliseconds
  Runtime Execution Times
    Query Engine Execution Time          :           29.66 milliseconds
    System Function Execution Time       :            0.00 milliseconds
    User-defined Function Execution Time :            0.00 milliseconds
  Document Write Time                    :            0.01 milliseconds
  Client Side Metrics
    Retry Count                          :               0
    Request Charge                       :          319.42 RUs

  Partition Execution Timeline
  ┌────────────┬────────────────┬───────────────┬──────────────────┬───────────────────┬───────────┐
  │Partition Id│Start Time (UTC)│End Time (UTC) │Duration (ms)     │Number of Documents│Retry Count│
  ├────────────┼────────────────┼───────────────┼──────────────────┼───────────────────┼───────────┤
  │           0│ 01:04:32.263666│01:04:32.500449│            236.78│                  1│          0│
  └────────────┴────────────────┴───────────────┴──────────────────┴───────────────────┴───────────┘

  Scheduling Metrics
  ┌────────────┬────────────────────┬────────────────────┬────────────────────┬────────────────────┬─────────────────────┐
  │Partition Id│Response Time (ms)  │Run Time (ms)       │Wait Time (ms)      │Turnaround Time (ms)│Number of Preemptions│
  ├────────────┼────────────────────┼────────────────────┼────────────────────┼────────────────────┼─────────────────────┤
  │           0│               13.18│              236.50│               14.20│              250.70│                    1│
  └────────────┴────────────────────┴────────────────────┴────────────────────┴────────────────────┴─────────────────────┘

数量:27

Retrieved Document Count                 :              27
Retrieved Document Size                  :         100,813 bytes
Output Document Count                    :               1
Output Document Size                     :              51 bytes
Index Utilization                        :            3.70 %
Total Query Execution Time               :            1.29 milliseconds
  Query Preparation Times
    Query Compilation Time               :            0.14 milliseconds
    Logical Plan Build Time              :            0.05 milliseconds
    Physical Plan Build Time             :            0.05 milliseconds
    Query Optimization Time              :            0.01 milliseconds
  Index Lookup Time                      :            0.15 milliseconds
  Document Load Time                     :            0.55 milliseconds
  Runtime Execution Times
    Query Engine Execution Time          :            0.13 milliseconds
    System Function Execution Time       :            0.00 milliseconds
    User-defined Function Execution Time :            0.00 milliseconds
  Document Write Time                    :            0.01 milliseconds
  Client Side Metrics
    Retry Count                          :               0
    Request Charge                       :            4.46 RUs

  Partition Execution Timeline
  ┌────────────┬────────────────┬───────────────┬──────────────────┬───────────────────┬───────────┐
  │Partition Id│Start Time (UTC)│End Time (UTC) │Duration (ms)     │Number of Documents│Retry Count│
  ├────────────┼────────────────┼───────────────┼──────────────────┼───────────────────┼───────────┤
  │           0│ 01:04:50.216685│01:04:50.369771│            153.09│                  1│          0│
  └────────────┴────────────────┴───────────────┴──────────────────┴───────────────────┴───────────┘

  Scheduling Metrics
  ┌────────────┬────────────────────┬────────────────────┬────────────────────┬────────────────────┬─────────────────────┐
  │Partition Id│Response Time (ms)  │Run Time (ms)       │Wait Time (ms)      │Turnaround Time (ms)│Number of Preemptions│
  ├────────────┼────────────────────┼────────────────────┼────────────────────┼────────────────────┼─────────────────────┤
  │           0│               13.97│              152.79│               14.95│              167.74│                    1│
  └────────────┴────────────────────┴────────────────────┴────────────────────┴────────────────────┴─────────────────────┘

0 个答案:

没有答案