A recent discussion brought up the point of adding a "histogram" metric
type to Flink. This open thread is to gather some more of the requirements
for that metric.

The most important question is whether users need Flink to offer specific
implementations of "Histogram", like for example the "
com.codahale.metrics.Histogram", or if a "org.apache.flink.metrics.Histogram"
interface would work as well.
The histogram could still be reported for example via dropwizard reporters.

*Option (1):* If a Flink Histogram works as well, it would be simple to add
one. The dropwizard reporter would need to wrap the Flink Histogram for
reporting.

*Option (2)*: If the code needs the specific Dropwizard Histogram type,
then one would need a wrapper class that makes a Flink Histogram look like
a dropwizard histogram.

----------

As a bit of background for the discussion, here are some thoughts behind
the way that Metrics are currently implemented in Flink.

  - The metric types in Flink are independent from libraries like
"dropwizard" to reduce dependencies and retain freedom to swap
implementations.

  - Metric reporting allows to reuse reporters from dropwizard

  - Some Flink metric implementations are also more lightweight than for
example in dropwizard. Counters for example are not thread safe, but do not
impose memory barriers. That is important for metrics deep in the streaming
runtime.

Reply via email to