Hi,
If we take the same approach as with tags query language, then some sort
of SQL is probably what we'll want - combined with some window functions
for time series handling (introduced in SQL:2003). We could perhaps take
Apache Calcite as a SQL query engine and implement the necessary
functions there - as an example or as a prototype (I don't know the
resource requirements of Calcite, but at least we would "easily" get a
proper SQL functionality). That same approach is used by Spark SQL to
implement SQL query language there (and few other products).
The other approach is to also look at some time series query languages
that the research has invented who knows how many (none of them have
gathered attention - but that doesn't necessarily mean they're bad, just
that they were never part of any product).
- Micke
On 04/18/2017 01:10 AM, Benjamin Heiskell wrote:
Hey all,
I recently deployed Hawkular because I found its scaling model
appealing. It has been working well for our basic monitoring usage
when combined with Grafana.
One of my consumers is trying to graph KPIs that involve cross-metric
mathematics like sums, division, and moving averages (i.e.,
post-ingress transformations). I looked into how to accomplish this
with Hawkular, but I didn't see any obvious way to do it. The stats
endpoint seems to only support aggregations on a single metric/tag at
a time. I'm finding that we can't visualize these metrics the same way
you can with other TSDBs like Graphite/Prometheus.
I did a little research, and found Heiko Rupp's blog post on HawkFX
where he seems to already be exploring this idea [1]. Perhaps the
query language item on the 2017 road map refers to incorporating this?
I would like to assist in developing this feature. Given that there is
already a tags DSL, it seems like it would make sense to extend that
to support metric transformations.
Grafana is also considering adding this to Grafana itself, but it
doesn't look like the ticket has any traction [2]. Additionally,
shipping potentially megabytes of data to Grafana (or the user's
browser) to aggregate doesn't seem ideal.
I documented a few TSDB DSLs styles here [3].
What do you all think?
Thanks,
Ben
[1]
http://pilhuhn.blogspot.com/2016/09/computed-metrics-for-hawkfx.html
[2]
https://github.com/grafana/grafana/issues/3677
[3]
https://gist.github.com/bheiskell/25af2543ee8588f70895b0311ef291d3
_______________________________________________
hawkular-dev mailing list
hawkular-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hawkular-dev