EstimatedHistogram (apache-cassandra API)
Date: 2014-10-21

org.apache.cassandra.utils

## Class EstimatedHistogram

- java.lang.Object
- - org.apache.cassandra.utils.EstimatedHistogram

-     public class EstimatedHistogram
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `EstimatedHistogram.EstimatedHistogramSerializer`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static EstimatedHistogram.EstimatedHistogramSerializer` | `serializer`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `EstimatedHistogram()`
    `EstimatedHistogram(int bucketCount)`
    `EstimatedHistogram(long[] offsets, long[] bucketData)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(long n)` Increments the count of the bucket closest to n, rounding UP.
    `long` | `count()`
    `boolean` | `equals(java.lang.Object o)`
    `long[]` | `getBucketOffsets()`
    `long[]` | `getBuckets(boolean reset)`
    `int` | `hashCode()`
    `boolean` | `isOverflowed()`
    `void` | `log(org.slf4j.Logger log)` log.debug() every record in the histogram
    `long` | `max()`
    `long` | `mean()`
    `long` | `min()`
    `long` | `percentile(double percentile)`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### serializer

          public static final EstimatedHistogram.EstimatedHistogramSerializer serializer

  - ### Constructor Detail

    - #### EstimatedHistogram

          public EstimatedHistogram()

    - #### EstimatedHistogram

          public EstimatedHistogram(int bucketCount)

    - #### EstimatedHistogram

          public EstimatedHistogram(long[] offsets,
                            long[] bucketData)

  - ### Method Detail

    - #### getBucketOffsets

          public long[] getBucketOffsets()

      Returns:
        the histogram values corresponding to each bucket index

    - #### add

          public void add(long n)

      Increments the count of the bucket closest to n, rounding UP.
      Parameters:
        `n` -

    - #### getBuckets

          public long[] getBuckets(boolean reset)

      Parameters:
        `reset` - zero out buckets afterwards if true
      Returns:
        a long[] containing the current histogram buckets

    - #### min

          public long min()

      Returns:
        the smallest value that could have been added to this histogram

    - #### max

          public long max()

      Returns:
        the largest value that could have been added to this histogram. If the histogram overflowed, returns Long.MAX_VALUE.

    - #### percentile

          public long percentile(double percentile)

      Parameters:
        `percentile` -
      Returns:
        estimated value at given percentile

    - #### mean

          public long mean()

      Returns:
        the mean histogram value (average of bucket offsets, weighted by count)
      Throws:
        `java.lang.IllegalStateException` - if any values were greater than the largest bucket threshold

    - #### count

          public long count()

      Returns:
        the total number of non-zero values

    - #### isOverflowed

          public boolean isOverflowed()

      Returns:
        true if this histogram has overflowed -- that is, a value larger than our largest bucket could bound was added

    - #### log

          public void log(org.slf4j.Logger log)

      log.debug() every record in the histogram
      Parameters:
        `log` -

    - #### equals

          public boolean equals(java.lang.Object o)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

Copyright © 2014 The Apache Software Foundation