• Type: Icon: Sub-task Sub-task
    • Resolution: Won't Do
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • QE 2024-04-15, QE 2024-04-29, QE 2024-05-13

      Relates to https://jira.mongodb.org/browse/SERVER-88593

      Seems this will tie in with non-blocked HashAgg as well - it may be the case that flipping the switch for one requires flipping the switch for both.

      All latencies provided are "hot" runs - second/third/fourth runtimes. featureFlagBlockBasedDecodingScalarAPI is true and internalQueryFrameworkControl is trySbeEngine for all runs.

      |-----------------------+-------+-------|
      | query                 | flat? |    ms |
      |-----------------------+-------+-------|
      | single_groupby_mht    | yes   |  6622 |
      | single_groupby_mht    | yes   |  6654 |
      | single_groupby_mht    | yes   |  6679 |
      |-----------------------+-------+-------|
      | single_groupby_mht    | no    |  6625 |
      | single_groupby_mht    | no    |  6640 |
      | single_groupby_mht    | no    |  6653 |
      |-----------------------+-------+-------|
      | cpu_max_all_ht        | yes   | 12831 |
      | cpu_max_all_ht        | yes   | 12863 |
      | cpu_max_all_ht        | yes   | 12798 |
      |-----------------------+-------+-------|
      | cpu_max_all_ht        | no    | 12717 |
      | cpu_max_all_ht        | no    | 12705 |
      | cpu_max_all_ht        | no    | 12708 |
      |-----------------------+-------+-------|
      | double_groupby_m      | yes   | 42741 |
      | double_groupby_m      | yes   | 43093 |
      | double_groupby_m      | yes   | 42386 |
      |-----------------------+-------+-------|
      | double_groupby_m      | no    | 42610 |
      | double_groupby_m      | no    | 42829 |
      | double_groupby_m      | no    | 42824 |
      |-----------------------+-------+-------|
      | groupby_orderby_limit | yes   |  7123 |
      | groupby_orderby_limit | yes   |  7121 |
      | groupby_orderby_limit | yes   |  7111 |
      |-----------------------+-------+-------|
      | groupby_orderby_limit | no    |  7331 |
      | groupby_orderby_limit | no    |  7348 |
      | groupby_orderby_limit | no    |  7301 |
      |-----------------------+-------+-------|
       
      where
       
      const single_groupby_mht = [
        {"$match":{"measurement":"cpu",}},
        {"$group":{
      "_id":{"$dateTrunc":{"date":"$time","unit":"minute"}},
      "max_usage_user":{"$max":"$usage_user"} // M = 1
        }},
        {"$sort":{"_id":1}}
      ];
       
      const cpu_max_all_ht = [
        {"$match":{"measurement":"cpu",}},
        {"$group":{
          "_id":{"$dateTrunc":{"date":"$time","unit":"hour"}},
          "max_usage_idle":{"$max":"$usage_idle"},
          "max_usage_irq":{"$max":"$usage_irq"},
          "max_usage_softirq":{"$max":"$usage_softirq"},
          "max_usage_steal":{"$max":"$usage_steal"},
          "max_usage_guest":{"$max":"$usage_guest"},
          "max_usage_guest_nice":{"$max":"$usage_guest_nice"},
          "max_usage_nice":{"$max":"$usage_nice"},
          "max_usage_user":{"$max":"$usage_user"},
          "max_usage_system":{"$max":"$usage_system"},
          "max_usage_iowait":{"$max":"$usage_iowait"}
        }},
        {"$sort":{"_id":1}}
      ];
       
       
      const double_groupby_m = [
        {"$match":{"measurement":"cpu"}},
        {"$group":{
      "_id":{"time":{"$dateTrunc":{"date":"$time","unit":"hour"}},"hostname":"$tags.hostname"},
      "avg_usage_softirq":{"$avg":"$usage_softirq"},
      "avg_usage_steal":{"$avg":"$usage_steal"},
      "avg_usage_guest":{"$avg":"$usage_guest"},
      "avg_usage_user":{"$avg":"$usage_user"},
      "avg_usage_system":{"$avg":"$usage_system"},
      "avg_usage_iowait":{"$avg":"$usage_iowait"},
      "avg_usage_irq":{"$avg":"$usage_irq"},
      "avg_usage_nice":{"$avg":"$usage_nice"},
      "avg_usage_idle":{"$avg":"$usage_idle"},
      "avg_usage_guest_nice":{"$avg":"$usage_guest_nice"}
        }},
        {"$sort":{"_id.time":1,"_id.hostname":1}}
      ];
       
       
      const groupby_orderby_limit = [
        {"$match":{
          "measurement":"cpu",
          "time":{"$gte": new Date("2016-01-01T00:00:00.000Z"),"$lt": new Date("2016-01-24T20:11:07.101Z")} 
        }},
        {"$group":{
          "_id":{"$dateTrunc":{"date":"$time","unit":"minute"}},
          "max_value":{"$max":"$usage_user"}
        }},
        {"$sort":{"_id":-1}},
        {"$limit":5}
      ];

            Assignee:
            evan.bergeron@mongodb.com Evan Bergeron
            Reporter:
            evan.bergeron@mongodb.com Evan Bergeron
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: