A Bucket
represents a discrete range of values and the sum of recorded
counts within this range.
A Builder
allows for constructing a Histogram
with the desired
configuration.
A CompactHistogram
is a sparse, columnar representation of the
Histogram. It is significantly smaller than a regular Histogram
when a large number of buckets are zero, which is a frequent
occurence; consequently it is used as the serialization format
of the Histogram. It stores an individual vector for each field
of non-zero buckets. Assuming index[0] = n, (index[0], count[0])
corresponds to the nth bucket.
A Histogram
groups recorded values into buckets of similar values and
tracks counts for recorded values that fall into those ranges.
A Percentile
represents a quantile reading taken from a histogram.