public double getMean() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getMean(); } finally { workLock.unlock(); } }
public double getSecondMoment() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getSecondMoment(); } finally { workLock.unlock(); } }
public void reset() { final Lock workLock = lock.writeLock(); workLock.lock(); try { statistics = new M2AwareStatisticalSummary(Double.NaN, Double.NaN, 0, Double.NaN, Double.NaN, Double.NaN, Double.NaN); } finally { workLock.unlock(); } }
public double getVariance() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getVariance(); } finally { workLock.unlock(); } }
public double getSum() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getSum(); } finally { workLock.unlock(); } }
public double getMin() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getMin(); } finally { workLock.unlock(); } }
public double getMax() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getMax(); } finally { workLock.unlock(); } }
public long getHits() { final Lock workLock = lock.readLock(); workLock.lock(); try { return statistics.getN(); } finally { workLock.unlock(); } }
public void update() { final Lock workLock = lock.writeLock(); workLock.lock(); try { final Collection<LeafCollectorCounter> counters = aggregation.values(); statistics = Aggregators.aggregate(counters); concurrency.set(computeConcurrency(counters)); updateConcurrency(concurrency.get()); } finally { workLock.unlock(); } }
variance = m2 / (n - 1); return new M2AwareStatisticalSummary(mean, variance, n, max, min, sum, m2);
public double getStandardDeviation() { final Lock workLock = lock.readLock(); workLock.lock(); try { return Math.sqrt(statistics.getVariance()); } finally { workLock.unlock(); } }
@Override protected void pushCountersByBatch(final Collection<Counter> instances) { for (final Counter counter : instances) { delegate.getOrCreateCounter(counter.getKey(), marker) .update(new M2AwareStatisticalSummary( counter.getMean(), counter.getVariance(), counter.getHits(), counter.getMax(), counter.getMin(), counter.getSum(), counter.getSecondMoment()), counter.currentConcurrency().get()); } }
protected CassandraLeafCounter counter(final Counter.Key ckey, final DynamicDelegatedSerializer<Object> serializer, final ColumnSlice<String, Object> map, final String marker) { return new CassandraLeafCounter(ckey, this, marker) .sync(new M2AwareStatisticalSummary( getOrDefault( serializer, map.getColumnByName( "mean" ), DoubleSerializer.get() ).doubleValue(), getOrDefault( serializer, map.getColumnByName( "variance" ), DoubleSerializer.get() ).doubleValue(), getOrDefault( serializer, map.getColumnByName( "n" ), LongSerializer.get() ).longValue(), getOrDefault( serializer, map.getColumnByName( "max" ), DoubleSerializer.get() ).doubleValue(), getOrDefault( serializer, map.getColumnByName( "min" ), DoubleSerializer.get() ).doubleValue(), getOrDefault( serializer, map.getColumnByName( "sum" ), DoubleSerializer.get() ).doubleValue(), getOrDefault( serializer, map.getColumnByName( "m2" ), DoubleSerializer.get() ).doubleValue()), getOrDefault( serializer, map.getColumnByName( "maxConcurrency" ), IntegerSerializer.get() ).intValue()); }