基本概念

mean(平均值)

均值是就全部数据计算的,它具有优良的数学性质,是实际中应用最广泛的集中趋势测度值.其主要缺点是易受数据极端值的影响,对于偏态分布的数据,均值的代表性较差.作为均值变形的调和平均数和几何平均数,是适用于特殊数据的代表值,调和平均数主要用于不能直接计算均值的数据,几何平均数则主要用于计算比率数据的平均数,这两个测度值与均值一样易受极端值的影响.

median(中位数)

中位数是一组数据中间位置上的代表值.其特点是不受数据极端值的影响.对于具有偏态分布的数据,中位数的代表性要比均值好.
在一组排好序数据中,数据数量为奇数,则中值为中间的那个数。 如果数据数量为偶数,则中值为中间的那两个数值的平均值。

percentile(百分位数)

第p百分位数是这样一个值,它使得至少有p%的数据项小于或等于这个值,且至少有(100-p)%的数据项大于或等于这个值。

4类Reservoir

ExponentiallyDecayingReservoir(指数采样)

An exponentially-decaying random reservoir of {@code long}s. Uses Cormode et al's forward-decaying priority reservoir sampling method to produce a statistically representative sampling reservoir, exponentially biased towards newer entries.

UniformReservoir(随机采样)

A random sampling reservoir of a stream of {@code long}s. Uses Vitter's Algorithm R to produce a statistically representative sample.

SlidingWindowReservoir(只存最近N条数据)

A {@link Reservoir} implementation backed by a sliding window that stores the last {@code N}

  • measurements.

SlidingTimeWindowReservoir(指定时间窗口重置数据)

A {@link Reservoir} implementation backed by a sliding window that stores only the measurements made

小结

关于瞬时值

除了SlidingTimeWindowReservoir外,其余的都不能直接反映瞬时值,都是被“平均”了。假设一开始有个值,后续都为0,那么他们都会只体现初始值,体现不出后续变为0的情况,只有后续该值继续有变动,才会“延迟”体现出来。

关于snapshot

snapshot的percentile默认有75thPercentile、95thPercentile、98thPercentile、99thPercentile、999thPercentile。

  • 其中95+的指标能较明显体现极值的变动

  • 75thPercentile则相对比较平缓
    在极值变动小的情况下,SlidingTimeWindowReservoir会更贴近实际情况,其中时间窗口跟上报interval对应上即可。即使极值变动大,相比其他几个Reservoir,SlidingTimeWindowReservoir还是比较接近实际数据,曲线会有明显变动,不像其他的一段时间可能都是平滑的。

doc


codecraft
11.9k 声望2k 粉丝

当一个代码的工匠回首往事时,不因虚度年华而悔恨,也不因碌碌无为而羞愧,这样,当他老的时候,可以很自豪告诉世人,我曾经将代码注入生命去打造互联网的浪潮之巅,那是个很疯狂的时代,我在一波波的浪潮上留下...