Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
0.5.0
-
None
-
MacOSX 10.8, Java 6
Description
It would be nice to monitor some of the metrics as heatmap for visualize resource utilization distribution. For example, cpu usage over time can be visualized with cpu listed in y axis, and time in x axis. This provides the ability to identify the work distribution on the cluster over time.
The rest api for query HBase data can be summarized to:
Request:
GET /hicc/v1/heatmap/{table}/{family}/{columnPrefix}
Query parameters:
start = start time
end = end time
max = maximum possible value for a metric
scale = scale the metric to a number than original, such as scaling 0 to 1 to 0% to 100%
height = height of the canvas to calculate y axis scaling of metric series
Response in JSON:
{ data: [ { x: 0, y: 0, count: 70 }, { x: 0, y: 1, count: 90 }, .. ], max: 100, radius: 10, series: 10 }
Where max is the max possible value. Radius is to scale how big the data point should be. Series is to calculate how many actual series is queried from HBase.
For visualization widget, create a JSP that can draw heatmap on canvas.
/hicc/jsp/heatmap.jsp
Query Parameters:
title = Title of the legend
url = REST API to fetch data
width = Width of the visualization
height = Height of the visualization
yLabel = Label of Y Axis