You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Siddharth Wagle (JIRA)" <ji...@apache.org> on 2015/09/02 21:39:45 UTC
[jira] [Created] (AMBARI-12983) Optimize aggregator queries by
performing GROUP BY on server
Siddharth Wagle created AMBARI-12983:
----------------------------------------
Summary: Optimize aggregator queries by performing GROUP BY on server
Key: AMBARI-12983
URL: https://issues.apache.org/jira/browse/AMBARI-12983
Project: Ambari
Issue Type: Task
Components: ambari-metrics
Affects Versions: 2.1.1
Reporter: Siddharth Wagle
Assignee: Siddharth Wagle
Priority: Critical
Fix For: 2.1.2
Query to do calculate host level time aggregates.
*Sample*
{code}
select SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN), METRIC_NAME, HOSTNAME, APP_ID from METRIC_RECORD WHERE METRIC_NAME IN ('bytes_in','rpc.rpc.RpcAuthorizationSuccesses') SERVER_TIME > 1440106830000 AND SERVER_TIME < 1440106950000 GROUP BY METRIC_NAME, HOSTNAME, APP_ID limit 50;
0: jdbc:phoenix:localhost:61181:/hbase> select SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN), METRIC_NAME, HOSTNAME, APP_ID from METRIC_RECORD WHERE METRIC_NAME IN ('bytes_in','rpc.rpc.RpcAuthorizationSuccesses') AND SERVER_TIME > 1440106830000 AND SERVER_TIME < 1440106950000 GROUP BY METRIC_NAME, HOSTNAME, APP_ID limit 50;
+-----------------+-------------------+-----------------+-----------------+-------------+------------+------------+
| SUM(METRIC_SUM) | SUM(METRIC_COUNT) | MAX(METRIC_MAX) | MIN(METRIC_MIN) | METRIC_NAME | HOSTNAME | APP_ID |
+-----------------+-------------------+-----------------+-----------------+-------------+------------+------------+
| 1546242.5521201263 | 24 | 564689.2744108599 | 616.7147803365921 | bytes_in | ams-test-1.c.pramod-thangali.internal | HOST |
| 1521023.3303401857 | 24 | 825825.3247578086 | 220.66636815664341 | bytes_in | ams-test-2.c.pramod-thangali.internal | HOST |
| 153685.92452883872 | 24 | 25389.11630078307 | 448.15683323834327 | bytes_in | ams-test-3.c.pramod-thangali.internal | HOST |
| 0.0 | 14 | 0.0 | 0.0 | rpc.rpc.RpcAuthorizationSuccesses | ams-test-1.c.pramod-thangali.internal | datanode |
| 17.0 | 14 | 2.0 | 0.0 | rpc.rpc.RpcAuthorizationSuccesses | ams-test-1.c.pramod-thangali.internal | namenode |
| 0.0 | 14 | 0.0 | 0.0 | rpc.rpc.RpcAuthorizationSuccesses | ams-test-2.c.pramod-thangali.internal | datanode |
+-----------------+-------------------+-----------------+-----------------+-------------+------------+------------+
{code}
*Query plan*:
{code}
0: jdbc:phoenix:localhost:61181:/hbase> explain select SUM(METRIC_SUM), SUM(METRIC_COUNT), MAX(METRIC_MAX), MIN(METRIC_MIN), METRIC_NAME, HOSTNAME, APP_ID from METRIC_RECORD WHERE SERVER_TIME > 1440106830000 AND SERVER_TIME < 1440106950000 GROUP BY METRIC_NAME, HOSTNAME, APP_ID;
+------------+
| PLAN |
+------------+
| CLIENT PARALLEL 1-WAY FULL SCAN OVER METRIC_RECORD |
| SERVER FILTER BY (SERVER_TIME > 1440106830000 AND SERVER_TIME < 1440106950000) |
| SERVER AGGREGATE INTO DISTINCT ROWS BY [METRIC_NAME, HOSTNAME, APP_ID] |
| CLIENT MERGE SORT |
+------------+
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)