You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: libs/exponential-histogram/README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,13 +2,13 @@ This library provides an implementation of merging and analysis algorithms for e
2
2
3
3
## Overview
4
4
5
-
The library implements base-2 exponential histograms with perfect subsetting. The most imporant properties are:
5
+
The library implements base-2 exponential histograms with perfect subsetting. The most important properties are:
6
6
7
7
* The histogram has a scale parameter, which defines the accuracy. A higher scale implies a higher accuracy.
8
8
* The `base` for the buckets is defined as `base = 2^(2^-scale)`.
9
9
* The histogram bucket at index `i` has the range `(base^i, base^(i+1)]`
10
10
* Negative values are represented by a separate negative range of buckets with the boundaries `(-base^(i+1), -base^i]`
11
-
* Histograms are perfectly subsetting: increasing the scale by one merges each pair of neighboring buckets
11
+
* Histograms support perfect subsetting: when the scale is decreased by one, each pair of adjacent buckets is merged into a single bucket without introducing error
12
12
* A special zero bucket with a zero-threshold is used to handle zero and close-to-zero values
13
13
14
14
For more details please refer to the [OpenTelemetry definition](https://opentelemetry.io/docs/specs/otel/metrics/data-model/#exponentialhistogram).
@@ -89,7 +89,7 @@ bucketIndiciesToCounts: {
89
89
```
90
90
91
91
Downscaling on the sparse representation only happens if either:
92
-
* The number of populated buckets would become bigger than our maximum bucket count. We have to downscale to make neighboring, populated buckets combine to a single bucket until we are below our limit again.
92
+
* The number of populated buckets would become bigger than our maximum bucket count. We have to downscale to combine neighboring, populated buckets to a single bucket until we are below our limit again.
93
93
* The highest or smallest indices require more bits to store than we allow. This does not happen in our implementation for normal inputs, because we allow up to 62 bits for index storage, which fits the entire numeric range of IEEE 754 double precision floats at our maximum scale.
Copy file name to clipboardExpand all lines: libs/exponential-histogram/src/main/java/org/elasticsearch/exponentialhistogram/ExponentialHistogramMerger.java
Copy file name to clipboardExpand all lines: libs/exponential-histogram/src/main/java/org/elasticsearch/exponentialhistogram/FixedCapacityExponentialHistogram.java
0 commit comments