-
Notifications
You must be signed in to change notification settings - Fork 5.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add quantile aggregator plugin #8594
Conversation
… of the caio/tdigest library. This will conflict otherwise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Co-authored-by: reimda <[email protected]>
Co-authored-by: reimda <[email protected]>
Co-authored-by: reimda <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry to nitpick on naming and documentation :)
Thanks for removing the term "approximator" from the settings and documentation. Let's also replace "approximator" with "algorithm" everywhere in the code and also in the filename "approximator.go". It will be unnecessarily confusing to future devs to have to try to understand what an exact approximator is.
Other than that I think it's ready to merge
@reimda don't worry, your feedback is very much appreciated! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks!
Required for all PRs:
This PR implements a quantile aggregator allowing to aggregate multiple series and output the specified quantiles per field and metric. It provides three types of approximations, T-Digest as well as exact approximations using Hyndman & Fan's R7 (equivalent to Excel and Numpy) and R8 (recommended in the paper) approach.
The plugin adds no further dependencies, but it was necessary to update
github.com/wavefronthq/wavefront-sdk-go
from 0.9.2 to 0.9.7 to get an up-to-dategithub.aaakk.us.kg/caio/go-tdigest
library used here.The approach is similar to PR #6887 but has much less code. Closes #6440.