Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-16412

Support TopN queries in AMS

    XMLWordPrintableJSON

Details

    • Task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.2.2
    • 2.4.0
    • ambari-metrics
    • None

    Description

      TopN is a useful feature in analyzing and finding the outlier in large clusters.

      2 Use Cases where meant to be solved through this story.
      Display the series for Top N hosts for a specific metric.
      Display the Top N metrics (Users / HBase table metrics) for a given host or aggregated across all hosts

      To facilitate the above, the following are supported.
      > Top "N" hosts when 1 metric is requested for "H" hosts.
      > Top "N" metrics when "M" metrics (or a pattern) are requested for 0 or 1 hosts.
      > Default TopN Hosts when More than a specific value of hosts are requested. Default = 20. Configurable through ams-site config (timeline.metrics.default.topn.hosts.limit)

      TopN API Example

      http://<AMS_HOST>:6188/ws/v1/timeline/metrics?metricNames=cpu_system._avg&hostname=h1,h2,h3,h4,h5&appId=HOST&startTime=1462879340&endTime=1462900940&topN=2&topNFunction=avg&isBottomN=false
      

      Added parameters
      topN - Mandatory parameter for TopN query which denotes the number of series to be returned.
      topNFunction - Optional parameter to specificy the comparator function for comparing 2 series while ordering. Default = max, Valid Values (max,avg,sum)
      isBottomN - Optional parameter. If bottom N series are required instead of top N. Default = false.

      Attachments

        1. AMBARI-16412-4.patch
          58 kB
          Aravindan Vijayan

        Issue Links

          Activity

            People

              avijayan Aravindan Vijayan
              avijayan Aravindan Vijayan
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: