• Type: New Feature
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Optimization
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Currently we measure planning and execution time per query shape in the metrics:

       

      metrics.totalExecMicros.[min|max|sum|sumOfSquares]
      metrics.queryPlanner.planningTimeMicros.[min|max|sum|sumOfSquares]
      

      Introduce additional metrics for different plan selection strategies.

      This can be similar to the queryLatencies metrics in serverStatus(): multiPlanner, costBased, singlePlan, cachedPlan, express. For each planning strategy add its count and exec and planning time aggregated statistics. For instance:

      metrics.queryPlanner.costBased.count
      metrics.queryPlanner.costBased.planningTimeMicros.[min|max|sum|sumOfSquares]
      metrics.costBased.totalExecMicros.[min|max|sum|sumOfSquares]

      Adding histograms instead of aggregated statistics is expected to be too high overhead.

      If we need to reduce the number of new metrics, as a minimum we should introduce the metrics for the costBased plan ranker.

            Assignee:
            Unassigned
            Reporter:
            Milena Ivanova
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: