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)