Repository: ambari Updated Branches: refs/heads/trunk 86638417e -> 9e5647d99
AMBARI-11317. Avoid Client side merge sort on aggregator queries. (swagle) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/9e5647d9 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/9e5647d9 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/9e5647d9 Branch: refs/heads/trunk Commit: 9e5647d99cbaec20878017cc53e1373e88965c20 Parents: 8663841 Author: Siddharth Wagle <swa...@hortonworks.com> Authored: Thu May 21 13:31:57 2015 -0700 Committer: Siddharth Wagle <swa...@hortonworks.com> Committed: Thu May 21 13:37:47 2015 -0700 ---------------------------------------------------------------------- .../aggregators/TimelineMetricClusterAggregatorMinute.java | 3 ++- .../timeline/aggregators/TimelineMetricHostAggregator.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/9e5647d9/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricClusterAggregatorMinute.java ---------------------------------------------------------------------- diff --git a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricClusterAggregatorMinute.java b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricClusterAggregatorMinute.java index 9b51f98..fdcd720 100644 --- a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricClusterAggregatorMinute.java +++ b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricClusterAggregatorMinute.java @@ -94,10 +94,11 @@ public class TimelineMetricClusterAggregatorMinute extends AbstractTimelineAggre condition.setStatement(String.format(GET_METRIC_SQL, PhoenixTransactSQL.getNaiveTimeRangeHint(startTime, NATIVE_TIME_RANGE_DELTA), METRICS_RECORD_TABLE_NAME)); + // Retaining order of the row-key avoids client side merge sort. condition.addOrderByColumn("METRIC_NAME"); condition.addOrderByColumn("HOSTNAME"); - condition.addOrderByColumn("APP_ID"); condition.addOrderByColumn("SERVER_TIME"); + condition.addOrderByColumn("APP_ID"); return condition; } http://git-wip-us.apache.org/repos/asf/ambari/blob/9e5647d9/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricHostAggregator.java ---------------------------------------------------------------------- diff --git a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricHostAggregator.java b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricHostAggregator.java index 796cb72..37ddeb3 100644 --- a/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricHostAggregator.java +++ b/ambari-metrics/ambari-metrics-timelineservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/metrics/timeline/aggregators/TimelineMetricHostAggregator.java @@ -68,11 +68,12 @@ public class TimelineMetricHostAggregator extends AbstractTimelineAggregator { condition.setStatement(String.format(GET_METRIC_AGGREGATE_ONLY_SQL, PhoenixTransactSQL.getNaiveTimeRangeHint(startTime, nativeTimeRangeDelay), tableName)); + // Retaining order of the row-key avoids client side merge sort. condition.addOrderByColumn("METRIC_NAME"); condition.addOrderByColumn("HOSTNAME"); + condition.addOrderByColumn("SERVER_TIME"); condition.addOrderByColumn("APP_ID"); condition.addOrderByColumn("INSTANCE_ID"); - condition.addOrderByColumn("SERVER_TIME"); return condition; }